TXT RAG 搜索
该工具用于在文本文件内容中执行 RAG(检索增强生成)搜索。
它允许针对指定文本文件的内容进行语义查询,
对于快速提取信息或根据提供的查询查找特定文本段落非常有价值。
要使用 TXTSearchTool,首先需要安装 crewai_tools 包。
你可以使用 Python 的包管理器 pip 来完成。
打开终端或命令提示符并输入以下命令:
pip install 'crewai[tools]'该命令会下载并安装 TXTSearchTool 以及所有必要的依赖项。
下面的示例演示如何使用 TXTSearchTool 搜索文本文件。
此示例展示了使用特定文本文件初始化工具,以及随后在该文件内容中进行搜索的过程。
from crewai_tools import TXTSearchTool
# 初始化工具,以搜索智能体在执行过程中了解到的任何文本文件内容tool = TXTSearchTool()
# 或者
# 使用特定文本文件初始化工具,# 这样智能体可以在给定的文本文件内容中进行搜索tool = TXTSearchTool(txt='path/to/text/file.txt')txt(str):可选。你要搜索的文本文件路径。
如果工具未使用特定文本文件初始化,则该参数才是必需的;
否则,搜索会在最初提供的文本文件中进行。
自定义模型与嵌入
Section titled “自定义模型与嵌入”默认情况下,该工具使用 OpenAI 进行嵌入和摘要。
你可以按如下方式使用配置字典来自定义模型:
from chromadb.config import Settings
tool = TXTSearchTool( config={ # 必需:嵌入提供方 + 配置 "embedding_model": { "provider": "openai", # 或 google-generativeai、cohere、ollama 等 "config": { "model": "text-embedding-3-small", # "api_key": "sk-...", # 如果环境变量已设置,则可选(例如 OPENAI_API_KEY 或 EMBEDDINGS_OPENAI_API_KEY) # 提供方示例: # Google → model_name: "gemini-embedding-001", task_type: "RETRIEVAL_DOCUMENT" # Cohere → model: "embed-english-v3.0" # Ollama → model: "nomic-embed-text" }, },
# 必需:向量数据库配置 "vectordb": { "provider": "chromadb", # 或 "qdrant" "config": { # Chroma 设置(可选持久化) # "settings": Settings( # persist_directory="/content/chroma", # allow_reset=True, # is_persistent=True, # ),
# Qdrant 向量参数示例: # from qdrant_client.models import VectorParams, Distance # "vectors_config": VectorParams(size=384, distance=Distance.COSINE),
# 注意:collection 名称由工具控制(默认:"rag_tool_collection")。 } }, })