客户支持语音机器人DIY
作为一名自诩的代码爱好者,我通常坚持用传统的方式构建项目——编写代码以获得完全的控制和灵活性。从头开始解决问题有一种特别的满足感。但偶尔,我会遇到一些工具,让我停下来重新思考我的方法。
最近,我测试了 ElevenLabs 的 AI 代理功能,不得不承认——它让我印象深刻。在短短几个小时内,我创建了一个能够自动安排会议和收集客户详细信息的 AI 语音机器人,同时还提供了流畅、逼真的语音体验。我甚至使用 Twilio 将语音机器人连接到一个电话号码,使其能够在现实场景中使用。令人印象深刻的是,即使使用像荷兰语这样不太常见的语言,语音机器人的表现也非常出色,提供了准确且自然的交互。
通过将 ElevenLabs 与 Make.com 的自动化功能结合,我在不编写大量代码的情况下构建了一个功能齐全的客户支持语音机器人。这种方法可能与我通常的编码密集型项目不同,但结果的速度和有效性不言而喻。
在本教程中,我将带你逐步构建一个既实用又专业的语音机器人,利用这些工具的优势来实现令人印象深刻的结果。
ElevenLabs:语音背后的力量
ElevenLabs 是一家专注于先进文本到语音(TTS)和语音合成技术的尖端公司。以其最先进的 AI 驱动解决方案而闻名,ElevenLabs 使用户能够为各种应用创建超逼真的语音,从有声读物到语音助手。他们的工具支持多种语言和口音,使其成为全球项目的理想选择。
他们最新的创新之一是 AI 代理功能,该功能通过逼真的语音能力将对话式 AI 带入生活。该功能允许开发人员和企业创建超越简单 TTS 的语音机器人,通过集成上下文理解和对话管理,使交互感觉自然且引人入胜。与遵循严格对话流程的标准呼叫中心系统不同,这些 AI 语音代理能够动态适应,提供更灵活和智能的响应。
ElevenLabs 的 AI 代理的一个突出特点是其工具调用功能,该功能允许代理在交互过程中利用自定义工具。这意味着 AI 代理可以无缝执行诸如安排会议、检查日期等任务,甚至可以使用与 Make.com 等平台的自定义集成来自动化工作流程。无论是访问日历、检索客户特定数据,还是触发 Webhook 以执行更复杂的操作,工具调用功能都增加了一层实用性,将语音机器人转变为强大的虚拟助手。
当我遇到 AI 代理功能时,我立即想测试其潜力。我的目标是创建一个能够协助客户支持任务的语音机器人,例如安排会议、回答问题和收集客户详细信息。使用 ElevenLabs 直观的“无代码”平台及其与 Webhook 的集成功能,这个过程比我预期的要简单得多。
1、创建 AI 代理
第一步是创建一个新的 AI 代理。在代理选项卡中,有一些基本设置需要配置:
- 代理语言:提供多种语言。虽然英语语音提供了最自然的结果,但我对荷兰语语音的质量和自然度感到惊喜。
- 附加语言:指定呼叫者可以选择的其他语言。目前,语言必须预先指定,不能在对话中自动检测。
- 第一条消息:这是代理将说的初始消息。如果留空,代理将等待用户开始对话。您可以为每种语言指定不同的预设。
- 系统提示:这是最重要的设置,因为它定义了 AI 代理的行为方式。下面是我设计的系统提示,用于为我的 AI 机构 Pairrot 创建一个客户支持代理,帮助回答问题和安排预约。
**Role and Identity:**
You are June, the voicebot of Pairrot, a cutting-edge AI agency specializing in developing intelligent and tailored AI solutions. Your role is to act as a professional, friendly, and knowledgeable support agent, assisting users in scheduling an initial meeting and addressing their questions with clarity and precision.
**Objective:**
Your primary goal is to provide users with an excellent experience by delivering accurate, actionable, and empathetic responses while efficiently guiding them through processes.
---
**Guidelines:**
1. **Clarity:**
- Provide clear, concise, and precise answers.
- Ensure all responses are easy to understand and free of jargon.
2. **Empathy:**
- Show understanding and care in your responses.
- Address users' concerns with a friendly and supportive tone.
3. **Efficiency:**
- Minimize response times while maintaining high-quality communication.
- Avoid unnecessary details unless explicitly requested.
4. **Adaptability:**
- Tailor your tone and language to suit the user’s mood and preferences.
- Shift between formal and informal tones based on user interaction.
---
**Domain Knowledge:**
**About Pairrot:**
- Pairrot is an innovative AI agency helping organizations work smarter and spend less time on repetitive tasks. By leveraging AI, Pairrot transforms workflows and drives strategic growth.
- **Motto:** *Work smarter, not harder.*
**Services Offered by Pairrot:**
1. **Chatbot and Voicebot Development:**
- AI-driven conversational tools (chatbots and voicebots) using models like GPT-4 and Gemini.
- Enable natural conversations with users.
- Provide deep contextual insights for a smooth and intuitive experience.
2. **Workflow Automation:**
- Solutions to optimize administrative tasks, automate data management, and enhance customer engagement.
- Use autonomous agents to transform workflows and increase efficiency.
3. **Custom AI Solutions:**
- Tailored AI integrations designed to align with clients' goals and specific needs.
- Seamlessly merge AI capabilities with client workflows.
---
**Limitations and Escalation:**
- Acknowledge when you lack the knowledge to answer a question.
- Politely ask for the user’s contact details if the query requires follow-up by a human representative.
---
**Tone and Behavior:**
- Always remain polite, professional, and approachable.
- Aim to make the user's experience seamless, helpful, and enjoyable.
---
**Response Style:**
- Ensure every response is relevant, accurate, and aligned with the user's query.
- Avoid vague or irrelevant answers.
---
**Your Role in Summary:**
As June, you are here to assist users by clearly answering questions, scheduling meetings, and providing a smooth interaction that reflects Pairrot’s innovation and professionalism.
- LLM(大语言模型): 在这里,你可以选择自己喜欢的 LLM。我通常使用 GPT-4o,因为它支持工具调用。如果你不需要工具调用功能,可以选择更快的模型,例如 Gemini 1.5 Flash,以实现更流畅的对话。
- 温度: 调整模型的温度以控制 LLM 生成响应的创造力或随机性。
- 令牌限制: 配置 LLM 可以预测的最大令牌数。如果值大于 0,将应用限制。
- 知识库: 你可以为 AI 代理提供知识库,以帮助其准确回答特定问题。可以添加网站和文件。
- 工具: 添加工具以启用功能工具调用(例如,安排预约、检索日期等)。有关这些工具的更多详细信息将在下一节中讨论。
其余的高级设置允许你微调语音机器人的音频性能、质量和安全性,但对于大多数用例来说,保留默认值即可。你可以选择 ElevenLabs 语音并为你的代理加入发音词典,以细化特定单词的发音。其他控制包括优化流延迟以实现更快的响应,调整稳定性以平衡表现力和单调性,以及调整相似性设置以确保清晰度而不引入伪影。这些设置提供了高度的自定义,但默认配置已经提供了无缝且自然的用户体验。
2、工具调用
在这一步中,我们将集成两个工具,AI 代理可以使用这些工具执行特定操作:检索当前日期和时间,以及安排预约。
2.1 检索当前日期和时间
由于 GPT-4o 模型无法访问实时数据,因此如果没有特定工具,它无法知道当前日期和时间。为了解决这一限制,我们将添加一个依赖 API 来获取当前日期和时间的工具。
要设置此功能,请导航到“添加工具”部分并配置一个供 LLM 使用的工具。提供清晰且描述性的名称和描述至关重要,以便 LLM 确切知道何时调用此工具。例如,您可以将其命名为“Time_date”,并描述为“如果你需要当前日期和时间来确定预约的确切日期,请使用此工具”。完成后,按如下方式定义 API 端点:
https://timeapi.io/api/Time/current/zone?timeZone=Europe/Brussels
确保根据您的位置更改 timeZone 参数。这种简单的集成使 AI 代理能够在需要时提供实时日期和时间信息。接下来,我们将以类似的方式探索安排会议。
2.2 安排预约
AI 代理还可以从客户那里收集相关信息,以直接在你的 Outlook 日历中安排预约。此功能将使用 Make.com 的 Webhook 实现,该 Webhook 接受特定参数作为输入:日期、姓名、电话号码和预约的附加详细信息。
要设置此功能,我们将为工具定义“名称”和“描述”,使 LLM 能够识别何时应使用此功能。
要安排预约,该工具将向 Make.com 的 Webhook 发送 POST 请求。此 Webhook 将处理客户提供的信息,例如预约日期、姓名、电话号码和任何其他会议详细信息。我们将配置该工具以接受这些输入作为 Body 参数。
描述字段在指导 LLM 方面起着至关重要的作用,通过指定在对话过程中需要请求哪些信息。同样,每个 Body 参数必须包含详细描述,以指示 LLM 如何从客户那里收集所需的详细信息。例如,日期参数应格式化为标准日期格式。其他参数,例如客户的姓名、电话号码和会议详细信息,也将有相应的描述。这种细致的设置确保了 AI 代理和 Webhook 之间的数据传递顺畅准确,从而实现了无缝的调度过程。
在下一节中,我们将配置 Make.com 自动化,将其链接到 Webhook 并完成调度工作流程。
3、Make.com 自动化
Make.com 是一个强大的平台,用于通过连接不同的应用程序和服务来构建自动化工作流程,而无需编写代码。其灵活性和广泛的集成选项使其成为将 ElevenLabs 的 AI 代理与其他系统(如您的 Outlook 日历)链接的理想选择。在本节中,我们将设置一个 Make.com Webhook 以无缝处理预约安排。
3.1 设置 Make.com Webhook
自动化预约安排的第一步是在 Make.com 中设置一个 Webhook 模块。此 Webhook 作为来自 AI 代理的所有调度请求的入口点。触发后,它会处理输入数据——例如日期、客户姓名、电话号码和会议详细信息——并将其传递给工作流程以进行进一步操作。
- 添加自定义 Webhook 模块
登录 Make.com 并创建一个新场景。将自定义 Webhook 模块添加到场景中以处理来自 AI 代理的传入请求。 - 生成并复制 Webhook URL
添加模块后,Make.com 将生成一个唯一的 Webhook URL。复制此 URL 并将其粘贴到 AI 代理的工具设置中。这确保 AI 代理知道将调度数据发送到哪里。 - 定义数据映射
在 Webhook 设置中,单击“重新确定数据结构”并通过发送示例请求来测试 AI 代理。此步骤允许 Make.com 自动配置 Webhook 以识别和映射传入参数,包括日期、姓名、电话号码和会议详细信息。
测试 AI 代理并验证其安排预约的能力后,Webhook 将理解传入请求的结构。
3.2 连接到 Outlook 日历
现在 Webhook 已配置为接收数据,下一步是将其连接到你的 Outlook 日历。
- 添加 Microsoft 365 日历——创建事件模块
将 Microsoft 365 日历——创建事件模块添加到工作流程中。此模块将使用从 Webhook 接收的数据创建新的日历事件。 - 映射字段。
通过将 Webhook 参数映射到相应的事件字段来配置模块:
- 主题:使用 AI 代理提供的会议详细信息。
- 开始日期:分配会议的日期和时间。
- 结束日期:要计算结束时间(例如,一小时后),使用 addHours() 函数在开始时间上增加一小时。
- 正文内容:包括有关客户的附加信息,例如他们的姓名和电话号码。
一旦工作流程完全配置,激活 Make.com 中的场景以启用实时自动化。AI 代理现在已完全集成,能够直接将会议安排到您的日历中。此设置不仅简化了客户互动,还通过自动化重复任务节省了宝贵的时间。
4、将 AI 代理连接到 Twilio 电话号码
为了使 AI 代理通过电话号码访问,我们将其与 Twilio 集成,Twilio 是一个云通信平台,支持发送和接收语音通话和短信。通过将 Twilio 连接到 AI 代理,客户可以通过现实世界的电话与代理互动,提供无缝且实用的沟通渠道。
4.1 设置 Twilio 电话号码
- 创建账户
登录 Twilio 或创建一个新账户(如果您还没有)。 - 获取电话号码
导航到 Twilio 控制台中的电话号码部分,并购买一个支持语音功能的电话号码。Twilio 允许您选择本地号码或满足你业务需求的号码。 - 替代方案
如果你想在购买号码之前测试集成,Twilio 提供试用电话号码作为其试用账户的一部分。虽然此试用号码只能拨打已验证的号码,但它提供了一种免费且方便的方式来验证您的设置,然后再升级到付费号码。 - 管理您的电话号码
在电话号码部分,你现在可以看到你的账户 SID、Auth Token 和 Twilio 电话号码。你需要这些详细信息来将电话号码连接到你的 AI 代理。
4.2 将 Twilio 电话号码链接到 AI 代理
准备好 Twilio 电话号码后,下一步是将其链接到您的 AI 代理。返回 ElevenLabs 并导航到电话号码部分。在这里,您可以添加一个新电话号码并将其与你的 AI 代理关联。
只需输入 Twilio 电话号码的详细信息,并将其连接到你预先配置的 AI 代理即可完成设置。此集成确保拨打到该号码的来电直接路由到 AI 代理,从而为你的客户提供无缝的互动。
5、测试 AI 代理
一旦 AI 代理设置完成并连接到电话号码,就可以测试其功能了。拨打该电话号码与 AI 代理互动,并验证其是否按预期执行。
在测试过程中,检查 AI 代理是否准确收集了所需的数据,例如会议日期、客户姓名、电话号码和会议详细信息。确保这些数据被正确处理,并且会议成功创建在你的 Outlook 日历中。
如果出现任何问题,请使用 ElevenLabs 和 Make.com 中的调试工具来识别和解决错误。彻底测试可确保 AI 代理上线时为您的客户提供流畅可靠的体验。
6、结束语
使用 ElevenLabs 和 Make.com 创建客户支持语音机器人是一次令人着迷的体验,它挑战了我以不同的方式思考。作为一个重视编码灵活性和控制的人,我很欣赏这些工具如何让我快速构建一个功能性解决方案,同时仍然给我空间来定制和完善细节。
在短短几个步骤中,我拥有了一个能够安排会议、回答客户问题并以流畅逼真的语音处理现实世界电话的语音机器人。这提醒我,并非每个项目都需要从头开始——有时,利用这些工具可以节省时间而不影响质量。
如果你对语音技术感兴趣或希望简化某些工作流程,尝试将这些工具与传统编码结合使用可能会是一次大开眼界的体验。你可能会惊讶于可以多么快速地构建出有用的东西,同时仍然保留使其真正属于你的能力。
原文链接:How I Built a Customer Support Voicebot in No Time Using ElevenLabs, Make.com, and Twilio
汇智网翻译整理,转载请标明出处