文档处理与向量生成
- 文档加载(Document Loading)。
- 文档分割(Document Splitting)。
- 嵌入向量生成(Embedding Generation)。
- 写入向量数据库(Writing to Vector Database)。
千帆、LangChain 和 VectorDB 示例文档明确列出了 RAG 的工作流程。
示例文档使用百度向量数据库、千帆 Embedding 模型和 BCC 客户端环境搭建知识库。
新用户可以创建免费版进行测试。创建百度向量数据库实例时,需要地域、可用区和 BCC 保持在同一个 VPC 内;创建成功后,通过实例详情页查看访问地址信息和账号信息,用于访问操作向量数据库。
千帆模型开通付费之后才能使用;文档说明右上角个人中心的安全认证里面提取用于鉴权调用 Embedding 模型的 Access Key 和 Secret Key。
示例使用 BCC 计算型 c5 2c4g 实例基于 CentOS 系统作为例子;安装 python 3.9,以及 langchain、pymochow、qianfan、pdfplumber 等依赖包。
示例要求创建项目目录,将 PDF 文件上传到 knowledge/example_data 目录,并创建访问的配置文件。
示例代码展示了通过千帆生成问题向量,再使用 VectorDB 客户端执行检索。
示例代码中通过 AnnSearch 构建近似最近邻搜索对象,指定用于搜索的向量字段名,并提供查询向量。
产品页和向量索引文档说明了 VectorDB 的检索能力、索引能力和上下游集成能力。
通过元数据过滤和向量检索结合,查询出用户想要的结果;基于关键词和短语的 BM25 检索结合向量检索,提供精确检索的能力;基于多种检索进行多路召回及融合排序,提供更加高质量的检索结果。
向量索引是针对向量类型数据而建立的索引机制,最终目的也是为了加速向量检索的过程。VectorDB 当前支持多种类型的向量索引,同时也支持“无索引”。
VectorDB 产品兼容市面上大部分的模型,并且有百度智能云的大模型生态加持,能帮助使用 VectorDB 的企业用户打通全链路。