恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

简单演示LangChian4j集成PGVector 17实现RAG(检索增强生成)

  • 首页
  • 资讯中心
  • /
  • 简单演示LangChian4j集成PGVector 17实现RAG(检索增强生成)

相关资讯

Python迭代器与生成器精讲!极致节省内存,优化代码运行效率 2026/9/4 4:52:07
Delphi 12.3轻量级HTTP服务器控件开发:POST请求处理与多线程安全实践 2026/9/4 4:52:07
西门子S120驱动器PROFINET通信GSD文件详解与应用指南 2026/9/4 4:52:06

最新资讯

大疆无人机碳纤维桨叶检测全流程:从静态检查到飞行动作验证
食品厂冷库,一年吃掉60万电费?问题就出在“太傻了”
光学镜头设计入门:从原理到实践的系统学习路径
数据结构之栈(Stack)
JCPP:面向充电桩多协议适配的Java工业级通信框架
鱼眼拼接与BEV

今日推荐

爬虫防护实操:出海网站拦截恶意采集、垃圾爬虫、无效刷量,CDN 精准防护落地指南
STM32H743 SPI从机DMA双缓冲通信实战
CPU开盖降温教程:20元成本让温度直降30度的原理与实践

本周热门

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析
数字电路时序基石:深入理解建立时间与保持时间
蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

本月精选

自研推理加速器Redwood:两周内实现PyTorch模型高效部署的实战教程
V4L2摄像头采集实战:从camera_client.rar到出图全流程解析
从“谁发明了钢琴键”到知识问答智能体:RAG与记忆工程实践

简单演示LangChian4j集成PGVector 17实现RAG(检索增强生成)

发布时间:2026/9/4 4:52:07
简单演示LangChian4j集成PGVector 17实现RAG(检索增强生成) 技术栈框架Spring Boot 4.1.1嵌入模型Qwen3-Embedding-4B向量持久化存储PGVector 17PostgreSQL 17 预装 pgvector 扩展步骤为了持久化存储向量需要先部署pgvector/pgvector:pg17在工程中引入以下依赖注意版本号尽量一致!-- LangChian4j 基础 --dependencygroupIddev.langchain4j/groupIdartifactIdlangchain4j/artifactIdversion1.19.0/version/dependency!-- OpenAI 适配 --dependencygroupIddev.langchain4j/groupIdartifactIdlangchain4j-open-ai/artifactIdversion1.19.0/versionscopecompile/scope/dependency!-- pgvector --dependencygroupIddev.langchain4j/groupIdartifactIdlangchain4j-pgvector/artifactIdversion1.19.0-beta29/versionscopecompile/scope/dependency编写配置类注入嵌入模型这里使用的是硅基流动上的嵌入模型和向量持久化存储数据库ConfigurationpublicclassLLMConfig{BeanpublicEmbeddingModelembeddingModel(){returnOpenAiEmbeddingModel.builder().apiKey(sk-xxxxx).baseUrl(https://api.siliconflow.cn/v1).modelName(Qwen/Qwen3-Embedding-4B)// 2560维.build();}BeanpublicPgVectorEmbeddingStorepgVectorEmbeddingStore(){returnPgVectorEmbeddingStore.builder().host(xxx.xxx.xxx.xxx).port(15432).database(test_db).user(xxx).password(xxx).table(document_embeddings).dimension(2560)// 必须与嵌入模型的维度一致.build();}}项目启动后PGVector会自动在数据库test_db中启用vector拓展并创建document_embeddings表来存储向量化后的文本可以在test_db中执行SELECT extname FROM pg_extension WHERE extname vector来验证是否已经启用了拓展注意PgVectorEmbeddingStore在初始化首次建立连接、准备表结构时会默认自动执行类似这样的 SQL来启用拓展CREATEEXTENSIONIFNOTEXISTSvector;-- 若未启用则自动启用同时还会执行建表CREATE TABLE IF NOT EXISTS ...和建索引但是连接账号必须有权限执行在 PostgreSQL 15 及以上只有超级用户或该**数据库的所有者(owner)**才能执行CREATE EXTENSION。如果既不是超级用户也不是test_db的所有者会自动执行失败抛异常。在 PostgreSQL 14 及以下只要用户有数据库的 CREATE 权限就能建编写测试方法SpringBootTestpublicclassRAGTests{AutowiredprivateEmbeddingModelembeddingModel;AutowiredprivateEmbeddingStoreTextSegmentpgVectorEmbeddingStore;// 测试文本向量化入库TestvoidtestRAG(){// 构建文档元信息MetadatametadatanewMetadata();metadata.put(doc_id,DOC_2026001);metadata.put(author,张三);metadata.put(create_time,System.currentTimeMillis());DocumentdocumentDocument.from(Spring Boot 是一个用于构建微服务的框架它基于 Spring 框架提供自动化配置……,metadata);// 切分文档为 300 字符的片段每个片段之间间隔 50 字符ListTextSegmentsegmentsDocumentSplitters.recursive(300,50).split(document);// 向量化ListEmbeddingembeddingsembeddingModel.embedAll(segments).content();// 向量化入库pgVectorEmbeddingStore.addAll(embeddings,segments);System.out.println(文档切分为 segments.size() 个片段已全部向量化并入库。);}// 测试相似度查询TestvoidtestQuery(){Stringquery什么是 Spring Boot;// 将查询文本向量化EmbeddingqueryEmbeddingembeddingModel.embed(query).content();// 执行相似度检索取最相似的 2 条EmbeddingSearchRequestsearchRequestEmbeddingSearchRequest.builder().queryEmbedding(queryEmbedding).maxResults(2).minScore(0.6)// 相似度阈值.build();EmbeddingSearchResultTextSegmentsearchResultpgVectorEmbeddingStore.search(searchRequest);System.out.println(【检索结果】);for(EmbeddingMatchTextSegmentmatch:searchResult.matches()){System.out.println(相似度得分: match.score());System.out.println(匹配内容: match.embedded().text());System.out.println(metadatamatch.embedded().metadata());}}}先执行testRAG方法测试文本向量化入库再执行testQuery方法测试相似度查询

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号