For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
主导航

优化元数据

通过丰富的元数据提升工具发现效果并改善工具行为。

元数据为何重要

ChatGPT 和 Codex 根据您提供的元数据决定何时调用您的工具。精心编写的名称、描述和参数文档可以提高相关提示的召回率,减少误触发。请像打磨产品文案一样打磨元数据,对其进行迭代、测试和分析。

收集一组标准提示

在调整元数据之前,请先整理一个带标注的数据集:

  • 直接提示: 用户明确提及您的产品或数据源。
  • 间接提示: 用户描述期望的结果,但不提及您的工具。
  • 负例提示: 应由内置工具或其他工具处理请求的情况。

记录每条提示的预期行为(调用您的工具、不执行任何操作或使用替代方案)。您将在回归测试中重复使用这组提示。

编写能引导模型的元数据

对于每个工具:

  • 名称: 将业务领域与操作结合起来(calendar.create_event)。
  • 描述: 以“在……时使用此工具”开头,并明确指出不允许使用的情况(“不要用于设置提醒”)。
  • 参数文档: 描述每个参数,提供示例,并为受约束的输入使用允许的值。
  • 只读提示: 对于仅检索或计算信息的工具, 如果它们从不在对话之外创建、更新、删除或发送数据, 请标注 readOnlyHint: true
  • 破坏性提示: 对于不会删除或覆盖用户数据的工具, 请标注 destructiveHint: false
  • 开放世界提示: 当工具访问公共互联网或范围不受限定的外部实体时, 请标注 openWorldHint: true,这也包括网页搜索等只读工具。 对于仅限于特定私有账户或工作空间的工具,请使用 false, 即使该服务托管在外部也不例外。

在开发者模式中进行评估

  1. 在 ChatGPT 中,从 设置 → 安全与登录开启开发者模式, 然后前往ChatGPT 插件 注册您的 MCP 服务器。
  2. 逐一运行标准提示集中的提示,并记录结果:选择了哪个工具、传入了哪些参数,以及组件是否成功渲染。
  3. 针对每条提示,跟踪精确率(是否运行了正确的工具?)和召回率(工具是否在应当运行时运行了?)。

如果模型选错了工具,请修改描述,突出预期使用场景,或缩小工具的适用范围。

有条理地迭代

  • 每次只修改一个元数据字段,以便确定是哪项修改带来了改进。
  • 保留修订日志,记录时间戳和测试结果。
  • 将差异分享给审查者,以便在部署前发现含义不清的文案。

每次修订后都要重新评估。先争取在负例提示上达到较高的精确率,再追求召回率的小幅提升。

生产环境监控

您的 MCP 服务器上线后:

  • 每周查看工具调用分析数据。确认为“工具选择错误”的次数激增,通常意味着元数据发生了漂移。
  • 收集用户反馈,并更新描述以澄清常见误解。
  • 安排定期重放提示,尤其是在添加新工具或更改结构化字段之后。

将元数据视为需要持续维护的资产。措辞和评估越用心,工具就越容易被发现和调用。