当前位置: 首页 > wzjs >正文

长沙哪里有网站制作会网站开发想找兼职

长沙哪里有网站制作,会网站开发想找兼职,珠海网站制作外包,百度网站推广优化工具LangChain Agent Tools 参考文档 本文档详细介绍了LangChain框架中可用的Agent工具及其使用方法。这些工具可以赋予AI智能体与外部系统和服务交互的能力,从而构建功能更强大的应用程序。 目录 工具加载方法基础工具文件和系统工具搜索和信息检索工具语言模型增强…

LangChain Agent Tools 参考文档

本文档详细介绍了LangChain框架中可用的Agent工具及其使用方法。这些工具可以赋予AI智能体与外部系统和服务交互的能力,从而构建功能更强大的应用程序。

目录

  • 工具加载方法
  • 基础工具
  • 文件和系统工具
  • 搜索和信息检索工具
  • 语言模型增强工具
  • API和集成工具
  • 数据库工具
  • 浏览器和网页工具
  • AI服务工具
  • 办公和生产力工具
  • 人工交互工具
  • 工具集合(Toolkits)

工具加载方法

LangChain提供了两种主要方式来加载和使用工具:

1. 使用load_tools函数

from langchain_community.agent_toolkits import load_tools# 加载单个工具
tools = load_tools(["wikipedia"])# 加载多个工具
tools = load_tools(["wikipedia", "llm-math"], llm=llm)# 加载需要API密钥的工具
tools = load_tools(["google-search"], google_api_key="your_api_key", google_cse_id="your_cse_id")# 加载危险工具(需要特别允许)
tools = load_tools(["terminal"], allow_dangerous_tools=True)

2. 直接导入工具类

from langchain_community.tools.google_search import GoogleSearchRun
from langchain_community.utilities.google_search import GoogleSearchAPIWrapper# 创建API包装器
search = GoogleSearchAPIWrapper(google_api_key="your_api_key", google_cse_id="your_cse_id")# 创建工具实例
tool = GoogleSearchRun(api_wrapper=search)

获取所有可用工具名称

from langchain_community.agent_toolkits import get_all_tool_names
names = get_all_tool_names()
print(names)

基础工具

Sleep Tool (休眠工具)

描述:让程序暂停执行一段时间

参数:无特殊参数

用法

from langchain_community.agent_toolkits import load_toolstools = load_tools(["sleep"])

文件和系统工具

Terminal Tool (终端命令工具)

描述:执行shell/CMD/PowerShell命令的工具

注意:此工具被归类为危险工具,因为它可以执行任意系统命令

参数

  • allow_dangerous_tools=True:必须明确允许使用危险工具

用法

from langchain_community.agent_toolkits import load_tools# 方法1: 使用load_tools
tools = load_tools(["terminal"], allow_dangerous_tools=True)# 方法2: 直接导入
from langchain.tools.shell.tool import ShellTool
shell_tool = ShellTool()# 执行命令
result = shell_tool.run("dir")  # Windows
result = shell_tool.run("ls -la")  # Linux/Mac
result = shell_tool.run("powershell -Command Get-Process")  # PowerShell

File Management Toolkit (文件管理工具集)

描述:提供文件系统操作功能的工具集

包含的工具

  • ReadFileTool - 读取文件内容
  • WriteFileTool - 写入文件
  • ListDirectoryTool - 列出目录内容
  • CopyFileTool - 复制文件
  • DeleteFileTool - 删除文件
  • MoveFileTool - 移动文件
  • FileSearchTool - 搜索文件

参数

  • root_dir:(可选) 限制文件操作的根目录,默认为当前工作目录

用法

from langchain_community.agent_toolkits import load_tools# 方法1: 使用load_tools
tools = load_tools(["file-management"])# 方法2: 使用工具集
from langchain_community.agent_toolkits import FileManagementToolkit
toolkit = FileManagementToolkit(root_dir="./data")
tools = toolkit.get_tools()# 方法3: 单独使用工具
from langchain_community.tools.file_management import ReadFileTool, WriteFileTool
read_tool = ReadFileTool()
write_tool = WriteFileTool()

搜索和信息检索工具

Wikipedia (维基百科搜索)

描述:从维基百科搜索和获取信息

参数

  • top_k_results:(可选) 返回的最大结果数,默认为2

用法

