主题
代码文档 RAG 搜索
CodeDocsSearchTool是一个强大的 RAG(检索增强生成)工具,专为在代码文档中进行语义搜索而设计。
CodeDocsSearchTool
NOTE
实验性:我们仍在改进工具,因此未来可能会出现意外行为或变更。
描述
CodeDocsSearchTool 是一个强大的 RAG(检索增强生成)工具,专为在代码文档中进行语义搜索而设计。 它使用户能够在代码文档中高效地查找特定信息或主题。通过在初始化时提供 docs_url, 该工具会将搜索范围缩小到那个特定的文档站点。或者,在没有特定 docs_url 的情况下, 它会在执行过程中已知或发现的大量代码文档中进行搜索,使其适用于各种文档搜索需求。
安装
要开始使用 CodeDocsSearchTool,首先通过 pip 安装 crewai_tools 包:
shell
pip install 'crewai[tools]'示例
按如下方式使用 CodeDocsSearchTool 在代码文档中执行搜索:
python
from crewai_tools import CodeDocsSearchTool
# To search any code documentation content
# if the URL is known or discovered during its execution:
tool = CodeDocsSearchTool()
# OR
# To specifically focus your search on a given documentation site
# by providing its URL:
tool = CodeDocsSearchTool(docs_url='https://docs.example.com/reference')NOTE
将 'https://docs.example.com/reference' 替换为你的目标文档 URL 并将 '如何使用搜索工具' 替换为与你的需求相关的搜索查询。
参数
以下参数可用于自定义 CodeDocsSearchTool 的行为:
| 参数 | 类型 | 描述 |
|---|---|---|
| docs_url | string | 可选。指定要搜索的代码文档 URL。 |
自定义模型和嵌入
默认情况下,该工具使用 OpenAI 进行嵌入和摘要。要自定义模型,你可以使用如下配置字典:
python
tool = CodeDocsSearchTool(
config=dict(
llm=dict(
provider="ollama", # or google, openai, anthropic, llama2, ...
config=dict(
model="llama2",
# temperature=0.5,
# top_p=1,
# stream=true,
),
),
embedder=dict(
provider="google-generativeai", # or openai, ollama, ...
config=dict(
model_name="gemini-embedding-001",
task_type="RETRIEVAL_DOCUMENT",
# title="Embeddings",
),
),
)
)