从其他平台导入智能体
使用 API 密钥或 JSON 导出文件,从 Vapi、Retell、ElevenLabs Agents 或 Bland 迁移智能体、工具和知识库,检查映射后导入。
如果您的智能体部署在 Vapi、Retell、ElevenLabs Agents 或 Bland 上,导入工具会获取它们,将每个字段映射到 ThunderPhone,并在创建任何内容之前向您显示结果。
开始导入
- 打开 智能体 并选择 导入(或者在空的智能体页面上选择 从 Vapi、Retell、ElevenLabs 或 Bland 导入)。
- 选择平台。
- 按照对话框中的编号步骤在该平台创建密钥(这些步骤会为您打开正确的设置页面),粘贴密钥;或者切换到 粘贴导出的 JSON,并从该平台的控制台或 API 粘贴一个或多个智能体对象。
- 选择 获取我的智能体。获取和映射通常不到一分钟;您可以离开页面,并通过任务栏返回查看。
审核方案
每个智能体都会显示名称、匹配的语音(以及匹配置信度)、智能等级、包含的工具和知识库,以及有关翻译过程中发生变更的说明。展开某一行即可阅读提示词:
- 重写 —— 按照提示词指南的风格生成的一份连贯提示词,保留源内容中的每个电话号码、URL、工具名称和占位符。
- 结构化 —— 按标题排列的源配置,与提取结果完全一致。当无法验证重写内容时,会自动使用此选项。
取消勾选您不需要的智能体(测试副本默认不勾选),编辑名称、语音、等级或提示词选项,然后选择 导入。创建的智能体会在构建器中打开,并附带其 API 连接和知识库。
导入内容
获取密钥
- 打开 dashboard.vapi.ai/org/api-keys (组织设置 → API 密钥)。
- 创建密钥并选择 私有 ——公有密钥无法列出 智能体。
- 将其复制到对话框中。Vapi 密钥不设权限范围;如果您仅为此操作创建了该密钥,请在导入后于 Vapi 中删除它。
| Vapi 字段 | ThunderPhone |
|---|---|
model.messages[system] | 提示词 |
firstMessage, firstMessageMode | 提示词中的开场白;谁先说话 |
voice.provider + voiceId | 目录中最接近的音色(显示匹配置信度) |
transcriber.language | 主要语言 |
model.model | 智能层级 |
model.tools / toolIds(函数、apiRequest) | API 连接 |
transferCall 目标 | 提示词中的转接部分(内置转接) |
endCall, dtmf | 内置功能 |
query 工具(knowledgeBases[].fileIds)和旧版 knowledgeBaseId | 知识库,其中上传的文件作为文档 |
endCallMessage, endCallPhrases, voicemailMessage, messagePlan.idleMessages | 提示词部分;语音信箱消息设置 |
silenceTimeoutSeconds | 静默挂断 |
maxDurationSeconds, server.url, 小组、工作流、sms/ghl/make/code/mcp 工具 | 已报告,未导入 |
获取密钥
- 打开 dashboard.retellai.com/apiKeys (系统设置 → API 密钥),然后选择 创建密钥。
- 启用 限制权限,并将 智能体、知识库 和 电话设为 读取。其他所有组均不要勾选;导入工具绝不会向 Retell 写入数据。
- 将密钥复制到对话框中。
| Retell 字段 | ThunderPhone |
|---|---|
Retell LLM general_prompt, begin_message, start_speaker | 提示词;开场白;谁先说话 |
states + starting_state | 提示词中的有序通话流程 |
对话流程 global_prompt + 节点 | 有序通话流程;转接节点也会成为转接规则 |
general_tools 自定义工具 | API 连接 |
transfer_call, end_call, press_digit | 提示词转接 + 内置功能 |
voice_id(11labs-, openai-, cartesia-, …) | 目录中最接近的音色 |
language | 主要语言和附加语言 |
model / s2s_model | 智能层级 |
knowledge_base_ids(URL、文档、文本来源) | 包含文档的知识库 |
voicemail_option, end_call_after_silence_ms, boosted_keywords | 语音信箱设置;静默挂断;提示词术语 |
webhook_url, max_call_duration_ms(低于默认的 60 分钟时)、自定义 LLM 引擎、send_sms、MCP | 已报告,未导入 |
获取密钥
- 打开 elevenlabs.io/app/settings/api-keys 并选择 创建 API 密钥。
- 在权限下,为其授予 智能体平台:读取 (如显示,也授予 知识库:读取);导入工具不需要其他权限。
- 将密钥复制到对话框中。
| ElevenLabs 字段 | ThunderPhone |
|---|---|
conversation_config.agent.prompt.prompt | 提示词 |
first_message, language | 开场白;主要语言 |
prompt.llm | 智能层级 |
tts.voice_id | 目录中最接近的音色 |
webhook 类型的 tools / tool_ids | API 连接(查询或请求正文架构) |
系统工具 end_call, transfer_to_number, 键盘 | 内置功能 + 提示词转接 |
knowledge_base URL/文本/文件条目 | 知识库:URL 条目会成为 URL 文档;文本和文件条目会按 ID 获取,并以其提取出的文本导入 |
turn.silence_end_call_timeout | 静默挂断 |
conversation.max_duration_seconds, 客户端工具、MCP | 已报告,未导入 |
获取密钥
- 打开 app.bland.ai/dashboard/settings。
- 复制其中显示的 API 密钥(Bland 每个账户只有一个密钥;该密钥不设权限范围,因此如有需要,您可在之后轮换该密钥)。
- 将其粘贴到对话框中。
网络智能体在 Bland 中没有名称,因此导入工具会根据问候语 (“您好,我是 Nova……”)或提示词(“你是 Nova……”)为其命名。
| Bland 字段 | ThunderPhone |
|---|---|
网络智能体 prompt, first_sentence, language, model, voice | 提示词;开场白;语言;层级;最接近的音色 |
自定义 tools(名称、URL、方法、输入架构、标头) | API 连接 |
呼入号码 prompt 或 pathway_id | 每个呼入号码对应一个智能体 |
| 每个路径,无论是否附加到号码 | 每个路径对应一个智能体 |
| 路径节点和边(默认、知识库、转接呼叫、结束呼叫、Webhook) | 有序通话流程;知识库节点文本会成为文档;转接和 Webhook 会成为内置功能和 API 连接 |
transfer_phone_number | 转接部分 |
max_duration, webhook | 已报告,未导入 |
| Bland 所有的号码 | 已报告为不可移植 |
需在 ThunderPhone 中处理的内容
审核页面底部的报告列出了所有未迁移的内容及其原因:
- 电话号码。 您在运营商处拥有的号码可以作为VoIP 号码接入。平台所有的号码无法迁移;请获取一个新号码并将其关联到导入的智能体。
- 每个智能体的 Webhook。 ThunderPhone 会为每个组织发送签名 Webhook;请在 Webhooks 下进行设置。
- 供应商存储的凭据。 可见的工具请求头会被复制。旧平台按 ID 存储的凭据会被标记;请将其添加到 API 连接的请求头中。
- 没有对应项的工具(短信发送、特定平台的自动化)会被列出,确保不会有内容被静默遗漏。
- 通话时长上限。 ThunderPhone 没有单个智能体的最长通话时长限制;请改用静音挂断设置和提示词中的结束规则。
无需密钥导入
选择 粘贴导出的 JSON,然后粘贴您的平台 API 或控制台导出的对象,形式可以是单个对象或 JSON 列表:
- Vapi ——助理对象(
GET /assistant/{id})。通过toolIds附加的工具和知识文件需要密钥才能解析。 - Retell ——智能体对象(
GET /get-agent/{id})以及其 Retell LLM(GET /get-retell-llm/{id})或同一列表中的对话流程对象;导入器会按 ID 将它们关联。单独粘贴的 LLM 或流程会以生成的名称导入。 - ElevenLabs ——智能体对象(
GET /v1/convai/agents/{id});其 Webhook 工具以内联形式包含,因此不会留下未解析的内容。 - Bland ——网页智能体、
/v1/agents响应或路径对象。
仅通过 ID 引用且未包含在粘贴内容中的项目会列在说明中。
导入后
- 打开每个智能体并阅读其说明。
- 在构建器中发起测试通话。
- 关联一个电话号码。
- 使用请求测试器测试每个 API 连接。
- 检查知识文档是否已完成索引。
- 如果旧智能体使用了组织 Webhook,请设置组织 Webhook。
导入器也可通过 REST API 使用。