当前位置: 首页 > news >正文

海淀周边网站建设在线自动取名网站怎么做

海淀周边网站建设,在线自动取名网站怎么做,网络规划设计师是高级职称吗,网络平面广告设计文章目录 文心一言应用创建接口对接接口文档代码示例依赖 常量类实体类 结束语 文心一言应用创建 首先需要先申请文心千帆大模型#xff0c;申请地址#xff1a;文心一言 (baidu.com)#xff0c;点击加入体验#xff0c;等通过审核之后就可以进入文心千帆大模型后台进行应… 文章目录 文心一言应用创建接口对接接口文档代码示例依赖 常量类实体类 结束语 文心一言应用创建 首先需要先申请文心千帆大模型申请地址文心一言 (baidu.com)点击加入体验等通过审核之后就可以进入文心千帆大模型后台进行应用管理了。 在百度智能云首页即可看到文心千帆大模型平台 然后进入后台管理之后点击应用接入创建应用即可 创建完应应用之后便可以调用文心一言的http开发接口进行交互了。 接口对接 接口文档 首先要看一下接口文档API调用指南 - 文心千帆WENXINWORKSHOP | 百度智能云文档 (baidu.com) 这里我用的是ERNIE-Bot-turbo API主要是由于它响应更快。 下面介绍一下具体接入的代码 代码示例 依赖 依赖安装 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdparentartifactIdbaidu/artifactIdgroupIdcom.walter/groupIdversion1.0/version/parentmodelVersion4.0.0/modelVersionversion1.0/versionartifactIdbaidumodel/artifactIddescription百度大模型/descriptionrepositoriesrepositoryidpublic/idnamealiyun nexus/nameurlhttp://maven.aliyun.com/nexus/content/groups/public//urlreleasesenabledtrue/enabled/releasessnapshotsenabledfalse/enabled/snapshots/repository/repositoriesdependenciesdependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactIdversion2.11.1/version/dependencydependencygroupIdcn.hutool/groupIdartifactIdhutool-http/artifactIdversion5.8.11/version/dependencydependencygroupIdjunit/groupIdartifactIdjunit/artifactIdscopetest/scope/dependencydependencygroupIdcn.hutool/groupIdartifactIdhutool-json/artifactIdversion5.8.11/version/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdversion1.18.12/version/dependencydependencygroupIdcom.squareup.okhttp3/groupIdartifactIdokhttp-sse/artifactIdversion3.14.9/version/dependencydependencygroupIdorg.slf4j/groupIdartifactIdslf4j-log4j12/artifactIdversion1.7.30/version/dependencydependencygroupIdorg.slf4j/groupIdartifactIdslf4j-api/artifactIdversion1.7.30/version/dependency/dependencies /project常量类 ApiConstant.java Slf4j public class ApiConstant {/*** ERNIE_BOT_TURBO 发起会话接口*/public static final String ERNIE_BOT_TURBO_INSTANT https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/eb-instant?access_token;public static String getToken(String appKey, String secretKey) {String url https://aip.baidubce.com/oauth/2.0/token?grant_typeclient_credentialsclient_id appKey client_secret secretKey;String s HttpUtil.get(url);Token bean JSONUtil.toBean(s, Token.class);return bean.getAccess_token();} }实体类 BaiduChatMessage.java Data Builder NoArgsConstructor AllArgsConstructor public class BaiduChatMessage implements Serializable {private String role;private String content; }ErnieBotTurboResponse.java Data public class ErnieBotTurboResponse implements Serializable {private String id;private String object;private Integer created;private String sentence_id;private Boolean is_end;private Boolean is_truncated;private String result;private Boolean need_clear_history;private Usage usage;Datapublic static class Usage implements Serializable {private Integer prompt_tokens;private Integer completion_tokens;private Integer total_tokens;} }ErnieBotTurboStreamParam.java Data Builder NoArgsConstructor AllArgsConstructor public class ErnieBotTurboStreamParam implements Serializable {private ListBaiduChatMessage messages;private Boolean stream;private String user_id;public boolean isStream() {return Objects.equals(this.stream, true);} }Token.java Data public class Token implements Serializable {private String access_token;private Integer expires_in;private String error;private String error_description; }BaiduEventSourceListener.java // 这个类主要是为了与文心一言API建立流式连接实现数据的实时返回而不是等完整的数据生成之后才将数据返回 // 可以减少用户等待时间实现更好的交互体验 Slf4j public class BaiduEventSourceListener extends EventSourceListener {Overridepublic void onOpen(EventSource eventSource, Response response) {log.info(baidu建立sse连接...);}Overridepublic void onEvent(EventSource eventSource, String id, String type, String data) {log.info(baidu返回数据{}, data);}Overridepublic void onClosed(EventSource eventSource) {log.info(baidu关闭sse连接...);}SneakyThrowsOverridepublic void onFailure(EventSource eventSource, Throwable t, Response response) {if(Objects.isNull(response)){log.error(baidu sse连接异常:{}, t);eventSource.cancel();return;}ResponseBody body response.body();if (Objects.nonNull(body)) {log.error(baidu sse连接异常data{}异常{}, body.string(), t);} else {log.error(baidu sse连接异常data{}异常{}, response, t);}eventSource.cancel();} }BaiduService.java // 该类主要是处理接口请求处理接口响应逻辑 Slf4j Data public class BaiduService {private static final long TIME_OUT 30;private OkHttpClient okHttpClient;private String appKey;private String secretKey;public BaiduService(NonNull String appKey, NonNull String secretKey) {this.appKey appKey;this.secretKey secretKey;this.okHttpClient(30, 30, 30, null);}public BaiduService(NonNull String appKey, NonNull String secretKey, long connectTimeout, long writeTimeout, long readTimeout, Proxy proxy) {this.appKey appKey;this.secretKey secretKey;this.okHttpClient(connectTimeout, writeTimeout, readTimeout, proxy);}private void okHttpClient(long connectTimeout, long writeTimeout, long readTimeout, Proxy proxy) {OkHttpClient.Builder client new OkHttpClient.Builder();client.connectTimeout(connectTimeout, TimeUnit.SECONDS);client.writeTimeout(writeTimeout, TimeUnit.SECONDS);client.readTimeout(readTimeout, TimeUnit.SECONDS);if (Objects.nonNull(proxy)) {client.proxy(proxy);}this.okHttpClient client.build();}// 该方法是同步请求API会等大模型将数据完全生成之后返回响应结果可能需要等待较长时间视生成文本长度而定public ErnieBotTurboResponse ernieBotTurbo(ErnieBotTurboStreamParam param) {if (param null) {log.error(参数异常param不能为空);throw new RuntimeException(参数异常param不能为空);}if (param.isStream()) {param.setStream(false);}String post HttpUtil.post(ApiConstant.ERNIE_BOT_TURBO_INSTANT ApiConstant.getToken(appKey, secretKey), JSONUtil.toJsonStr(param));return JSONUtil.toBean(post, ErnieBotTurboResponse.class);}// 该方法是通过流的方式请求API大模型每生成一些字符就会通过流的方式相应给客户端// 我们是在 BaiduEventSourceListener.java 的 onEvent 方法中获取大模型响应的数据其中data就是具体的数据// 我们获取到数据之后就可以通过 SSE/webscocket 的方式实时相应给前端页面展示public void ernieBotTurboStream(ErnieBotTurboStreamParam param, EventSourceListener eventSourceListener) {if (Objects.isNull(eventSourceListener)) {log.error(参数异常EventSourceListener不能为空);throw new RuntimeException(参数异常EventSourceListener不能为空);}if (param null) {log.error(参数异常param不能为空);throw new RuntimeException(参数异常param不能为空);}if (!param.isStream()) {param.setStream(true);}try {EventSource.Factory factory EventSources.createFactory(this.okHttpClient);ObjectMapper mapper new ObjectMapper();String requestBody mapper.writeValueAsString(param);Request request new Request.Builder().url(ApiConstant.ERNIE_BOT_TURBO_INSTANT ApiConstant.getToken(appKey, secretKey)).post(RequestBody.create(MediaType.parse(ContentType.JSON.getValue()), requestBody)).build();//创建事件EventSource eventSource factory.newEventSource(request, eventSourceListener);} catch (JsonProcessingException e) {log.error(请求参数解析是失败, e);throw new RuntimeException(请求参数解析是失败, e);}} }结束语 以上就是通过文心一言的OpenAPI与大模型交互的整体逻辑等代码功能再做完善之后改代码会以SDK的方式开源到Gitee欢迎一起探讨。
http://www.hkea.cn/news/14541044/

