跳到主要内容

创建聊天机器人

创建一个通用型的聊天机器人。


已废弃!

新版本即将推出。

聊天机器人是人工智能中最常见的应用场景之一。然而,有效地理解用户查询并做出适当的回应仍然是一个挑战。RAGFlow 的通用型聊天机器人试图解决这一长期存在的问题。

这个聊天机器人类似于在启动AI聊天中介绍的聊天机器人,但有一个关键的区别——它引入了一种反思机制,允许其通过重写用户的查询来改进从目标知识库中的检索过程。

本文档提供了使用我们的聊天机器人模板创建此类聊天机器人的指南。

先决条件

  1. 确保已正确设置了要使用的LLM。请参阅配置API密钥部署本地LLM的指南以获取更多信息。
  2. 确保您已经配置了知识库,并且相应的文件已正确解析。请参见配置知识库的指南以获取更多信息。
  3. 请阅读代理式检索简介

使用模板创建聊天机器人

要使用我们的模板创建一个通用型聊天机器人:

  1. 点击页面顶部中间的Agent选项卡,显示Agent页。
  2. 在页面右上角点击**+ 创建代理以显示代理模板**页。
  3. 代理模板页上,将鼠标悬停在General-purpose chatbot(通用型聊天机器人)卡片上,并点击使用此模板你现在被重定向到了无代码工作流编辑器页面。

workflow_editor

注意

RAGFlow的无代码编辑器省去了编程的麻烦,使得代理开发变得轻松自如。

理解模板中的每个组件

以下是聊天机器人模板中每个组件及其作用和要求的简要介绍:

  • Begin

    • 功能:为用户设置开场问候语。
    • 目的:营造一种欢迎氛围,并为用户的互动做好准备。
  • Interact

    • 功能:作为人类与机器人的接口。
    • 角色:作为Begin组件的下游部分。
  • Retrieval

    • 功能:从指定的知识库中检索信息。
    • 要求:必须设置好knowledgebases才能运行。
  • Relevant

    • 功能:评估Retrieval组件检索的信息与用户查询的相关性。
    • 过程:
      • 如果相关,它将数据导向到Generate组件以生成最终响应。
      • 否则,它会触发Rewrite组件来优化用户的查询,并重新执行检索过程。
  • Generate

    • 功能:提示LLM根据检索的信息生成响应。
    • 注意:提示设置允许您控制LLM生成响应的方式。请务必审查提示并进行必要的更改。
  • Rewrite

    • 功能:当从知识库中未检索到相关信息时,优化用户的查询。
    • 使用场景:通常与RelevantRetrieval一起使用,以创建反思/反馈循环。

配置您的聊天机器人代理

  1. 点击 开始 设置欢迎词: opener

  2. 点击 检索 选择合适的知识库并进行必要的调整: setting_knowledge_bases

  3. 点击 生成 来配置LLM的摘要行为: 3.1. 确认模型。 3.2. 查看提示设置。如果有变量,请确保它们与正确的组件ID匹配: prompt_settings

  4. 点击 相关 查看或更改其设置: 您可以保留当前设置,也可以尝试不同的设置以了解代理的工作方式。 relevant_settings

  5. 点击 重写 选择不同的模型进行查询重写或更新查询重写的最大循环次数: choose_model loop_time

注意

增加最大循环次数可能会显著延长接收最终响应所需的时间。

  1. 根据需要更新您的工作流程。

  2. 点击 保存 应用更改: 您的代理将出现在“代理”页面中的一个代理卡上。

测试您的聊天机器人代理

  1. 在“代理”页面找到您的聊天机器人代理: find_chatbot

  2. 使用不同的问题测试,以验证此聊天机器人的功能是否符合预期: test_chatbot