工具
RAG 工具
RagTool
是一个动态知识库工具,用于使用检索增强生成回答问题。
RagTool
描述
RagTool
旨在通过利用 EmbedChain 的检索增强生成 (RAG) 的强大功能来回答问题。它提供了一个动态知识库,可以查询该知识库以从各种数据源检索相关信息。该工具对于需要访问大量信息并提供上下文相关答案的应用程序特别有用。
示例
以下示例演示了如何初始化该工具并将其与不同数据源一起使用
代码
支持的数据源
RagTool
可以与多种数据源一起使用,包括
- 📰 PDF 文件
- 📊 CSV 文件
- 📃 JSON 文件
- 📝 文本
- 📁 目录/文件夹
- 🌐 HTML 网页
- 📽️ YouTube 频道
- 📺 YouTube 视频
- 📚 文档网站
- 📝 MDX 文件
- 📄 DOCX 文件
- 🧾 XML 文件
- 📬 Gmail
- 📝 GitHub 仓库
- 🐘 PostgreSQL 数据库
- 🐬 MySQL 数据库
- 🤖 Slack 对话
- 💬 Discord 消息
- 🗨️ Discourse 论坛
- 📝 Substack 新闻简报
- 🐝 Beehiiv 内容
- 💾 Dropbox 文件
- 🖼️ 图片
- ⚙️ 自定义数据源
参数
RagTool
接受以下参数
- summarize:可选。是否对检索到的内容进行总结。默认为
False
。 - adapter:可选。用于知识库的自定义适配器。如果未提供,将使用 EmbedchainAdapter。
- config:可选。底层 EmbedChain App 的配置。
添加内容
您可以使用 add
方法向知识库添加内容
代码
Agent 集成示例
这里是如何将 RagTool
与 CrewAI agent 集成
代码
高级配置
您可以通过提供配置字典来自定义 RagTool
的行为
代码
内部 RAG 工具利用了 Embedchain 适配器,您可以通过它传递 Embedchain 支持的任何配置选项。您可以参考 Embedchain 文档 获取详细信息。请务必查看 .yaml 文件中可用的配置选项。
结论
RagTool
提供了一种强大的方法,可以从各种数据源创建和查询知识库。通过利用检索增强生成 (RAG),它使 agent 能够高效地访问和检索相关信息,从而增强他们提供准确且上下文适当的响应的能力。