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

Langchain4j 整合向量数据库(10)

Langchain4j 整合向量数据库

上传知识库到pinecone

@SpringBootTest
public class PineconeTest {@Resourceprivate EmbeddingStore embeddingStore;@Resourceprivate EmbeddingModel embeddingModel;@Testpublic void testUploadKnowledgeLibrary() {//使用ClassPathDocumentLoader读取指定目录下的知识库文档//并使用默认的文档解析器对文档进行解析Document document1 = ClassPathDocumentLoader.loadDocument("knowledge/医院信息.md");Document document2 = ClassPathDocumentLoader.loadDocument("knowledge/科室信息.md");Document document3 = ClassPathDocumentLoader.loadDocument("knowledge/神经内科.md");List<Document> documents = Arrays.asList(document1, document2, document3);//文本向量化并存入向量数据库:将每个片段进行向量化,得到一个嵌入向量EmbeddingStoreIngestor.builder().embeddingStore(embeddingStore) //向量数据库,pinecone.embeddingModel(embeddingModel).build().ingest(documents);}
}

image-20250606104352363

修改XiaozhiAgentConfig

    @Resourceprivate EmbeddingStore embeddingStore;@Resourceprivate EmbeddingModel embeddingModel;@BeanContentRetriever contentRetrieverXiaozhiPinecone() {// 创建一个 EmbeddingStoreContentRetriever 对象,用于从嵌入存储中检索内容return EmbeddingStoreContentRetriever.builder()// 设置用于生成嵌入向量的嵌入模型.embeddingModel(embeddingModel)// 指定要使用的嵌入存储.embeddingStore(embeddingStore)// 设置最大检索结果数量,这里表示最多返回 1 条匹配结果.maxResults(1)// 设置最小得分阈值,只有得分大于等于 0.8 的结果才会被返回.minScore(0.8)// 构建最终的 EmbeddingStoreContentRetriever 实例.build();}

修改XiaozhiAgent

@AiService(wiringMode = AiServiceWiringMode.EXPLICIT,streamingChatModel = "qwenStreamingChatModel",chatMemory = "chatMemory",chatMemoryProvider = "chatMemoryProviderXiaozhi",tools = "appointmentTools",
//        contentRetriever = "contentRetriever" ,// 使用内存存储向量数据contentRetriever = "contentRetrieverXiaozhiPinecone" // 使用pinecone存储向量数据
) // 添加内容检索工具
public interface XiaozhiAgent {@SystemMessage(fromResource = "xiaozhi-prompt-template.txt")Flux<String> chat(@MemoryId Long memoryId, @UserMessage String userMessage);}
http://www.xdnf.cn/news/907399.html

相关文章:

  • 黑龙江云前沿服务器租用:便捷高效的灵活之选​
  • 【原神 × 二叉树】角色天赋树、任务分支和圣遗物强化路径的算法秘密!
  • 【Java后端基础 005】ThreadLocal-线程数据共享和安全
  • C++ 设计模式 《小明的奶茶加料风波》
  • 【手写数据库核心揭秘系列】第10节 SQL解析树的结构,语言识别与程序执行之间的桥梁
  • mysql错误码 2013 解决方案
  • 2003-2024年高铁列车信息数据
  • OS11.【Linux】vim文本编辑器
  • Steam爬取相关游戏评测
  • 服务器数据恢复—服务器raid5阵列崩溃如何恢复数据?
  • 东芝Toshiba DP-4528AG打印机信息
  • 算法打卡16天
  • Mysql的卸载与安装
  • LMG1020YFFR 电子元器件详解
  • 惠普HP Deskjet 9600 打印机信息
  • event.dataTransfer 教程
  • Android端口转发
  • 从模型到生产力:应用集成如何帮助AI实现业务落地
  • 【Android】Android Studio项目代码异常错乱问题处理(2020.3版本)
  • 分布式锁-Redisson实现
  • MySQL用户和授权
  • C++.OpenGL (7/64)摄像机(Camera)
  • SpringBoot项目启动 错误: 找不到或无法加载主类 com.abc.demo.DemoApplication
  • 使用pwm控制一个舵机摆动的速度
  • 汉诺塔问题深度解析
  • PlayDiffusion上线:AI语音编辑进入“无痕时代”
  • const和constexpr详解
  • modelscope安装并下载模型文件
  • Google机器学习实践指南(机器学习模型泛化能力)
  • Docker + Nginx + Logrotate 日志管理与轮换实践