什么是系统提示词?
系统提示词(System Prompt)用于定义 AI 的角色、行为准则和回复风格。它在对话开始前设置,影响 AI 的所有回复。什么是 promptType?
promptType 是一个预定义的场景标识符,具有两个独立的作用:
1. 工具集映射(内置、强制)
promptType 通过内置的 PROMPT_TOOL_MAPPING 决定该场景下 AI 可以使用哪些工具。
示例:
bossZhipinSystemPrompt→ 自动启用bash、feishu、wechat、computer等招聘场景工具generalComputerSystemPrompt→ 自动启用通用计算机工具
重要:工具集映射是内置的,由系统自动管理。即使你不提供
context.systemPrompts,promptType 仍然会决定可用工具。2. System Prompt 查找(可选、由调用方提供)
如果你在context.systemPrompts 中提供了对应的提示词文本,promptType 也会用作键名来查找 system prompt。
promptType 查找 system prompt
System Prompt 配置方式
方式 1:直接指定(优先级最高)
使用systemPrompt 字段直接传入,覆盖所有其他来源:
直接指定 systemPrompt
方式 2:使用 promptType + context.systemPrompts
通过promptType 引用你在 context.systemPrompts 中定义的提示词模板:
使用 promptType + context.systemPrompts
- 可以管理多个提示词模板
promptType同时决定工具集和 system prompt- 适合多租户、多场景应用
方式 3:仅使用 promptType(仅启用工具)
如果你只提供promptType 而不提供 context.systemPrompts,系统会:
- ✅ 根据
promptType启用对应的工具集 - ℹ️ System prompt 使用默认值:
"You are a helpful AI assistant."
仅使用 promptType(启用工具集)
方式 4:使用默认值
如果既不指定systemPrompt 也不指定 promptType:
- System prompt:
"You are a helpful AI assistant." - 可用工具:由
allowedTools决定(如果未指定则无工具)
优先级规则
System Prompt 的选择遵循以下优先级:System Prompt 优先级顺序
| 规则 | 说明 |
|---|---|
| 🔧 内置映射 | 指定有效的 promptType 时,使用 PROMPT_TOOL_MAPPING |
| ➕ 工具合并 | allowedTools 与映射工具取并集 |
| 💡 示例 | bossZhipinSystemPrompt + ["puppeteer"] = BOSS 直聘工具集 + puppeteer |
可用的 promptType
使用GET /api/v1/prompt-types 查询所有可用的 promptType 值:
查询 promptType 对应的工具
使用GET /api/v1/tools 查看每个 promptType 对应的工具集:
查询工具列表
promptType。
完整示例
示例 1:使用 promptType 同时配置工具和 prompt
promptType 同时配置工具和 prompt
- ✅ System prompt: 使用你提供的自定义文本
- ✅ 可用工具:
bossZhipinSystemPrompt对应的招聘工具集
示例 2:直接指定 systemPrompt(覆盖一切)
直接指定 systemPrompt(最高优先级)
- ✅ System prompt: 使用你直接指定的文本(覆盖
promptType查找) - ✅ 可用工具:
generalComputerSystemPrompt对应的工具集
示例 3:仅使用 promptType 启用工具
仅使用 promptType 启用工具(使用默认 prompt)
- ℹ️ System prompt: 使用默认值
"You are a helpful AI assistant." - ✅ 可用工具:
generalComputerSystemPrompt对应的工具集
验证配置
使用 validateOnly 预检
使用validateOnly: true 检查配置是否正确,而不实际执行对话:
使用 validateOnly 预检配置
- 哪些工具可以成功初始化
- 缺少哪些必需的上下文
promptType是否有效
无效的 promptType
如果promptType 不在 OPEN_API_PROMPT_TYPES 列表中,系统会:
- ⚠️ 忽略工具集映射:不会自动启用该 promptType 对应的工具
- ✅ 仍可查找 system prompt:如果你在
context.systemPrompts中提供了该键,仍会使用
无效的 promptType 示例
- System prompt: 使用 “你是自定义助手” ✅
- 工具集: 仅 bash(不会自动映射工具)⚠️
GET /api/v1/prompt-types 查询有效值以获得完整的工具集映射支持。
最佳实践
明确角色定位
明确角色定位
清晰定义 AI 的身份和职责:
设置行为准则
设置行为准则
明确 AI 应该遵循的规则:
定义输出格式
定义输出格式
如需特定格式的输出,在提示词中说明:
使用 promptType 管理场景
使用 promptType 管理场景
如果你的应用有多个场景(如招聘、客服、技术支持),使用
promptType 来: -
为每个场景配置专用工具集 - 在 context.systemPrompts 中管理多个提示词模板 -
通过切换 promptType 快速切换场景简单场景直接用 systemPrompt
简单场景直接用 systemPrompt
如果你的应用只有一个场景,或者不需要工具调用,直接使用
systemPrompt 参数最简单。