相关文章:

  • 哪些属于功能型网站帮人恶意点击网站
  • 北安网站建设设计在线观看2014
  • 网站建设通知游戏软件制作开发
  • 网站增加关键字Wordpress 精确时间分钟
  • 汽车门户网站程序湖南常德广宇建设网站
  • 网站多久才能做起来海南黄页电话号码
  • 网易云网站开发google下载官网
  • 做网站需要了解什么软件大学生创新创业点子
  • 宠物社区网站开发设计文档贵安新区网站建设推广
  • 做网站规避什么即墨网站建设电话
  • 安徽建设局网站个人网站该怎么打广告
  • 北京网站建设116net南宁网站建设公司哪个好
  • 网站开发技术实验总结网站封面怎么做
  • 坪地网站建设价格网站底部悬浮
  • 做网站精英制作wordpress页面模板下载地址
  • 德州做网站多少钱简单的网页设计代码记事本
  • 棋牌网站建设购物网站代码模板
  • 做网站的意义是什么wordpress最新文章
  • 长治网站制作小程序景观设计师如何做网站
  • 六安网站建设招商wordpress缓存头像
  • 佛山商城网站制作域名备案查询网站备案
  • php网站开发实例教材深圳企业建设网站
  • 长兴网站建设页面简单的网站
  • 网站静态化 好处快速seo关键词优化方案
  • 域名备案要先做网站的吗港海建设网站
  • wordpress 购物网站比较顺口的建筑公司名字
  • 商城网站开发项目文档濮阳团购网站建设
  • 文本分析网站wordpress银联插件
  • 如何登录中国建设银行网站wordpress默认管理员密码
  • 越秀公司网站建设建站最好的