from langchain_community.agent_toolkits import load_tools# 方法1: 使用load_tools
tools = load_tools(["wikipedia"])# 方法2: 直接导入
from langchain_community.tools.wikipedia.tool import WikipediaQueryRun
from langchain_community.utilities.wikipedia import WikipediaAPIWrapper
wikipedia_tool = WikipediaQueryRun(api_wrapper=WikipediaAPIWrapper())

Google Search (谷歌搜索)

描述:使用Google搜索引擎进行搜索

参数

  • google_api_key:Google API密钥
  • google_cse_id:Google自定义搜索引擎ID
  • top_k_results:(可选) 返回的最大结果数,默认为4

注册

  • Google Custom Search API: https://developers.google.com/custom-search/v1/introduction
  • 创建自定义搜索引擎: https://programmablesearchengine.google.com/

用法

from langchain_community.agent_toolkits import load_tools# 方法1: 使用load_tools
tools = load_tools(["google-search"], google_api_key="your_api_key", google_cse_id="your_cse_id"
)# 方法2: 直接导入
from langchain_community.tools.google_search import GoogleSearchRun
from langchain_community.utilities.google_search import GoogleSearchAPIWrapper
search = GoogleSearchAPIWrapper(google_api_key="your_api_key", google_cse_id="your_cse_id")
google_tool = GoogleSearchRun(api_wrapper=search)

Bing Search (必应搜索)

描述:使用Bing搜索引擎进行搜索

参数

  • bing_subscription_key:Bing API密钥
  • bing_search_url:(可选) Bing搜索API URL

注册

  • Bing Search API: https://www.microsoft.com/en-us/bing/apis/bing-web-search-api

用法

from langchain_community.agent_toolkits import load_tools# 方法1: 使用load_tools
tools = load_tools(["bing-search"], bing_subscription_key="your_api_key")# 方法2: 直接导入
from langchain_community.tools.bing_search import BingSearchRun
from langchain_community.utilities.bing_search import BingSearchAPIWrapper
bing_api = BingSearchAPIWrapper(bing_subscription_key="your_api_key")
bing_tool = BingSearchRun(api_wrapper=bing_api)

DuckDuckGo Search (DuckDuckGo搜索)

描述:使用DuckDuckGo搜索引擎进行搜索,不需要API密钥

参数:无特殊参数

用法

from langchain_community.agent_toolkits import load_tools# 方法1: 使用load_tools
tools = load_tools(["ddg-search"])# 方法2: 直接导入
from langchain_community.tools.ddg_search import DuckDuckGoSearchRun
ddg_tool = DuckDuckGoSearchRun()

SerpAPI (搜索引擎结果API)

描述:通过SerpAPI获取搜索引擎结果

参数

  • serpapi_api_key:SerpAPI密钥

注册

  • SerpAPI: https://serpapi.com/

用法

from langchain_community.agent_toolkits import load_toolstools = load_tools(["serpapi"], serpapi_api_key="your_api_key")

Arxiv (arXiv论文查询)

描述:搜索和获取arXiv上的学术论文

参数

  • top_k_results:(可选) 返回的最大结果数,默认为3

用法

from langchain_community.agent_toolkits import load_tools# 方法1: 使用load_tools
tools = load_tools(["arxiv"])# 方法2: 直接导入
from langchain_community.tools.arxiv.tool import ArxivQueryRun
arxiv_tool = ArxivQueryRun()

PubMed (医学文献查询)

描述:搜索和获取PubMed上的医学文献

参数

  • top_k_results:(可选) 返回的最大结果数,默认为3

用法

from langchain_community.agent_toolkits import load_toolstools = load_tools(["pubmed"])

Tavily Search (Tavily搜索)

描述:使用Tavily API搜索网络信息

参数

  • tavily_api_key:Tavily API密钥
  • max_results:(可选) 返回的最大结果数,默认为5

注册

  • Tavily: https://tavily.com/

用法

from langchain.tools.tavily_search import TavilySearchResults
tavily_tool = TavilySearchResults(tavily_api_key="your_api_key")

语言模型增强工具

LLM Math (LLM数学计算)

描述:利用语言模型解决数学问题

参数

  • llm:语言模型实例,必需

用法

from langchain_community.agent_toolkits import load_tools
from langchain_openai import ChatOpenAIllm = ChatOpenAI(model="gpt-3.5-turbo")
tools = load_tools(["llm-math"], llm=llm)

PAL (程序辅助语言模型)

