方法介绍
create 用于向指定团队和 Agent 下创建一个新 Skill。功能说明如下:即时可用:创建后 Skill 即处于可用状态,可通过
listing 和 search 被 Agent 发现和调用。内容格式:推荐使用 YAML frontmatter 格式编写 Skill 内容,便于结构化管理。
资源文件:支持通过
resources 参数附加资源文件(代码示例、配置文件等),使用 encode_utf8 或 encode_base64 构建。自定义元数据:通过
metadata 参数存储分类、标签等自定义信息。导入
from tencentdb_agent_memory.v3 import SkillClientfrom tencentdb_agent_memory.v3.skill_client import encode_utf8, encode_base64
方法签名
def create(self,*,name: str,content: str,resources: Optional[Iterable[Dict[str, Any]]] = None,metadata: Optional[Dict[str, Any]] = None,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:resource = client.encode_utf8("README.md","# Python Best Practices\\n\\n- Use type hints\\n- Follow PEP 8",mime_type="text/markdown",)result = client.create(name="python-tips", # 必填,Skill 名称content="---\\nname: python-tips\\ndescription: Python coding tips\\n---\\n# Tips\\n", # 必填,Skill 内容resources=[resource], # 可选,附加资源文件列表metadata={"category": "programming"}, # 可选,自定义元数据)print(result["skill_id"])
请求参数
参数名 | 类型 | 必填 | 描述说明 |
name | str | 是 | Skill 名称 |
content | str | 是 | Skill 内容,推荐使用 YAML frontmatter 格式 |
resources | List[Dict] | 否 | 附加资源文件列表,通过 encode_utf8 或 encode_base64 构建 |
metadata | Dict | 否 | 自定义元数据 |
team_id | str | 否 | 团队 ID,覆盖构造时的默认值 |
agent_id | str | 否 | Agent ID,覆盖构造时的默认值 |
user_id | str | 否 | 用户 ID,覆盖构造时的默认值 |
task_id | str | 否 | Task ID,覆盖构造时的默认值 |
响应示例
{"skill_id": "skill-abc123","version": 1}
Running Environment
Operating System: Ubuntu 24.04.3 LTS / x86_64
Runtime Version: Python 3.11.1
响应参数说明
参数名 | 类型 | 参数含义 |
skill_id | str | 新创建的 Skill ID |
version | int | 初始版本号,固定为 1 |
错误码
错误码 | 触发场景 | 处理建议 |
400 | name 或 content 为空 | 检查必填参数 |
401 | API Key 无效或过期 | 检查 api_key 配置 |
409 | 同名 Skill 已存在 | 修改名称或使用 update 方法 |
500 | 服务内部错误 | 可有限重试 |