创建能够处理文件的聊天机器人
本教程将向您展示如何构建一个能够读取和回答您上传的文件内容问题的聊天机器人,例如会议记录或求职申请。
例如,您可以上传一份合同并询问:"这份协议中的终止条款是什么?"或者上传一份简历并询问:"这位候选人是否有营销分析方面的经验?"
本教程的主要重点是向您展示如何将文件作为输入提供给 Langflow 流程,使您的聊天机器人能够在其响应中使用这些文件的内容。
前提条件
本教程使用 OpenAI LLM。如果您想使用不同的提供商,您需要该提供商的有效凭据。
创建接受文件输入的流程
要处理文件,您的流程必须有一个 File 组件连接到接收输入的组件,例如 Prompt 或 Agent 组件。
以下步骤修改 基础提示 模板以接受文件输入:
-
在 Langflow 中,点击 New Flow,然后选择 Basic prompting 模板。
-
在 Language Model 组件中,输入您的 OpenAI API 密钥。
如果您想使用不同的提供商或模型,请相应地编辑 Model Provider、Model Name 和 API Key 字段。
-
要验证您的 API 密钥是否有效,请点击 Playground,然后向 LLM 提出问题。 LLM 应该根据 Prompt 组件的 Template 字段中的规范进行响应。
-
退出 Playground,然后修改 Prompt 组件以接受文件输入和聊天输入。 为此,请编辑 Template 字段,然后用以下文本替换默认提示:
_10ChatInput:_10{chat-input}_10File:_10{file}Prompt 组件为花括号中的每个值获得一个新的输入端口。此时,您的 Prompt 组件应该有 chat-input 和 file 输入端口。
提示在花括号内,您可以使用任何您喜欢的端口名称。在本教程中,端口以连接到它们的组件命名。
-
向流程添加一个 File 组件,然后将 Raw Content 输出端口连接到 Prompt 组件的 file 输入端口。 要连接端口,请从一个端口点击并拖拽到另一个端口。
您可以直接向文件组件添加文件以在运行流程之前预加载输入,或者您可以在运行时加载文件。本教程的下一部分涵盖运行时文件上传。
此时您的流程有五个组件。Chat Input 和 File 组件连接到 Prompt 组件的输入端口。然后,Prompt 组件的输出端口连接到 Language Model 组件的输入端口。最后,Language Model 组件的输出端口连接到 Chat Output 组件,该组件向用户返回最终响应。