语义检索原始对话消息

最近更新时间:2026-05-26 21:12:01

我的收藏

接口介绍

本接口(/conversation/search)用于在原始对话消息中做语义检索。传入检索文本,并按需附加预过滤条件,即可拿到按相关度排序的 Top-K 命中结果:
检索文本:通过 query 传入要匹配的内容(必填)。
返回数量:通过 limit 指定 Top-K 上限,不传时默认返回 5 条。
预过滤窗:通过 session_id 限定会话,time_start / time_end 限定时间窗(含端点),用于召回前缩小检索范围;与 POST /conversation/query 同形。
说明:
本函数采用语义搜索(向量检索)机制进行相关性召回。其核心运行行为如下:
分页与数量限制:本接口为全量 Top-K 检索,不提供传统的分页功能(无 offset 与 total 字段)。单次返回的结果总数不会超过指定的 limit 值。
相关性评分(Score):返回的每个结果项中均会包含一个 score(置信度评分)字段,且所有结果已默认按 score 从高到低(相关性由强到弱)进行倒序排列。
评分有效范围(重要):score 仅代表本次请求内部各结果之间的相对相关度。由于不同请求的检索上下文不同,跨请求、跨 Query 的 score 绝对值不可放在一起直接对比。

Method 与 URL

POST https://{服务访问地址}/v2/conversation/search

使用示例

curl -i -k -X POST \\
-H 'Content-Type: application/json' \\
-H 'Authorization: Bearer ******************************' \\
-H "x-tdai-service-id: mem-8i8t****" \\
https://memory.tdai.tencentyun.com/v2/conversation/search \\
-d '{
"query": "日本旅游推荐路线",
"limit": 5,
"session_id": "session-trip-202604",
"time_start": "2026-04-01T00:00:00Z",
"time_end": "2026-04-30T23:59:59Z"
}'
说明:
鉴权说明:所有接口都必须在请求头中携带 Authorization: Bearer <API Key>x-tdai-service-id: <Service_ID>,否则将返回鉴权失败。

请求参数

参数名
类型
必填
默认值
描述说明
query
str
-
检索文本 / 关键词。用户输入的查询语句,系统将基于此文本进行语义匹配或关键词检索。
长度限制:[1, 2048],即上限 2 KB。
limit
int
5
最大返回结果数(Top-K)。取值范围:[1, 100]。
说明:
若不传或传 None,服务端默认返回相关性最高的 5 条记录。
session_id
str
-
会话限定过滤器。传入特定会话 ID 后,检索范围将仅局限于该会话内的关联内容;不传则在全量数据中检索。
time_start
str
-
时间窗起点(包含该时刻)。
格式要求:ISO 8601 格式,例如:"2026-05-25T10:00:00Z"。
作用:用于过滤该时间点之后产生的数据。
time_end
str
-
时间窗终点(包含该时刻)。
格式要求:ISO 8601 格式。
与 time_start 配合可锁定一个历史时间段进行精确检索。

响应示例

{
"code": 0,
"message": "ok",
"request_id": "req-7fd3b2dd",
"data": {
"messages": [
{
"id": "msg-aaaa",
"role": "user",
"content": "我打算 5 月份去日本旅游 7 天,预算 1.5 万元,请帮我推荐路线。",
"timestamp": "2026-04-20T10:00:00Z",
"score": 0.92
},
{
"id": "msg-bbbb",
"role": "assistant",
"content": "建议关西线路:大阪 - 京都 - 奈良,5 月气候宜人,预算充足。",
"timestamp": "2026-04-20T10:00:05Z",
"score": 0.81
}
]
}
}
字段名
类型
说明
data.messages
List
命中的消息列表。
排序规则:列表内的消息默认按相关性评分(score)由高到低(倒序)排列。
数据结构:每条消息包含以下完整字段:
id (str): 消息的唯一主键 ID。
role (str): 发送者角色,可选值为 "user"、"assistant" 或 "system"。
content (str): 命中的消息具体文本内容。
timestamp (str): 消息产生的 ISO 8601 格式时间戳。
score (float): 语义相关性置信度评分。仅在当前检索请求内有效,跨请求不可直接对比。