微信扫码
添加专属顾问
我要投稿
导读
登录 TiDB Cloud 并创建 cluster
选择 Serverless并设置 Region 为 Frankfurt (eu-central-1)
开启 Vector Search 并设置集群名
创建集群
create schema dify;
# 将 VECTOR_STORE 修改为 tidb_vector,文件中的默认值是 weaviate
VECTOR_STORE: tidb_vector
# 将以下配置改为保存好的连接 TiDB 配置
TIDB_VECTOR_HOST: xxx.eu-central-1.prod.aws.tidbcloud.com
TIDB_VECTOR_PORT: 4000
TIDB_VECTOR_USER: xxx.root
TIDB_VECTOR_PASSWORD: xxxxxx
TIDB_VECTOR_DATABASE: dify
docker compose up -d
向量检索:基于 ANN 查询的检索,Reranker 模型为可选
全文检索:基于 BM25 检索,Reranker 模型为可选(目前 TiDB Vector 类型未支持)
混合(向量+全文):ANN + BM25 检索,Reranker 模型为必选
CREATE TABLE IF NOT EXISTS ${collection_name} (
# id: 这里的id是在 Dify 中生成 uuid
id CHAR(36) PRIMARY KEY,
# text: 分片后的文本内容
text TEXT NOT NULL,
# meta: 元数据,记录数据集id、文档id、知识库id等,用于条件查询
meta JSON NOT NULL,
# vector: 分片向量,需要设置向量维度
vector VECTOR<FLOAT>(${dimension}) NOT NULL COMMENT "hnsw(distance=${distance_func})",
create_time DATETIME DEFAULT CURRENT_TIMESTAMP,
update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
${dimension} 表示向量的维度,这个取决于选择的 Embedding 模型。
${distance_func} 表示用户设置的距离度量方法,目前支持的值有cosine 和 l2 ,目前仅支持cosine。
SELECT meta, text FROM (
SELECT meta, text, ${tidb_func}(vector, "${query_vector}") as distance
FROM ${collection_name}
ORDER BY distance
LIMIT ${top_k}
) t WHERE distance < ${distance};
${query_vector} 表示查询向量,即用户问题向量化后的结果
${tidb_func} 表示 TiDB Vector 中支持的向量距离度量防范,目前支持的方法有 Vec_Cosine_Distance 和 Vec_l2_Distance
${top_k} 表示结果 TopK 的具体个数
${distance} 表示向量库中的节点离查询节点的距离,Dify 知识库可以设置距离/分数阈值
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-08-28
Dify v1.8.0大版本更新:多模型凭证系统的底层架构革新与MCP的 OAuth 集成能力突破!
2025-08-27
Dify发布了V1.8.0版本,安全性和性能有了重大改进,让我们一起来看看吧!
2025-08-25
4300字长文:使用dify搭建合同审核Agent
2025-08-23
Dify集成MCP服务
2025-08-23
Dify v1.7.2 实战爆破:6 大特性颠覆开发,23 处修复稳如老狗
2025-08-20
深度实战:我用 Dify 复刻了 1688 的 AI 搜索,“多路召回”才是灵魂
2025-08-20
Dify Java Client
2025-08-19
5 分钟搭建你的 AI 应用-Dify 全流程指南
2025-06-04
2025-06-25
2025-06-03
2025-06-02
2025-06-05
2025-06-10
2025-06-30
2025-06-29
2025-06-24
2025-06-09
2025-08-18
2025-08-02
2025-07-30
2025-06-26
2025-06-17
2025-05-29
2025-05-28
2025-05-22