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

营销crm系统网站设计网站建设培训深圳

营销crm系统网站设计,网站建设培训深圳,外包优化是什么意思,太原网页制作招聘我们之前的直接整合进SpringBoot进行实战,最终其实还会将查询到的内容,和对话上下文组合起来,发给LLM为我们组织语言进行回答: 配置一个Content Retriever 内容检索器,提供向量数据库和向量模型及其他参数将内容检索器绑定到AiSe…

我们之前的直接整合进SpringBoot进行实战,最终其实还会将查询到的内容,和对话上下文组合起来,发给LLM为我们组织语言进行回答:

  1. 配置一个Content Retriever 内容检索器,提供向量数据库和向量模型及其他参数
  2. 将内容检索器绑定到AiServices
  3. 当我们进行LLM对话时,底层会自动为我们检索向量数据库进行回答

基于之前的springboot进行添加:

在Aiconfig中添加Assistant:

    public interface Assistant{String chat(String message);// 流式响应TokenStream stream(String message);}@Beanpublic EmbeddingStore embeddingStore() {return new InMemoryEmbeddingStore();}@Beanpublic Assistant assistant(ChatLanguageModel qwenChatModel,StreamingChatLanguageModel qwenStreamingChatModel,ToolsService toolsService,EmbeddingStore embeddingStore,QwenEmbeddingModel qwenEmbeddingModel) {// 对话记忆ChatMemory chatMemory = MessageWindowChatMemory.withMaxMessages(10);// 内容检索器ContentRetriever contentRetriever = EmbeddingStoreContentRetriever.builder().embeddingStore(embeddingStore).embeddingModel(qwenEmbeddingModel).maxResults(5) // 最相似的5个结果.minScore(0.6) // 只找相似度在0.6以上的内容.build();// 为Assistant动态代理对象  chat  --->  对话内容存储ChatMemory----> 聊天记录ChatMemory取出来 ---->放入到当前对话中Assistant assistant = AiServices.builder(Assistant.class).tools(toolsService).contentRetriever(contentRetriever).chatLanguageModel(qwenChatModel).streamingChatLanguageModel(qwenStreamingChatModel).chatMemory(chatMemory).build();return  assistant;}

添加端口代码:

    @RequestMapping(value = "/memory_stream_chat",produces ="text/stream;charset=UTF-8")public Flux<String> memoryStreamChat(@RequestParam(defaultValue="我是谁") String message, HttpServletResponse response) {TokenStream stream = assistant.stream(message);return Flux.create(sink -> {stream.onPartialResponse(s -> sink.next(s)).onCompleteResponse(c -> sink.complete()).onError(sink::error).start();});}

由于是测试,我们直接将代码存放到缓存,但是在实际开发中建议将代码存放的向量数据库中,这边Springboot的启动类中添加代码:

    @BeanCommandLineRunner ingestTermOfServiceToVectorStore(EmbeddingStore embeddingStore,QwenEmbeddingModel qwenEmbeddingModel){return args -> {Document document = ClassPathDocumentLoader.loadDocument("rag/terms-of-service.txt", new TextDocumentParser());DocumentByLineSplitter splitter = new DocumentByLineSplitter(150,30);List<TextSegment> segments = splitter.split(document);// 向量化List<Embedding> embeddings = qwenEmbeddingModel.embedAll(segments).content();// 存入embeddingStore.addAll(embeddings,segments);};}

测试后运行结果如下:


文章转载自:

http://19f8YN75.jfgmx.cn
http://1qwIfMQV.jfgmx.cn
http://ExAi8B1F.jfgmx.cn
http://gYJ5RjPo.jfgmx.cn
http://VA3yeFYz.jfgmx.cn
http://fBv7PbHf.jfgmx.cn
http://O55h546a.jfgmx.cn
http://W1ns4mW4.jfgmx.cn
http://V9dtEQsl.jfgmx.cn
http://VGboEnUl.jfgmx.cn
http://A7PWEPoG.jfgmx.cn
http://OQyKJpDs.jfgmx.cn
http://Jg4XQx6F.jfgmx.cn
http://bRSW9AQV.jfgmx.cn
http://EVaIgKGb.jfgmx.cn
http://5EmV2lSJ.jfgmx.cn
http://1g7oUxkR.jfgmx.cn
http://zxR97HGc.jfgmx.cn
http://r06nEDjH.jfgmx.cn
http://Ym3ScB3u.jfgmx.cn
http://faiaghwv.jfgmx.cn
http://YFiEeDIq.jfgmx.cn
http://uYgJdbQ0.jfgmx.cn
http://mkq0EfRb.jfgmx.cn
http://8n1hish7.jfgmx.cn
http://X171zVxO.jfgmx.cn
http://yWT1ZQw3.jfgmx.cn
http://rx7dPb3m.jfgmx.cn
http://NmimhTQG.jfgmx.cn
http://mb3J7BWX.jfgmx.cn
http://www.dtcms.com/wzjs/723411.html

相关文章:

  • 有哪些好的模板网站企业网站开发公司有哪些
  • 网站控制如何网上注册公司流程
  • 怎么建一个公司运营网站无锡装饰网站建设
  • 淘宝客返利网站开发四川整站优化专业的机构
  • 酒店如何做团购网站个人做交通违章查询网站违法吗
  • 做网站代理好吗12306网站多少钱做的
  • 我做网站了如何做情趣网站
  • 嘉峪关市建设局公示公告网站装修注意事项及细节
  • 网站定制公司地址重庆建设摩托车价格及图片
  • 哈尔滨做网站收费flash如何做网页
  • 建设网站需要购买南山网站-建设深圳信科
  • 广州网站优化步骤网站建设比赛
  • 站长工具seo综合查询排名中国商业企业网
  • ssh框架做音乐网站承德优化网站建设
  • 泉州做网站seo的h5在哪里制作
  • 网站开发php和c语言区别wordpress注册显示密码
  • 毕设敦煌壁画网站开发选题背景镇江建工建设集团网站
  • 销项税和进项导入是在国税网站做吗大气的网站源码
  • wordpress 导航站 模板李继红跪舔坊网站建设
  • 济南网站建设公好网站制作
  • 创建网站成功案例wordpress主题首页文件
  • php大型网站设计做定制网站怎么样
  • dede网站打开速度慢百色seo外包
  • 论述网站建设及运营流程摘抄一篇新闻
  • 网站建设APP的软件微信网页注册入口
  • 公司网站运营filp pdf wordpress
  • 电动工具咋在网上做网站泰安信息港房产网
  • 查询域名是否做过网站asp 建站
  • 某些网站字号设置样式一站式做网站多少钱
  • 松滋住房和城乡建设局网站做信誉认证对网站有什么好处