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

贵阳网站制作服务商个人网站备案名和运营

贵阳网站制作服务商,个人网站备案名和运营,二维码生成器怎么弄,中国一级建造师网官网在做这个功能之前#xff0c;本人也是走了很多弯路#xff08;花了好几天才搞好#xff09;#xff0c;你能看到本篇博文#xff0c;那你就是找对地方了。百度上很多都是使用SseEmitter这种方式#xff0c;这种方式使用的是websocket#xff0c;使用这种方式就搞复杂了本人也是走了很多弯路花了好几天才搞好你能看到本篇博文那你就是找对地方了。百度上很多都是使用SseEmitter这种方式这种方式使用的是websocket使用这种方式就搞复杂了会为后面项目分布式布署上埋下坑什么坑下面会说明。要实现【VUE3和SpringBoot实现ChatGPT页面打字效果SSE流式数据展示】这种效果其实就是要使用SSE这种协议这种协议很简单。我们先明白websocket和sse有什么区别说几个主要的区别太细的自己百度这不是本博文的重点 1、SSE是一种基于HTTP的单向通信机制用于服务器向客户端推送数据是单向通信 2、WebSocket是一种全双工的通信协议它通过在客户端和服务器之间建立持久连接实现双向通信 3、使用SSE在SpringBoot端就像平时写接口一样不需要啥配置不需要保存用户的连接SessionWebSocket在SpringBoot端配置太多而且需要保存用户的连接session保存连接seesion在分布式布署上就比较麻烦。 博文最后会有整个项目源代码下载地址下载之后里面有两个文件夹myserver是后端springboot的myweb是vue3前端页面的如下截图 一、先看效果 二、环境搭建 1、在使用之前我们还是安装一个大模型我们这里使用的是LmStudio工具这里面可以下载阿里开源的通义千问的语言模型而且是在windows操作简单 2、下载地址https://releases.lmstudio.ai/windows/0.2.17/latest/LM-Studio-0.2.17-Setup.exe 3、安装之后就是下载大模型(下载需要魔法上网)选择Qwen 1.5 4、启动大模型按箭头顺序大模型启动后端口是1234 三、后端服务SpringBoot实现 用idea打开myserver项目直接运行ServerApplication这个类关键代码如下 //构建请求对象ChatRequest chatRequest new ChatRequest();chatRequest.setModel(qwen:latest);//设置模型chatRequest.setStream(true);//设置流式返回ReqMessage reqMessage new ReqMessage();//设置请求消息在此可以加入自己的promptreqMessage.setRole(user);//用户消息reqMessage.setContent(message);//用户请求内容ArrayListReqMessage messageList new ArrayList();messageList.add(reqMessage);chatRequest.setMessages(messageList);//设置请求消息//构建请求jsonString paramJson JSONUtil.toJsonStr(chatRequest);;FluxString response webClient.post().uri(/chat/completions)//请求uri.header(Authorization, Bearer sk-**************)//设置成自己的key获得key的方式可以在下文查看.header(HttpHeaders.ACCEPT, MediaType.TEXT_EVENT_STREAM_VALUE)//设置流式响应.contentType(MediaType.APPLICATION_JSON).body(BodyInserters.fromValue(paramJson)).retrieve().bodyToFlux(String.class).flatMap(res-{if (StrUtil.equals([DONE],res)){//[DONE]是消息结束标识return Flux.empty();}ObjectMapper objectMapper new ObjectMapper();try {//System.out.println(res);JsonNode jsonNode objectMapper.readTree(res);Answer aiAnswer objectMapper.treeToValue(jsonNode, Answer.class);ListChoices choicesList aiAnswer.getChoices();Choices choices choicesList.get(0);Delta delta choices.getDelta();String json objectMapper.writeValueAsString(delta);System.out.println(json);return Flux.just(json);} catch (JsonProcessingException e) {e.printStackTrace();}return Flux.empty();}); 三、Vue3前端关键代码 1、打开myweb项目先cmd命令进入到当前目录执行如下命令 npm install 2、运行项目执行如下命令 npm run dev 3、前端页面关键代码 const abortController new AbortController();eventSource.value fetchEventSource(http://localhost:8080/ck/chat?messagesendMsg.value,{method: GET,signal: abortController.signal,openWhenHidden: true,onmessage(event) {let res event.data;console.log(res)if(res![DONE]res!null){let data JSON.parse(event.data);let content data.contentconsole.log(contentcontent)if(content!nullcontent.indexOf(\n)!-1){let text tableRightData.value[tableRightData.value.length - 1].content contentcontent DOMPurify.sanitize(marked.parse(text))tableRightData.value[tableRightData.value.length - 1].content contenttableRightData.value.push({role: assistant, content: , showPhoto: false, error: null});}else if(content!nullcontent!){tableRightData.value[tableRightData.value.length - 1].content content}}nextTick((){//滚动条置最下面const container rightContainerRef.valuecontainer.scrollTop container.scrollHeight})},onclose() {console.log(结束了***************************)deleteBlankRow()// eventSource.close();eventSource.value null; // 重置eventSource变量允许重建连接console.log(结束了2*****************)abortController.abort();},onerror(event){console.log(EventSource failed:, event);abortController.abort();eventSource.value.close(); // 关闭出错的连接eventSource.value null; // 重置eventSource变量允许重建连接}}); 四、源代码下载 下载地址百度网盘 请输入提取码
http://www.pierceye.com/news/646753/

相关文章:

  • 建设银行网站链接网络推广有哪些常见的推广方法
  • 常州网络公司网站图片在线制作加字
  • 漕泾网站建设建立内部网站
  • 海宁市住房和城乡规划建设局网站北京十大装饰装修公司
  • 创新的常州做网站网站页面设计公司电话
  • 建站公司见客户没话说周年庆网站要怎么做
  • 建设银行网站字体建设官方网站
  • 建设部网站人员查询商城网站 没有什么文章 怎样优化
  • wordpress按标签筛选广州seo网站
  • 南宁手机建站公司常德网站开发服务
  • 智能锁东莞网站建设php网站开发需要学什么软件
  • 扒网站样式中国搜索网站排名
  • 网站空间和云服务器建设建材网站费用
  • 公司网站 正式上线wordpress 移动端不显示
  • 旅行网站排名前十名网站检测报告哪里做
  • 随州做网站wordpress 显示评论内容
  • 网站建设时间计划表非常赚又一个wordpress站点
  • 苏州网站小程序app开发公司wordpress如何上传文件大小
  • 同仁行业网站建设报价免费ui网站
  • 网站打开速度慢wordpress开发者选项怎么打开
  • 免费网站代理访问网站 营销型
  • 甘特图模板关于网站建设永嘉移动网站建设公司
  • 网站建设服务协议书做面包有哪些网站知乎
  • 网站建设评比标准建盏茶杯知识
  • 商城网站建设教学电子商务的就业方向
  • 做网站必要性江苏华江建设集团网站
  • 网站建设丿金手指排名9如何百度搜到网站
  • 南昌商城网站建设央企网站群建设中标公告
  • 湖北建设监理协会网站网页游戏排行榜开服时间
  • 中国空间站图片竞价账户托管公司哪家好