我们构建了自己的文档 AI 聊天机器人,该机器人经过 Blue 平台文档的训练。
在 Blue,我们始终在寻找让客户生活更轻松的方法。我们提供了每个功能的深入文档、YouTube 视频、提示与技巧以及各种支持渠道。
我们一直密切关注 AI(人工智能)的发展,因为我们非常关注项目管理自动化。我们还发布了AI 自动分类和AI 摘要等功能,以便为我们的数千名客户简化工作。
有一点是明确的:AI 将会长期存在,并且将在大多数行业中产生巨大的影响,项目管理也不例外。因此,我们问自己如何进一步利用 AI 来帮助客户的整个生命周期,从发现、售前、入职到持续的问题。
答案非常明确:我们需要一个经过我们文档训练的 AI 聊天机器人。
面对现实:每个组织都应该拥有一个聊天机器人。它们是客户获取典型问题即时答案的绝佳方式,而无需翻阅密集文档或您网站的页面。聊天机器人在现代营销网站中的重要性不容小觑。
对于软件公司而言,营销网站不应被视为一个独立的“事物”——它是您产品的一部分。这是因为它符合典型客户生命周期的各个阶段:
- 意识(发现):这是潜在客户首次偶然发现您出色产品的地方。您的聊天机器人可以成为他们的友好向导,立即指引他们了解关键功能和优势。
- 考虑(教育):现在他们充满好奇,想要了解更多。您的聊天机器人成为他们的个人导师,提供针对他们特定需求和问题的信息。
- 购买/转化:这是关键时刻——当潜在客户决定下定决心成为客户时。您的聊天机器人可以消除任何最后时刻的障碍,回答那些“我买之前”的问题,甚至可能提供一个优惠来促成交易。
- 入职:他们已经购买了,接下来呢?您的聊天机器人转变为一个有用的助手,引导新用户完成设置,教他们如何使用,并确保他们不会在您产品的奇妙世界中迷失。
- 留存:让客户满意是游戏的关键。您的聊天机器人全天候待命,随时准备解决问题,提供提示和技巧,并确保您的客户感受到关怀。
- 扩展:是时候升级了!您的聊天机器人可以巧妙地建议新功能、追加销售或交叉销售,这些都与客户已经使用您产品的方式相一致。就像有一个非常聪明、不强势的销售人员随时待命。
- 倡导:满意的客户成为您最大的支持者。您的聊天机器人可以鼓励满意的用户传播口碑、留下评价或参与推荐计划。就像在您的产品中内置了一个宣传机器!
自建与购买的决策
一旦我们决定实施 AI 聊天机器人,下一个大问题就是:自建还是购买?作为一个专注于核心产品的小团队,我们通常更倾向于“即服务”解决方案或流行的开源平台。毕竟,我们并不想为技术栈的每个部分重新发明轮子。
因此,我们卷起袖子,深入市场,寻找付费和开源的 AI 聊天机器人解决方案。
我们的要求简单明了,但不可妥协:
- 无品牌体验:这个聊天机器人不仅仅是一个可有可无的小部件;它将出现在我们的营销网站上,并最终在我们的产品中。我们不想在自己的数字资产中宣传其他人的品牌。
- 优秀的用户体验:对于许多潜在客户而言,这个聊天机器人可能是他们与 Blue 的第一次接触。它为他们对我们公司的认知定下基调。面对现实:如果我们无法在网站上做好一个合适的聊天机器人,我们怎么能指望客户信任我们处理他们的关键项目和流程?
- 合理的成本:考虑到庞大的用户基础和将聊天机器人集成到我们核心产品的计划,我们需要一个不会随着使用量增加而让我们破产的解决方案。理想情况下,我们希望有一个BYOK(自带密钥)选项。这将允许我们使用自己的 OpenAI 或其他 AI 服务密钥,支付直接的可变成本,而不是向不实际运行模型的第三方供应商支付加价。
- 兼容 OpenAI 助手 API:如果我们要选择开源软件,我们不想麻烦地管理文档摄取、索引、向量数据库等管道。我们希望使用OpenAI 助手 API,它将所有复杂性抽象为一个 API。老实说——这做得非常好。
- 可扩展性:我们希望在多个地方使用这个聊天机器人,可能每年有数万名用户。我们预期会有大量使用,我们不想被锁定在一个无法满足我们需求的解决方案中。
商业 AI 聊天机器人
我们审查的那些通常比开源解决方案具有更好的用户体验——不幸的是,这种情况经常发生。或许有一天可以单独讨论一下为什么许多开源解决方案忽视或轻视用户体验的重要性。
我们在这里提供一个列表,以防您在寻找一些可靠的商业产品:
- Chatbase:Chatbase 允许您构建一个基于您的知识库训练的自定义 AI 聊天机器人,并将其添加到您的网站或通过他们的 API 进行交互。它提供可靠的答案、潜在客户生成、先进的分析以及连接多个数据源的能力。对我们来说,这感觉像是市场上最精致的商业产品之一。
- DocsBot AI:DocsBot AI 创建基于您的文档和内容训练的自定义 ChatGPT 机器人,用于支持、售前、研究等。它提供可嵌入的小部件,方便将聊天机器人轻松添加到您的网站,能够自动回复支持票,并提供强大的 API 进行集成。
- CustomGPT.ai:CustomGPT.ai 通过摄取您的业务数据(包括网站内容、帮助台、知识库、文档等)创建个性化的聊天机器人体验。它允许潜在客户提问并根据您的内容获得即时答案,而无需搜索。有趣的是,他们还声称在 RAG(检索增强生成)基准测试中击败了 OpenAI!
- OpenAssistantGPT:这是一个有趣的商业产品,因为它也是开源软件。它似乎还处于早期阶段,定价也不太现实(每月 $27 的无限消息在商业上是行不通的)。
我们还查看了InterCom Fin,这是他们客户支持软件的一部分。这意味着我们需要放弃自 Blue 开始使用的HelpScout。这可能是可行的,但 InterCom Fin 的定价非常疯狂,直接将其排除在考虑范围之外。
而这实际上是许多商业产品的问题。InterCom Fin 每处理一个客户支持请求收费 $0.99,而 ChatBase 每月收费 $399,提供 40,000 条消息。这几乎是每年 $5,000 的简单聊天小部件。
考虑到 AI 推理的价格正在迅速下降。OpenAI 的价格大幅降低:
- 原始的 GPT-4(8k 上下文)定价为每 1K 提示令牌 $0.03。
- GPT-4 Turbo(128k 上下文)定价为每 1K 提示令牌 $0.01,比原始 GPT-4 降低了 50%。
- GPT-4o 模型定价为每 1K 令牌 $0.005,比 GPT-4 Turbo 的定价进一步降低了 50%。
这意味着成本降低了 83%,我们不期望这种情况会停滞不前。
考虑到我们正在寻找一个可扩展的解决方案,每年将有数万名用户使用,并且消息量巨大,直接去源头支付 API 成本是合理的,而不是使用商业版本来加价。
开源 AI 聊天机器人
如前所述,我们审查的开源选项在“优秀用户体验”要求方面大多令人失望。
我们查看了:
- Deepchat:这是一个与框架无关的 AI 服务聊天组件,连接到各种 AI API,包括 OpenAI。它还允许用户下载直接在浏览器中运行的 AI 模型。我们尝试了这个并使其工作,但实现的 OpenAI 助手 API 感觉相当不稳定,存在多个问题。然而,这是一个非常有前景的项目,他们的游乐场做得非常好。
- OpenAssistantGPT:从开源的角度再次查看这个,我们需要建立相当多的基础设施,这不是我们想要的,因为我们希望尽可能依赖 OpenAI 的助手 API。
自建聊天机器人
因此,在找不到符合我们所有要求的解决方案后,我们决定构建自己的 AI 聊天机器人,以便与 OpenAI 助手 API 进行接口。最终,这个过程相对轻松!
我们的网站使用Nuxt3、Vue3(与 Blue 平台使用的框架相同)和TailwindUI。
第一步是在 Nuxt3 中创建一个可以与 OpenAI 助手 API “对话”的 API(应用程序编程接口)。这是必要的,因为我们不想在前端完成所有操作,这样会将我们的 OpenAI API 密钥暴露给全世界,潜在地被滥用。
我们的后端 API 充当用户浏览器与 OpenAI 之间的安全中介。它的功能如下:
- 对话管理:它为每个对话创建和管理“线程”。将线程视为一个独特的聊天会话,记住您所说的一切。
- 消息处理:当您发送消息时,我们的 API 将其添加到正确的线程,并请求 OpenAI 的助手生成响应。
- 智能等待:我们的 API 每秒与 OpenAI 检查一次,以查看您的响应是否准备好,而不是让您盯着加载屏幕。这就像有一个服务员在关注您的订单,而不必每两秒就打扰一次厨师。
- 安全第一:通过在服务器上处理所有这些,我们确保您的数据和我们的 API 密钥安全无虞。
然后是前端和用户体验。如前所述,这一点至关重要,因为我们没有第二次机会给人留下第一印象!
在设计我们的聊天机器人时,我们非常注重用户体验,确保每次交互都流畅、直观,并反映出 Blue 对质量的承诺。聊天机器人界面以一个简单、优雅的蓝色圆圈开始,使用HeroIcons 的图标(我们在整个 Blue 网站中使用)作为我们的聊天机器人开启小部件。这个设计选择确保了视觉一致性和即时的品牌识别。
我们理解,有时用户可能需要额外的支持或更深入的信息。这就是为什么我们在聊天机器人界面中包含了便捷的链接。支持的电子邮件链接随时可用,允许用户直接联系团队以获得更个性化的帮助。此外,我们还加入了文档链接,为那些希望深入了解 Blue 产品的人提供更全面的资源。
用户体验还通过打开聊天机器人窗口时的优雅淡入和淡出动画得到了进一步提升。这些微妙的动画为界面增添了一丝精致感,使互动感觉更加动态和引人入胜。我们还实现了输入指示器,这是一个小但至关重要的功能,让用户知道聊天机器人正在处理他们的查询并生成响应。这个视觉提示有助于管理用户期望,并保持活跃的沟通感。
认识到某些对话可能需要更多的屏幕空间,我们增加了在更大窗口中打开对话的功能。这个功能对于较长的交流或查看详细信息特别有用,使用户能够根据需要灵活调整聊天机器人。
在后台,我们实施了一些智能处理,以优化聊天机器人的响应。我们的系统会自动解析 AI 的回复,去除对我们内部文档的引用,确保呈现的信息干净、相关,专注于解决用户的查询。
为了增强可读性并允许更细致的沟通,我们使用 'marked' 库实现了 markdown 支持。这个功能使我们的 AI 能够提供丰富格式的文本,包括粗体和斜体强调、结构化列表,甚至在必要时提供代码片段。这就像在回答您的问题时收到一份格式良好的定制迷你文档。
最后但同样重要的是,我们在实施中优先考虑了安全性。使用 DOMPurify 库,我们对从 markdown 解析生成的 HTML 进行清理。这个关键步骤确保在内容显示给您之前,任何潜在的有害脚本或代码都被剔除。这是我们确保您收到的信息不仅有用而且安全的方式。
未来发展
所以这只是一个开始,我们在这个功能的路线图上有一些令人兴奋的事情。
我们即将推出的一个功能是实时流式响应的能力。很快,您将看到聊天机器人的回复逐字出现,使对话感觉更加自然和动态。这就像看着 AI 思考,创造出一种更引人入胜和互动的体验,让您在每一步都保持参与。
对于我们尊贵的 Blue 用户,我们正在开发个性化功能。聊天机器人将识别您何时登录,基于您的账户信息、使用历史和偏好定制其响应。想象一下,一个不仅回答您的问题,还理解您在 Blue 生态系统中具体上下文的聊天机器人,提供更相关和个性化的帮助。
我们理解您可能正在处理多个项目或有各种查询。这就是为什么我们正在开发与聊天机器人保持多个独立对话线程的能力。这个功能将允许您在不同主题之间无缝切换,而不会失去上下文——就像在浏览器中打开多个标签页一样。
为了使您的互动更加高效,我们正在创建一个功能,根据您当前的对话提供建议的后续问题。这将帮助您更深入地探索主题,发现您可能没有想到要询问的相关信息,使每次聊天会话更加全面和有价值。
我们还对创建一套专门的 AI 助手感到兴奋,每个助手都针对特定需求量身定制。无论您是想回答售前问题、设置新项目还是故障排除高级功能,您都可以选择最符合您当前需求的助手。这就像在您指尖拥有一支 Blue 专家团队,每个专家专注于我们平台的不同方面。
最后,我们正在努力让您直接向聊天上传截图。AI 将分析图像并根据所见提供解释或故障排除步骤。这个功能将使您在使用 Blue 时遇到特定问题时更容易获得帮助,弥合视觉信息与文本辅助之间的差距。
结论
我们希望这次对我们 AI 聊天机器人开发过程的深入探讨为您提供了一些关于我们在 Blue 的产品开发思维的宝贵见解。从识别聊天机器人的需求到构建我们自己的解决方案的旅程展示了我们如何进行决策和创新。
在 Blue,我们仔细权衡自建与购买的选项,始终关注什么将最有利于我们的用户并与我们的长期目标保持一致。在这种情况下,我们发现市场上存在一个显著的缺口,即缺乏一种具有成本效益且视觉吸引力的聊天机器人,能够满足我们的特定需求。虽然我们通常倡导利用现有解决方案而不是重新发明轮子,但有时前进的最佳路径是创建一些量身定制的东西。
我们决定自建聊天机器人并非轻率之举。这是经过彻底市场调研、对我们需求的清晰理解以及对为用户提供最佳体验的承诺的结果。通过内部开发,我们能够创建一个不仅满足我们当前需求的解决方案,还为未来的增强和集成奠定基础。
这个项目体现了我们在 Blue 的方法:当为我们的产品和用户做出正确选择时,我们不怕卷起袖子从头开始构建。正是这种愿意付出额外努力的态度,使我们能够提供真正满足客户需求的创新解决方案。
我们对我们的 AI 聊天机器人的未来以及它将为潜在和现有的 Blue 用户带来的价值感到兴奋。随着我们继续完善和扩展其功能,我们将继续致力于推动项目管理和客户互动的可能性边界。
感谢您与我们一起踏上这段开发过程的旅程。我们希望这让您一窥我们在 Blue 的每个方面所采取的深思熟虑、以用户为中心的方法。请继续关注更多更新,因为我们将继续发展和增强我们的平台,以更好地为您服务。
如果您感兴趣,可以在这里找到该项目的源代码链接:
- ChatWidget:这是驱动聊天小部件本身的 Vue 组件。
- Chat API:这是在聊天组件与 OpenAI 助手 API 之间工作的中间件。