你在考虑开发聊天机器人吗? 在本教程中,我们将引导你完成使用 Embedchain 框架构建 ChatBot 的步骤。 Embedchain 库提供了用于开发可针对不同领域进行定制的聊天机器人的适应性基础设施。 在本课程中,我们将集中精力开发Audi聊天机器人。 我们将详细介绍安装 Embedchain 库、设置 OpenAI API 密钥、构建聊天机器人实例、为其提供训练资源,以及向聊天机器人询问问题以获得答案。
NSDT工具推荐:?Three.js AI纹理开发包?-?YOLO合成数据生成器?-?GLTF/GLB在线编辑?-?3D模型格式在线转换?-?可编程3D场景编辑器?-?REVIT导出3D模型插件?-?3D模型语义搜索引擎?
首先,我们需要安装 Embedchain 库,它提供了创建 ChatBot 所需的工具。 在 Jupyter Notebook 中打开代码单元并运行以下命令来安装库:
!pip install -q embedchain
接下来,我们需要设置 OpenAI API 密钥。 借助 API 密钥,我们可以访问 OpenAI 提供的强大语言模型。 我们可以从不同的模块导入 API 密钥,或者显式地将其分配为环境变量来设置 API 密钥。 以下是如何使用导入的模块设置 API 密钥的说明:
import os
import key
os.environ['OPENAI_API_KEY'] = key.OPENAI_API_KEY
确保将?key.OPENAI_API_KEY
?替换为你的 OpenAI API 密钥的实际值。
在此步骤中,我们从 Embedchain 库导入必要的模块,并选择我们要创建的 ChatBot 类型。 Embedchain 中提供三种类型的 ChatBot:App(使用 OpenAI 模型,付费)、OpenSourceApp(使用开源模型,免费)和 PersonApp(使用 OpenAI 模型,付费)。
现在,让我们使用 Embedchain 库中的 App 类创建 ChatBot 的实例:
Audi_ChatBot = App()
为了使我们的聊天机器人知识渊博并能够回答问题,我们需要使用相关资源对其进行培训。 Embedchain 库允许我们嵌入在线和本地资源。 以下是如何嵌入在线资源的示例:
Audi_ChatBot.add("youtube_video", "https://www.youtube.com/watch?v=LmjdUjvJL1E")
Audi_ChatBot.add("web_page", "https://www.audiusa.com/us/web/en/models/a3/a3/2023/overview.html")
在本例中,我们嵌入了与 Audi A3 相关的 YouTube 视频和网页 URL。 这将为聊天机器人提供响应用户查询的信息。
我们还可以嵌入本地资源,例如 PDF 文件。 这是一个例子:
Audi_ChatBot.add_local("pdf_file", "/content/data/2020-audi-a3-24.pdf")
这会将本地 PDF 文件添加到 ChatBot 的培训资源中。
现在我们的聊天机器人已经训练完毕,我们可以通过提出问题并获得答复来与它进行交互。 让我们看一个如何查询 ChatBot 并接收响应的示例:
result = Audi_ChatBot.query("What can adaptive cruise control do?")
print(result)
在此示例中,我们向 ChatBot 询问奥迪车辆自适应巡航控制的功能。 ChatBot 将分析查询并根据其训练过的嵌入式资源提供响应。
完整代码如下:
# Step 1: Install the Embedchain library
!pip install -q embedchain
# Step 2: Set the OpenAI API Key
import os
import key
os.environ['OPENAI_API_KEY'] = key.OPENAI_API_KEY
# Step 3: Import the necessary modules
from embedchain import App
# Step 4: Create a ChatBot instance
Audi_ChatBot = App()
# Step 5: Train the ChatBot with resources
Audi_ChatBot.add("youtube_video", "https://www.youtube.com/watch?v=LmjdUjvJL1E")
Audi_ChatBot.add("web_page", "https://www.audiusa.com/us/web/en/models/a3/a3/2023/overview.html")
Audi_ChatBot.add_local("pdf_file", "/content/data/2020-audi-a3-24.pdf")
# Step 6: Query the ChatBot
result = Audi_ChatBot.query("What can adaptive cruise control do?")
print(result)