方法介绍
update 用于全量更新 Skill 的内容。功能说明如下:全量替换:传入的
content 会完整替换现有 Skill 内容。如仅需局部修改,请使用 patch 方法。乐观锁:需要传入
expected_version(当前版本号),若版本不匹配则更新失败,避免并发冲突。版本递增:每次更新成功后版本号自动递增。
导入
from tencentdb_agent_memory.v3 import SkillClient
方法签名
def update(self,skill_id: str,expected_version: int,content: str,*,team_id: Optional[str] = None,agent_id: Optional[str] = None,user_id: Optional[str] = None,task_id: Optional[str] = None,) -> Dict[str, Any]
使用示例
from tencentdb_agent_memory.v3 import SkillClientwith SkillClient(endpoint="https://memory.tdai.tencentyun.com",api_key="sk-xxxxxxxxxxxxxxxx",service_id="tdai-mem-xxxxxxxx",team_id="team-abc123",agent_id="agt-xyz789",user_id="usr-456",) as client:result = client.update("skill-abc123", # 必填,Skill ID(位置参数)3, # 必填,期望的当前版本号(位置参数)"---\\nname: python-tips\\n---\\n# Updated Tips\\n", # 必填,全量替换内容(位置参数))print(result["version"]) # 4
请求参数
参数名 | 类型 | 必填 | 描述说明 |
skill_id | str | 是 | Skill ID(位置参数) |
expected_version | int | 是 | 期望的当前版本号,用于乐观锁校验(位置参数) |
content | str | 是 | 新的 Skill 内容(全量替换)(位置参数) |
team_id | str | 否 | 团队 ID,覆盖构造时的默认值 |
agent_id | str | 否 | Agent ID,覆盖构造时的默认值 |
user_id | str | 否 | 用户 ID,覆盖构造时的默认值 |
task_id | str | 否 | Task ID,覆盖构造时的默认值 |
响应示例
{"skill_id": "skill-abc123","version": 4}
Running Environment
Operating System: Ubuntu 24.04.3 LTS / x86_64
Runtime Version: Python 3.11.1
响应参数说明
参数名 | 类型 | 参数含义 |
skill_id | str | Skill ID |
version | int | 更新后的版本号 |
错误码
错误码 | 触发场景 | 处理建议 |
404 | Skill 不存在 | 检查 skill_id 是否正确 |
409 | 版本冲突, expected_version 与当前版本不匹配 | 重新获取最新版本号后重试 |
401 | API Key 无效或过期 | 检查 api_key 配置 |
500 | 服务内部错误 | 可有限重试 |