描述:程序辅助语言模型,用于解决复杂问题

参数

  • llm:语言模型实例,必需
  • pal_type:(可选) PAL类型,如"math"或"colored_objects"

用法

from langchain_community.agent_toolkits import load_tools
from langchain_openai import ChatOpenAIllm = ChatOpenAI(model="gpt-3.5-turbo")
tools = load_tools(["pal-math"], llm=llm)

API和集成工具

Requests Tools (HTTP请求工具)

描述:发送HTTP请求的工具集,包括GET、POST、PUT、PATCH、DELETE方法

注意:这些工具被归类为危险工具,因为它们可以发送任意HTTP请求

参数

  • allow_dangerous_tools=True:必须明确允许使用危险工具

用法

from langchain_community.agent_toolkits import load_tools# 加载所有HTTP请求工具
tools = load_tools(["requests_get","requests_post","requests_put","requests_patch", "requests_delete"
], allow_dangerous_tools=True)# 或者只加载GET请求工具
tools = load_tools(["requests_get"], allow_dangerous_tools=True)

Wolfram Alpha (Wolfram Alpha计算引擎)

描述:使用Wolfram Alpha计算引擎进行计算和获取知识

参数

  • wolfram_alpha_appid:Wolfram Alpha App ID

注册

  • Wolfram Alpha API: https://developer.wolframalpha.com/

用法

from langchain_community.agent_toolkits import load_toolstools = load_tools(["wolfram-alpha"], wolfram_alpha_appid="your_app_id")

OpenWeatherMap (天气查询API)

描述:获取实时天气和预报信息

参数

  • openweathermap_api_key:OpenWeatherMap API密钥

注册

  • OpenWeatherMap API: https://openweathermap.org/api

用法

from langchain_community.agent_toolkits import load_toolstools = load_tools(["openweathermap-api"], openweathermap_api_key="your_api_key")

GraphQL (GraphQL查询工具)

描述:执行GraphQL查询的工具

参数

  • graphql_endpoint:GraphQL端点URL
  • headers:(可选) HTTP请求头

用法

from langchain_community.agent_toolkits import load_toolstools = load_tools(["graphql"], graphql_endpoint="https://your-graphql-endpoint.com")

Twilio (短信服务)

描述:发送SMS短信的工具

参数

  • twilio_account_sid:Twilio账户SID
  • twilio_auth_token:Twilio认证令牌

注册

  • Twilio: https://www.twilio.com/

用法

from langchain_community.agent_toolkits import load_toolstools = load_tools(["twilio"], twilio_account_sid="your_sid", twilio_auth_token="your_token"
)

数据库工具

SQL Database Toolkit (SQL数据库工具集)

描述:提供SQL数据库操作功能的工具集

包含的工具

  • QuerySQLDataBaseTool - 执行SQL查询
  • InfoSQLDatabaseTool - 获取数据库信息
  • ListSQLDatabaseTool - 列出数据库表
  • QueryCheckerTool - 检查SQL查询

参数

  • db:SQLAlchemy数据库连接对象

用法

from langchain_community.agent_toolkits import SQLDatabaseToolkit
from langchain_community.utilities import SQLDatabase# 连接数据库
db = SQLDatabase.from_uri("sqlite:///chinook.db")# 创建工具集
toolkit = SQLDatabaseToolkit(db=db)
tools = toolkit.get_tools()

Vector Store Tools (向量存储工具)

描述:用于向量数据库检索的工具

包含的工具

  • VectorStoreQATool - 问答工具
  • VectorStoreQAWithSourcesTool - 带来源的问答工具

参数

  • vectorstore:向量存储实例

用法

from langchain.tools.vectorstore import VectorStoreQATool
from langchain_openai import OpenAIEmbeddings
from langchain.vectorstores import FAISS
from langchain_openai import ChatOpenAI# 创建向量存储
embeddings = OpenAIEmbeddings()
vectorstore = FAISS.from_texts(["文本1", "文本2"], embeddings)# 创建工具
llm = ChatOpenAI(model="gpt-3.5-turbo")
vector_tool = VectorStoreQATool.from_llm(llm, vectorstore)

浏览器和网页工具

PlayWright Browser Toolkit (浏览器自动化工具集)

描述:基于Playwright的浏览器自动化工具集

