使用LangChain和GPT-3构建一个透明的文档问答机器人
使用LangChain和GPT-3构建文档问答机器人
开发一个展示使用的信息来源的问答机器人指南
问答系统在分析大量数据或文档时非常有帮助。然而,模型用于生成答案的来源(即文档的部分)通常不会在最终答案中显示。
了解回答的上下文和来源不仅对于寻求准确信息的用户有价值,也对于希望不断改进他们的问答机器人的开发者有价值。通过在答案中包含来源,开发者可以深入了解模型的决策过程,促进迭代改进和微调。
本文介绍如何使用 LangChain 和 GPT-3(text-davinci-003)创建一个透明的问答机器人,显示生成答案所使用的来源,通过两个示例来说明。
在第一个示例中,您将学习如何创建一个透明的问答机器人,利用您网站的内容来回答问题。在第二个示例中,我们将探讨使用不同 YouTube 视频的转录,包括带有时间戳和不带时间戳的情况。
处理数据并创建向量存储
在利用像 GPT-3 这样的语言模型的能力之前,我们需要以正确的格式(首先是块,然后是嵌入)处理文档(例如网站内容或 YouTube 转录)并将其存储在向量存储中。下图显示了从左到右的处理流程。
网站内容示例
在这个示例中,我们将处理专注于开源技术,特别是 Linux 的网站 It’s FOSS 的内容。
首先,我们需要获取我们希望处理并存储在向量存储中的所有文章的列表。下面的代码读取包含所有文章链接的 sitemap-posts.xml 文件。