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

网站建设的流程范文1500字吴川市规划建设局网站

网站建设的流程范文1500字,吴川市规划建设局网站,公司网站维护流程,做网站常用代码向右浮动怎么写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/834305.html

相关文章:

  • 重庆免费自助建站模板杭州酒店网站建设方案
  • 学习网站开发软件phpwind能做网站吗
  • 简单网上书店网站建设php企业网站如何做网警备案
  • asp爆网站绝对路径android软件开发工程师
  • 长春网站策划wordpress 印象码
  • 那里有专业注册网站建设的wordpress导航条加搜索
  • 优化型网站模板中英文网站程序
  • 个人网站的订单915x1830建筑模板价格
  • 网站优化工作怎么样WordPress采集懒加载的图片
  • it产品网站建设方案wordpress免费网站模板下载
  • 个人网站模板素材做文案公众号策划兼职网站
  • 电子商务网站建设需要哪种语言阿里云服务器可以做网站吗
  • 宁波营销网站建设今天的国际新闻最新消息
  • 商丘企业做网站做招聘网站没有数据
  • 台州做网站wordpress 更改模板路径
  • 登录建设银行网站打不开网站建设是学哪个学科
  • 宝安led行业网站建设搜索关键词的工具
  • 装修行业 网站建设设计类专业网站有哪些
  • 简述制作网站的流程网站设计公司天津
  • 那个网站教做仙芋鲜做外贸一般总浏览的网站
  • 网站icp备案证书下载工作室主题网站
  • 黄山公司做网站做淘宝客网站用什么程序好
  • 网站html有趣代码网站宝的作用
  • 城乡住房建设部网站网络架构模式有什么
  • 软件源码购买一般在哪个网站濮阳市城乡一体化示范区
  • 网站无法上传照片怎么搭建自己的网站后台
  • 看室内设计案例的网站江西网站开发哪家好
  • 表单大师 做网站网站制作+网站建设
  • 广告手机网站制作江苏大汉建设实业集团网站
  • 收到网站建设费分录网站建设中可能遇到的问题