腾讯云数据库 AI 服务 delete_conversation — 批量删除原始对话消息

这篇说说腾讯云批量删除原始对话消息的接口,支持按message_id精确删除或按session_id整会话删除,二者必须二选一,同时传入或全缺省会返回400错误。 按message_ids删除:传入消息ID列表,无效ID会被静默跳过。 按session_id删除:传入会话ID,删除该会话下全部消息。 返回信息:返回实际删除条数deleted_count和请求追踪ID trace_id。

相关产品
腾讯云数据库 AI 服务 产品页,含版本规格、价格与购买入口。

一、接口介绍

批量删除原始对话消息。通过以下两种方式之一指定删除范围,二选其一:

·按 message id 批量删:通过 message_ids 传入消息主键数组(非空),按主键精确删除一组消息。

·按 session 批量删:通过 session_id 传入会话 ID,一次性删除该会话下的全部消息。

项 值
HTTP 方法与路径 POST /v2/conversation/delete
HTTP 文档 批量删除原始对话消息
函数签名 delete_conversation(*, message_ids=None, session_id=None)

注意:说明:

注意:message_ids 与 session_id 必须二选其一传入,全部缺省或同时传入均返回业务错误码 400,避免空筛选导致整租户全量数据被删、或两者并用导致删除范围出现二义性。建议先用 query_conversation 预览将被命中的范围,再执行删除。

二、使用示例

# 按 message_ids 精确删result = client.delete_conversation(message_ids=["msg-aaaa", "msg-bbbb"])print(f"实际删除 {result['deleted_count']} 条")# 按 session_id 整会话删result = client.delete_conversation(session_id="sess-trip-202604")

注意:说明:

注意:client 实例的构造方式参见 新建客户端;异步调用时将方法前加 await 即可。

三、请求参数

参数名 类型 必填 描述说明
message_ids List[str] 二选一 消息 ID 列表。互斥规则:与 session_id 必须二选一传入,不可同时为空,也不建议同时传入。约束条件:传入的数组必须包含至少 1 个有效的消息 ID(不可传空数组 [])。
session_id str 二选一 会话 ID。互斥规则:与 message_ids 必须二选一传入。应用场景:当需要直接指定整个会话、而不是筛选具体某几条消息时使用。

四、返回信息

返回字典包含本次实际删除的条数与请求追踪 ID:

{ "deleted_count": 2, "trace_id": "tr-xxxxxxxx-xxxxxxxx"}

字段 类型 说明
deleted_count int 实际成功删除的消息总条数。说明:当使用 message_ids 列表进行批量删除时,如果传入了不存在、已被删除、或不属于当前用户/会话的无效 ID,系统将执行静默跳过(自动忽略)且不会报错。这些无效 ID 将不会被计入 deleted_count 中。
trace_id str 请求追踪 ID。用于全链路日志排查。该值与 HTTP 响应头中的 x-trace-id 保持一致,方便追踪大批量高危写/删操作。

五、错误处理

错误码 触发场景 处理建议
400 两个参数全部缺省、同时传入、或 message_ids 为空数组。 检查互斥语义后重试。
500 服务端错误。 记录 trace_id 后重试或上报。
赞 (0)
上一篇 4天前
下一篇 4天前