包含的工具

  • NavigateTool - 导航到URL
  • ExtractTextTool - 提取网页文本
  • ExtractHyperlinksTool - 提取链接
  • GetElementsTool - 获取HTML元素
  • ClickTool - 点击元素
  • CurrentWebPageTool - 获取当前页面信息

用法

from langchain_community.agent_toolkits import PlayWrightBrowserToolkit
from langchain_community.utilities.playwright import PlaywrightBrowser# 创建浏览器实例
browser = PlaywrightBrowser()# 创建工具集
toolkit = PlayWrightBrowserToolkit.from_browser(browser)
tools = toolkit.get_tools()

AI服务工具

DALL-E (图像生成)

描述:使用OpenAI DALL-E生成图像

参数

  • openai_api_key:OpenAI API密钥

注册

  • OpenAI API: https://platform.openai.com/

用法

from langchain_community.agent_toolkits import load_toolstools = load_tools(["dalle-image-generator"], openai_api_key="your_api_key")

ElevenLabs Text2Speech (文本转语音)

描述:使用ElevenLabs将文本转换为逼真的语音

参数

  • eleven_api_key:ElevenLabs API密钥

注册

  • ElevenLabs: https://elevenlabs.io/

用法

from langchain_community.agent_toolkits import load_toolstools = load_tools(["eleven-labs-text2speech"], eleven_api_key="your_api_key")

Google Cloud Text-to-Speech (谷歌云文本转语音)

描述:使用Google Cloud将文本转换为语音

参数

  • google_cloud_credentials_json:GCP凭证JSON文件路径

注册

  • Google Cloud: https://cloud.google.com/text-to-speech

用法

from langchain_community.agent_toolkits import load_toolstools = load_tools(["google-cloud-texttospeech"], google_cloud_credentials_json="path/to/credentials.json"
)

办公和生产力工具

Gmail Toolkit (Gmail工具集)

描述:操作Gmail邮箱的工具集

包含的工具

  • GmailSearch - 搜索邮件
  • GmailGetMessage - 获取邮件内容
  • GmailGetThread - 获取邮件线程
  • GmailSendMessage - 发送邮件
  • GmailCreateDraft - 创建草稿

参数

  • credentials_path:(可选) Google API凭证JSON文件路径
  • token_path:(可选) Google API令牌文件路径

用法

from langchain_community.agent_toolkits import GmailToolkittoolkit = GmailToolkit(credentials_path="credentials.json")
tools = toolkit.get_tools()

Office 365 Toolkit (Office 365工具集)

描述:操作Microsoft 365服务的工具集

包含的工具

  • O365SearchEmails - 搜索邮件
  • O365SendMessage - 发送邮件
  • O365CreateDraftMessage - 创建草稿
  • O365SearchEvents - 搜索日历事件
  • O365SendEvent - 创建日历事件

用法

from langchain_community.agent_toolkits import O365Toolkit
from O365 import Account# 设置Office 365账户
credentials = ('client_id', 'client_secret')
account = Account(credentials)
account.authenticate()# 创建工具集
toolkit = O365Toolkit(account=account)
tools = toolkit.get_tools()

Jira Toolkit (Jira工具集)

描述:操作Jira项目管理软件的工具集

参数

  • jira_api_token:Jira API令牌
  • jira_username:Jira用户名
  • jira_instance_url:Jira实例URL

注册

  • Jira API: https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/

用法

from langchain_community.agent_toolkits import JiraToolkit
from langchain_community.utilities.jira import JiraAPIWrapperjira = JiraAPIWrapper(jira_api_token="your_api_token",jira_username="your_username",jira_instance_url="https://your-domain.atlassian.net"
)toolkit = JiraToolkit(jira_api_wrapper=jira)
tools = toolkit.get_tools()

人工交互工具

Human Input Tool (人类输入工具)

描述:请求人类用户提供输入的工具

参数:无特殊参数

用法

from langchain_community.agent_toolkits import load_toolstools = load_tools(["human"])

工具集合(Toolkits)

LangChain提供了多个工具集合(Toolkits),每个工具集包含多个相关工具:

FileManagementToolkit

文件管理工具集,包含文件读写、目录列表等功能

OpenAPIToolkit

基于OpenAPI规范自动生成API工具

JsonToolkit

处理JSON数据的工具集

SQLDatabaseToolkit

SQL数据库操作工具集

PlayWrightBrowserToolkit

基于Playwright的浏览器自动化工具集

GmailToolkit

