Dify + TiDB Vector,快速构建你的AI Agent
内容提要
随着人工智能技术的发展,每个人都可以成为AI的创造者和使用者。Dify是一个开源的LLM应用开发平台,结合TiDB Vector可以快速搭建一个功能完备的AI Agent。通过Dify和TiDB Vector,可以简化模型管理、RAG搭建和Agent开发的过程。
延伸解读
TiDB Vector 的申请与部署要点
目前 TiDB Vector 功能需要申请才能使用,预计很快公测。申请通过后会收到体验邀请邮件,之后可登录 TiDB Cloud 创建 Serverless 集群,并开启 Vector Search。部署 Dify 时,需使用社区开源版进行自托管,因为云服务默认使用 Weaviate。推荐用 Docker Compose 部署,并修改 api 和 worker 的环境变量,将 VECTOR_STORE 设为 tidb_vector,并配置 TiDB 连接信息。
知识库检索模式的选择与配置
Dify 知识库支持三种检索模式:向量检索、全文检索和混合检索。向量检索基于 ANN 查询,Reranker 可选;全文检索基于 BM25,目前 TiDB Vector 类型未支持;混合检索结合 ANN 和 BM25,必须使用 Reranker。配置 Embedding 和 Reranker 模型需要 token 授权,可尝试通义千问、MINIMAX、JINA 等 Embedding 模型,以及 JINA、Cohere 等 Reranker 模型。
Dify 接入 TiDB Vector 的表结构与查询
Dify 在 TiDB Vector 中创建的表包含 id、text、meta、vector 等字段,其中 vector 字段需指定维度,并支持 hnsw 索引,距离度量目前仅支持 cosine。查询时,使用 tidb_func 计算向量距离,支持 Vec_Cosine_Distance 和 Vec_l2_Distance,通过 ORDER BY distance 和 LIMIT top_k 获取近邻结果,并可设置距离阈值过滤。
Q&A
Dify是什么,它的主要功能是什么?
Dify是一个开源的LLM应用开发平台,主要功能包括简化模型管理、RAG搭建和Agent开发,提供可视化编排。
如何使用TiDB Vector搭建AI Agent?
用户需要登录TiDB Cloud创建集群,设置向量搜索功能,然后通过Dify进行模型管理和Agent开发。
TiDB Vector的向量搜索功能有什么优势?
TiDB Vector提供灵活的数据处理能力,支持向量搜索,能够增强AI Agent的性能。
Dify支持哪些部署方式?
Dify支持云服务和自托管社区版,用户可以根据需求选择合适的部署方式。
在Dify中如何配置知识库?
用户可以访问Dify界面,选择知识库,上传文件并创建知识库设置。
Dify创建的表结构包含哪些字段?
Dify创建的表结构包括id、文本内容、元数据和向量等字段,支持增删改查操作。