You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在LangChain Agent中使用本地PDF文档替代Wikipedia工具

如何将本地PDF集成到LangChain Agent中替代Wikipedia工具

要把本地PDF替换原有Wikipedia工具接入Agent,需要完成文档处理→向量存储→创建检索工具→集成Agent这几个步骤,具体实现如下:

1. 加载并拆分PDF文档

加载PDF后,直接用大段文本无法高效检索,需要先拆分成语义连贯的小片段:

from langchain.document_loaders import PyPDFium2Loader
from langchain.text_splitter import RecursiveCharacterTextSplitter

# 加载PDF
loader = PyPDFium2Loader("hunter-350-dual-channel.pdf")
data = loader.load()

# 拆分文档(可根据PDF内容调整chunk_size和chunk_overlap)
text_splitter = RecursiveCharacterTextSplitter(
    chunk_size=1000,
    chunk_overlap=200,
    length_function=len
)
split_docs = text_splitter.split_documents(data)

2. 创建向量存储与检索工具

将拆分后的文档存入向量数据库,再封装成Agent可调用的检索工具:

from langchain.vectorstores import Chroma
from langchain.embeddings import OpenAIEmbeddings  # 也可替换为本地开源embedding模型
from langchain.tools.retriever import create_retrieval_tool

# 初始化embedding模型(需配置OpenAI API密钥,或替换如HuggingFaceEmbeddings)
embeddings = OpenAIEmbeddings()

# 创建向量存储
vector_store = Chroma.from_documents(documents=split_docs, embedding=embeddings)

# 创建检索工具,指定工具名称和描述(Agent会根据描述判断何时调用)
retriever_tool = create_retrieval_tool(
    vector_store.as_retriever(),
    name="pdf_document_retriever",
    description="用于查询本地PDF文档中的信息,回答关于文档内容的因果关系、技术参数等问题"
)

3. 替换原有工具并初始化Agent

把原来的Wikipedia工具换成刚创建的PDF检索工具,然后初始化Agent运行:

from langchain.agents import initialize_agent, AgentType

# 替换工具列表,只保留PDF检索工具
tools = [retriever_tool]

# 初始化Agent(保持原有Agent类型和参数,仅替换tools)
agent = initialize_agent(
    tools,
    llm,
    agent=AgentType.CHAT_ZERO_SHOT_REACT_DESCRIPTION,
    handle_parsing_errors=True,
    verbose=False
)

# 执行查询
out = agent(f"Does {var_1} cause {var_2} or the other way around?.")
print(out['output'])

关键注意事项

  • 如果使用本地开源embedding模型(如BAAI/bge-small-en-v1.5),需替换OpenAIEmbeddings为HuggingFaceEmbeddings,并配置模型路径。
  • 调整chunk_size和chunk_overlap时,需兼顾检索精度和效率:PDF内容专业术语多可减小chunk_size,通用内容可适当增大。
  • 工具描述要清晰明确,Agent会根据描述决定是否调用该工具,模糊的描述可能导致Agent无法正确触发检索。

内容的提问来源于stack exchange,提问作者merkle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 01:33:12