Gmail操作工具集

O365Toolkit

Office 365操作工具集

JiraToolkit

Jira项目管理工具集

AINetworkToolkit

AI Network区块链平台工具集

ZapierToolkit

Zapier集成工具集

SparkSQLToolkit

Spark SQL查询工具集

PowerBIToolkit

Microsoft Power BI工具集

使用示例

创建一个使用多种工具的智能体

from langchain_community.agent_toolkits import load_tools
from langchain.agents import initialize_agent, AgentType
from langchain_openai import ChatOpenAI# 创建语言模型
llm = ChatOpenAI(model="gpt-3.5-turbo")# 加载工具
tools = load_tools(["wikipedia","llm-math","ddg-search"],llm=llm
)# 创建智能体
agent = initialize_agent(tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION,verbose=True
)# 运行智能体
agent.run("谁是现任法国总统?他的年龄是多少?")

使用多个工具集合

from langchain_openai import ChatOpenAI
from langchain_community.agent_toolkits import FileManagementToolkit, PlayWrightBrowserToolkit
from langchain_community.utilities.playwright import PlaywrightBrowser
from langchain.agents import initialize_agent, AgentType# 创建语言模型
llm = ChatOpenAI(model="gpt-3.5-turbo")# 创建文件管理工具集
file_toolkit = FileManagementToolkit()
file_tools = file_toolkit.get_tools()# 创建浏览器工具集
browser = PlaywrightBrowser()
browser_toolkit = PlayWrightBrowserToolkit.from_browser(browser)
browser_tools = browser_toolkit.get_tools()# 合并工具
all_tools = file_tools + browser_tools# 创建智能体
agent = initialize_agent(all_tools, llm, agent=AgentType.STRUCTURED_CHAT_ZERO_SHOT_REACT_DESCRIPTION,verbose=True
)# 运行智能体
agent.run("""
请访问https://news.baidu.com,抓取今日头条新闻,
并将结果保存到'news.txt'文件中
""")

注意事项

  1. 安全性:某些工具(如ShellTool和RequestsTool)可以执行任意命令或发送请求,使用时应特别注意安全问题

  2. API密钥:许多工具需要API密钥,请确保妥善保管这些凭证

  3. 费用:某些第三方服务可能会收取使用费,请在使用前了解相关费用

  4. 权限:使用工具集合时,请确保你的应用程序具有适当的权限

  5. 依赖项:某些工具可能需要额外的依赖项,请确保安装所需的包

http://www.dtcms.com/wzjs/576032.html

相关文章:

  • 网站被黑 禁止js跳转湖南长沙理工大学
  • 家里做网站买什么服务器好wordpress那个版本
  • 有教做点心的网站吗田贝网站建设
  • 云服务器搭建个人网站wordpress v5.0
  • 网站备案 暂住证公司网页制作模板图片
  • 泉州大型网站设计公司有强大seo功能的wordpress模板
  • 比较有设计感的网站佛山 做网站公司
  • 网站建设中忽略的字体违法行为网站设计排名网站
  • vs中做网站设置背景图片怎么把网站制作成安卓
  • 网站开发系统的可行性研究报告苏州手机网站建设多少钱
  • 对网站建设的具体想法简单的网站制作代码
  • 天津 网站 备案国内最新新闻资讯
  • 意大利做包招工的网站国内网页设计公司前十名
  • 青海工程建设云网站深圳高端画册设计
  • 网站建设实训心得phpwordpress用户名长度
  • 网站建设h5 招聘苏州住房建设局网站
  • 做再生料的网站高德地图切换国外
  • 深圳市顺建建设工程有限公司网站济南品质网站建设哪家好
  • 小程序建站工具北京注册公司地址新规定
  • 如何建设盈利网站做好一个网站后
  • 营销网站建设评估与分析郑州app开发网站建设
  • 江都城乡建设局网站什么叫做网络营销
  • 长春免费做网站html电影网站模板下载工具
  • 网页设计师学习网站重庆市建设工程信息网施工许可证查询
  • 直播网站app开发seo网络推广师招聘
  • 自适应网站建设价格株洲网上房地产
  • 一个完整的网站怎么做wordpress常规地址改错了怎么办
  • 湛江网站设计软件北京设计网站的公司哪家好
  • 石家庄市市政建设工程公司网站怎样建网站得花多少钱
  • 大城 网站建设百度明星搜索量排行榜