接口介绍
MetadataClient 提供以下 Task 管理接口,用于创建、查询、更新、删除、列出和归档 Task 资源。Task 代表 Agent 需要执行的具体任务。
create_task:创建 Task,指定名称和所属团队。
get_task:按 Task ID 查询详细信息。
update_task:更新 Task 属性。
delete_tasks:批量硬删除 Task(不可恢复)。
list_tasks:按团队和状态分页查询 Task 列表。
archive_task:归档 Task(软删除,可恢复)。
导入
from tencentdb_agent_memory.v3 import MetadataClient
方法签名
def create_task(self, p: Dict[str, Any]) -> Dict[str, Any]
def get_task(self, task_id: str) -> Dict[str, Any]
def update_task(self, p: Dict[str, Any]) -> Dict[str, Any]
def delete_tasks(self, task_ids: List[str]) -> Dict[str, Any]
def list_tasks(self,team_id_or_request: Union[str, Dict[str, Any], None] = None,*,status: Optional[str] = None,pagination: Optional[Dict[str, Any]] = None,) -> Dict[str, Any]
def archive_task(self, task_id: str) -> Dict[str, Any]
使用示例
create_task
from tencentdb_agent_memory.v3 import MetadataClientmetadata = MetadataClient(endpoint="https://memory.tdai.tencentyun.com",api_key="sk-xxxxxxxxxxxxxxxx",service_id="tdai-mem-xxxxxxxx",)resp = metadata.create_task({"name": "Q3 数据迁移", # 必填,Task 名称"team_id": "team-abc", # 必填,所属团队 ID"description": "第三季度数据迁移", # 可选,Task 描述"metadata": {"priority": "high"}, # 可选,自定义元数据})print(resp)
get_task
resp = metadata.get_task("task-xyz")print(resp)
update_task
resp = metadata.update_task({"task_id": "task-xyz", # 必填,待更新的 Task ID"name": "Q3 数据迁移 v2", # 可选,更新后的名称"status": "completed", # 可选,更新后的状态})print(resp)
list_tasks
resp = metadata.list_tasks("team-abc", status="active", pagination={"limit": 20})for task in resp["items"]:print(task["name"])
delete_tasks
resp = metadata.delete_tasks(["task-xyz"])print(resp)
archive_task
resp = metadata.archive_task("task-xyz")print(resp)
请求参数
create_task
参数名 | 类型 | 必填 | 描述说明 |
name | str | 是 | Task 名称 |
team_id | str | 是 | 所属团队 ID |
get_task
参数名 | 类型 | 必填 | 描述说明 |
task_id | str | 是 | Task ID |
update_task
参数名 | 类型 | 必填 | 描述说明 |
task_id | str | 是 | 待更新的 Task ID |
name | str | 否 | 更新后的名称 |
delete_tasks
参数名 | 类型 | 必填 | 描述说明 |
task_ids | List[str] | 是 | 待删除的 Task ID 列表 |
list_tasks
参数名 | 类型 | 必填 | 描述说明 |
team_id | str | 是 | 团队 ID |
status | str | 否 | 按状态过滤,如 active、archived |
pagination | Dict | 否 | 分页参数,含 limit 和 offset |
archive_task
参数名 | 类型 | 必填 | 描述说明 |
task_id | str | 是 | 待归档的 Task ID |
响应示例
create_task
{"task_id": "task-550e8400-e29b-41d4-a716-446655440000","name": "Q3 数据迁移","team_id": "team-abc","created_at_ms": 1723968000000}
get_task
{"task_id": "task-xyz","name": "Q3 数据迁移","team_id": "team-abc","status": "active","created_at_ms": 1723900000000,"updated_at_ms": 1723968000000}
list_tasks
{"items": [{"task_id": "task-xyz","name": "Q3 数据迁移","status": "active","created_at_ms": 1723900000000}],"total": 1}
响应参数说明
参数名 | 类型 | 参数含义 |
task_id | str | Task 唯一标识 ID |
name | str | Task 名称 |
team_id | str | 所属团队 ID |
status | str | Task 状态,如 active、archived |
created_at_ms | int | 创建时间,Unix 时间戳,单位为毫秒 |
updated_at_ms | int | 最后更新时间,Unix 时间戳,单位为毫秒 |
items | List[Dict] | Task 列表 |
total | int | 符合条件的 Task 总数 |
错误码
错误码 | 触发场景 | 处理建议 |
400 | 请求参数不合法(如 name 为空) | 检查参数是否符合约束条件 |
401 | API Key 无效或缺失 | 检查 Bearer Token 配置 |
404 | 指定 Task 不存在 | 确认 Task ID 是否正确 |
500 | 服务内部错误 | 稍后重试 |