3CX AI Agent 智能体工具

介绍

智能体工具使 AI Agent 能够与PBX和呼叫者进行交互,执行诸如通话转接和信息检索等功能。在本文档中,我们列出了每种 Agent 类型可用的工具及其功能。

使用与格式基础

3CX AI Agent 的提示词使用Mustache Mustache 语法。 理解这些规则可确保智能体工具准确集成到3CX AI Agent提示词中。

  • 变量使用 Mustache 语法调用,将标识符括在花括号中。
  • {{...}}  {{{...}}} ->(无 #^ 或 /)将变量的原始内容直接回显到该位置(不进行HTML转义)。
  • 我们可以将提示词部分包含在block 中;只有当变量通过测试时,内容才会在最终提示词文本中呈现。
  • 我们可以选择进行正向测试:
  • {{#...}} -> 仅当变量有内容或为TRUE时,block才打开
  • {{/...}} -> block 关闭
  • 或进行反向测试:
  • {{^...}} -> 仅当变量为空或为FALSE时,block才打开
  • {{/...}} -> block关闭
  • 智能体工具可以通过名称“调用”,但 AI Agent 会在判断需要时调用它们。

以下是两个示例,两者都使用了你在3CX AI Agent的呼叫路由选项卡中配置的按主题转接(Route By Topic)目的地。

在我们的示例中,我们将使用:

  • 变量 addressbook_topics —— 此变量包含你配置的所有“按主题转接”条目;该变量在Agent(重新)启动时填充所有主题,作为系统变量使用。
  • 工具 get_addressbook —— 一个按需获取已配置主题条目的智能体工具。
  • 工具 resolve_handoff_destination —— 一个将自然语言请求解析为目的地(分机)的智能体工具。

示例1

智能体工具可以在核心提示词中提及,并附带对AI Agent的使用指导,让其自由决定何时调用它们。

If the caller asks for a department or makes a question about a problem first use get_addressbook to check if there are topics related to the question, and use resolve_handoff_destination right away, do not answer informatively first.

在上述示例中,提示词中的这段补充内容会让AI模型知道有哪些工具可用,然后由它决定是否应调用它们。无论是否设置了任何主题,上述文本都会始终存在于最终解析后的提示词中。

示例2

你还可以使用Mustache语法为提示词构建添加一些基本逻辑,在不需要时跳过某些元素;这可以使最终提示词更紧凑或更清晰。

{{#addressbook_topics}}

If the caller asks for a department or makes a question about a problem check if there are topics related to the question in the following list:

{{addressbook_topics}}

and use resolve_handoff_destination right away, do not answer informatively first.

{{/addressbook_topics}}

 

{{^addressbook_topics}}

Use resolve_handoff_destination right away, do not answer informatively first.

{{/addressbook_topics}}

在此示例中:

  • 首先我们检查 addressbook_topics 是否已设置/存在,如果是:
  • 我们将这些主题列表回显到提示词中,供AI Agent参考
  • 使用 resolve_handoff_destination 工具,根据主题列表(及其对各部门和用户/系统分机的了解)为呼叫找到最佳目的地。
  • 然后如果 addressbook_topics 未设置:
  • 我们不会用额外的文本和空列表“污染”提示词,而是要求它
  • 使用 resolve_handoff_destination 工具,根据其对各部门和用户/系统分机的了解,为呼叫找到最佳目的地。

在配置了单个主题的PBX中:“对于任何电气问题:106”,上述提示词定义将呈现以下最终提示词文本,供AI Agent 遵循:

If the caller asks for a department or makes a question about a problem check if there are topics related to the question in the following list:

- For any elecrical issues

and use resolve_handoff_destination right away, do not answer informatively first.

需要注意的是,AI Agent 已经了解这些工具及其功能。在使用默认提示词的标准通话中,智能体无需明确指令即可利用它们。但是,如果你希望影响智能体的行为或强制执行严格的执行顺序,你可以像上面那样在提示词中直接指示它调用工具。

聊天中的智能体工具

AI Agent 的提示词对于每个智能体是通用的,无论通信渠道是语音还是文本/聊天。下面的工具描述侧重于语音渠道,在大多数情况下,在聊天中也会以相同方式工作。

某些涉及语音呼叫路由的工具,如转接到语音信箱,在基于文本的通信中当然无法发挥作用,而其他工具的执行方式可能略有不同,但都在下面给出的规范范围内。

按类型划分的智能体工具

工具名称

功能

按角色划分的工具可用性

接待员

私人助理

客户服务(U10)

classify_request_before_handoff

允许个人助理工作流区分中断、通知和阻止场景。当呼叫者不是助理的老板时,存储呼叫分类,以便智能体决定如何继续。

drop_call

允许助理结束对话。

find_contact_by_extension

检索有关特定分机的信息。

get_addressbook

加载“按主题转接”列表,允许AI Agent在对话中使用其元素并选择目的地。

get_current_datetime

返回UTC和本地系统时间的当前日期和时间。

perform_chat

通过聊天消息通知适当目的地,开始结束通话的过程。

perform_email

通过电子邮件通知适当目的地,开始结束通话的过程。

perform_transfer

通过将呼叫转接到适当目的地,开始结束通话的过程。

perform_voicemail

通过将呼叫转接到适当目的地的语音信箱,开始结束通话的过程。

resolve_handoff_destination

通过对所有允许的转接端点进行自由文本目的地搜索,解析呼叫者的转接请求。

set_detected_language

允许助理记住检测到的呼叫者语言,并在后续交互中使用它。

spam_detected

记录当前通话已被识别为垃圾电话。

take_handoff_decision

记录预期的转接类型和分机号码。

take_hostility_action

记录呼叫者行为具有敌意或辱骂性。

take_not_collaborative_action

记录呼叫者不愿意与助理合作。

vector_store_search

允许助理从已配置的知识库和索引文档中检索信息。

智能体工具的输入与输出

工具名称

输入

输出

要求

classify_request_before_handoff

可用的分类:

  • notify(通知,默认)
  • interrupt(中断)
  • block(阻止)

确认分类已保存。

drop_call

 

呼叫终止子系统返回的结果。

find_contact_by_extension

分机号码,例如100。

以解析状态开头的目录表。

Resolution: exact_contact

ext|name|department|available|can_receive_email

100|John Smith|Sales|true|true

get_addressbook

 

包含所有已配置主题的列表。

  • Topic 1
  • Topic 2 ...

get_current_datetime

 

包含以下内容的字符串:

  • 当前UTC时间戳
  • 当前本地时间戳
  • 本地时区名称

perform_chat

无(通过辅助流程使用现有通话上下文信息,未通过暴露的工具提供)。

确认聊天决策已记录。

助理遵循通知规则,其他角色默认为可用。

perform_email

无(通过辅助流程使用现有通话上下文信息,未通过暴露的工具提供)。

确认邮件决策已记录。

目的地必须有资格接收电子邮件。助理遵循通知规则,其他角色默认为可用。

perform_transfer

无(通过辅助流程使用现有通话上下文信息,未通过暴露的工具提供)。

确认转接决策已记录。

助理遵循通知规则,其他角色默认为可用。

perform_voicemail

无(通过辅助流程使用现有通话上下文信息,未通过暴露的工具提供)。

确认语音信箱决策已记录。

助理遵循通知规则,其他角色默认为可用。

resolve_handoff_destination

destination —— 呼叫者提供的自由文本目的地。

可能返回:exact_contact、multiple_contacts、no_contact。

要求:

allowed_search=True

Resolution: exact_contact

ext|name|department|available|can_receive_email

801|Sales Team|Sales|true|false

set_detected_language

language —— 检测到的语言名称。

确认语言已存储。

要求:

switch_language=True

spam_detected

reason —— 通话被分类为垃圾电话的原因说明。

确认垃圾电话信号已记录。

take_handoff_decision

kind —— transfer(转接)、voicemail(语音信箱)、chat(聊天)、email(电子邮件)。destination —— 分机号码。

确认转接决策已记录。

take_hostility_action

reason —— 检测到的敌意行为的说明。

确认敌意信号已记录。

take_not_collaborative_action

reason —— 检测到的行为的说明。

确认协作信号已记录。

vector_store_search

vs_id —— 向量存储标识符。

query —— 搜索查询。top_k —— 返回的最大结果数。

从指定向量存储中检索到的相关结果。

需要配置一个或多个向量存储。

另请参阅

最后更新时间
本文件最后更新日期为2026年8月5日。
https://www.3cx.cn/docs/agentic-ai-tools/