LangChain 工具集合指南
目录
1. 搜索工具 (Search Tools)
通用搜索
from langchain.tools import (
DuckDuckGoSearchRun,
GoogleSearchRun,
BingSearchRun,
WikipediaQueryRun,
)
专业搜索
from langchain.tools import (
ArXivQueryRun,
PubMedQueryRun,
SceneXplainTool,
SearxSearchRun,
)
2. 记忆工具 (Memory)
基础记忆
from langchain.memory import (
ConversationBufferMemory,
ConversationBufferWindowMemory,
ConversationTokenBufferMemory,
)
高级记忆
from langchain.memory import (
ConversationSummaryMemory,
ConversationSummaryBufferMemory,
ConversationKGMemory,
VectorStoreRetrieverMemory,
ConversationEntityMemory,
)
持久化记忆
from langchain.memory import (
FileChatMessageHistory,
RedisChatMessageHistory,
MongoDBChatMessageHistory,
)
3. 文档工具 (Document Loaders)
文本文档
from langchain.document_loaders import (
TextLoader,
UnstructuredTextLoader,
)
办公文档
from langchain.document_loaders import (
PyPDFLoader,
DocxLoader,
UnstructuredPowerPointLoader,
CSVLoader,
EverNoteLoader,
)
网页文档
from langchain.document_loaders import (
WebBaseLoader,
UnstructuredURLLoader,
PlaywrightURLLoader,
SeleniumURLLoader,
)
代码文档
from langchain.document_loaders import (
GitHubRepositoryLoader,
GitLoader,
NotionDirectoryLoader,
)
4. 数据库工具 (Database Tools)
SQL数据库
from langchain.utilities import SQLDatabase
向量数据库
from langchain.utilities import (
ChromaDB,
FAISS,
Pinecone,
Weaviate,
Milvus,
)
5. API工具 (API Tools)
基础API
from langchain.utilities import (
RequestsWrapper,
TextRequestsWrapper,
)
专业API
from langchain.utilities import (
OpenWeatherMapAPIWrapper,
WolframAlphaAPIWrapper,
SerpAPIWrapper,
TwitterAPIWrapper,
)
6. 代码和执行工具 (Code Tools)
代码执行
from langchain.tools import (
PythonREPLTool,
ShellTool,
CodeAnalyzerTool,
)
文件操作
from langchain.tools import (
FileManagementTool,
ReadFileTool,
WriteFileTool,
)
7. 多媒体工具 (Multimedia Tools)
图像处理
from langchain.tools import (
StableDiffusionTool,
ImageCaptionTool,
)
语音处理
from langchain.tools import (
TextToSpeechTool,
SpeechToTextTool,
)
8. 特殊用途工具 (Special Tools)
计算和时间
from langchain.tools import (
WolframAlphaQueryRun,
Calculator,
DatetimeTool,
)
9. 使用指南
安装依赖
pip install langchain[all]
环境配置
import os
os.environ["OPENAI_API_KEY"] = "你的OpenAI API密钥"
os.environ["SERPAPI_API_KEY"] = "你的SerpAPI密钥"
工具组合示例
from langchain.agents import initialize_agent, Tool
from langchain.chat_models import ChatOpenAI
llm = ChatOpenAI(temperature=0)
tools = [
Tool(
name="搜索",
func=DuckDuckGoSearchRun().run,
description="搜索互联网信息"
),
Tool(
name="Python执行",
func=PythonREPLTool().run,
description="执行Python代码"
),
Tool(
name="文件读取",
func=ReadFileTool().run,
description="读取文件内容"
)
]
agent = initialize_agent(
tools,
llm,
agent="zero-shot-react-description",
verbose=True
)
response = agent.run("查找并分析最新的Python版本特性")
注意事项
- 工具使用前请确认依赖已安装
- 注意API密钥的配置和安全性
- 关注API使用限制和成本
- 根据实际需求选择合适的工具组合
- 定期查看官方文档获取更新信息
参考资源