向量相似度匹配
根据提供的查询内容或关键词,在 Agent/Workflow 的知识库中进行检索和召回知识切片。允许开发者通过 group_ids 或 data_ids 指定检索范围、指定 top_k,知识相关性得分和知识重排实现个性化RAG能力。
请求方式
POST
调用地址
https://api.gptbots.ai/v1/vector/match
调用验证
详情参见 API 概述的鉴权方式说明。
请求
请求示例
curl -X POST https://api.gptbots.ai/v1/vector/match \
-H 'Authorization: Bearer your_apikey' \
-H 'Content-Type: application/json' \
-d '{
"embedding_rate": 0.9 ,
"prompt": "GPTBots有哪些API?",
"group_ids": ["1234567890","1230987654"],
"data_ids": ["1234567890","1230987654"],
"top_k": 10 ,
"rerank_version": "Jina-reranker-v2-base-multilingual",
"doc_correlation": 0.70
}'
curl -X POST https://api.gptbots.ai/v1/vector/match \
-H 'Authorization: Bearer your_apikey' \
-H 'Content-Type: application/json' \
-d '{
"embedding_rate": 0.9 ,
"prompt": "GPTBots有哪些API?",
"group_ids": ["1234567890","1230987654"],
"data_ids": ["1234567890","1230987654"],
"top_k": 10 ,
"rerank_version": "Jina-reranker-v2-base-multilingual",
"doc_correlation": 0.70
}'
此代码块在浮窗中显示
请求头
字段 | 类型 | 描述 |
---|---|---|
Authorization | Bearer ${token} | 使用 Authorization: Bearer ${token}进行调用验证,请在 API 密钥页面获取密钥作为 token。 |
Content-Type | application/json | 数据类型,取值为 application/json。 |
请求体
字段 | 类型 | 必填 | 描述 |
---|---|---|---|
embedding_rate | float | 否 | 关键词 和语义 的检索权重占比。取值范围:[0,1],默认值为1。 |
prompt | string | 是 | 关键词,用于与 Agent/Workflow 内文档进行向量相似度匹配的内容。 |
group_ids | array | 否 | 知识库 ID,用于在指定知识库范围内进行向量检索。 |
data_ids | array | 否 | 文档 ID,知识库 ID,用于在指定知识文档范围内进行向量检索。 |
top_k | int | 是 | 将关键词与文档 ID 进行向量相似度匹配后,返回相似度最高的 K 个值。填写范围为 [1,50]。 |
rerank_version | string | 否 | 知识重排模型名称,对候选知识进行再次排序让知识搜索更精准。以下模型任选其一:BGE-Rerank、Jina-reranker-v2-base-multilingual、Jina-colbert-v2、BCE-Rerank |
doc_correlation | float | 否 | 知识相关性得分,用户问题与知识块进行相似度计算后的得分,分数越高越匹配,但过高可能导致无可用知识块。 填写范围为 [0.1,0.95] |
当
group_ids
和data_ids
两者同时有值时,在其并集知识范围内进行检索。当两者均为null或不传时,则默认为全部知识库。当两者均为 [] 数组时则视为不检索任何知识。
响应
响应示例
{
"total": 2,
"list": [
{
"content": "测试数据",
"data_id": "aS1CNvPK4XCckDKQNj7azC9a",
"document_name": "demo.md",
"score": 0.75
},
{
"content": "测试数据",
"data_id": "aS1CNvPK4XCckDKQNj7azC9a",
"document_name": "demo.md",
"score": 0.75
}
]
}
{
"total": 2,
"list": [
{
"content": "测试数据",
"data_id": "aS1CNvPK4XCckDKQNj7azC9a",
"document_name": "demo.md",
"score": 0.75
},
{
"content": "测试数据",
"data_id": "aS1CNvPK4XCckDKQNj7azC9a",
"document_name": "demo.md",
"score": 0.75
}
]
}
此代码块在浮窗中显示
成功响应
字段 | 类型 | 描述 |
---|---|---|
total | int | 返回的分片总数。 |
list | JSON Array | 分片列表。 |
content | string | 分片内容。 |
data_id | string | 来源文档。 |
score | float | 相似度值。 |
失败响应
字段 | 类型 | 描述 |
---|---|---|
code | int | 错误码。 |
message | string | 错误详情。 |
错误码
Code | Message |
---|---|
40000 | 参数错误 |
40127 | 开发者鉴权失败 |
20059 | Agent/Workflow 已删除 |