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

LangChain 提供的搜素工具SerpAPIWrapper介绍

SerpAPIWrapper 概述

SerpAPIWrapper 是LangChain Community​ 提供的实用工具,用于通过SerpAPI​ 获取结构化搜索结果(如Google、Bing​ 等),屏蔽底层 HTTP 请求与结果解析细节,便于在LangChain 智能体/链​ 中直接作为搜索能力使用。它支持自定义搜索引擎、地区与语言等参数,返回内容可按需加工为纯文本或结构化片段,适合问答、检索增强与自动化工作流。

安装与配置

  • 安装依赖

    • 建议安装包含 SerpAPI 客户端的包:pip install google-search-results

  • 设置密钥

    • SERPAPI_API_KEY​ 配置为环境变量,或在构造器中显式传入

    • 示例:os.environ["SERPAPI_API_KEY"] = "your_api_key"

  • 导入方式

    • 推荐导入路径:from langchain_community.utilities import SerpAPIWrapper

  • 最小可用示例

    • from langchain_community.utilities import SerpAPIWrapper

    • search = SerpAPIWrapper()

    • print(search.run("Obama's first name?")) # -> 简洁答案字符串

核心用法

  • 基本搜索

    • 直接调用run(query)​ 执行查询,返回经过处理的答案字符串(非原始 JSON)

  • 自定义引擎与参数

    • 通过params​ 指定搜索引擎与地区/语言等,例如使用Bing、设置gl=ushl=en

    • 示例:

      • params = {"engine": "bing", "gl": "us", "hl": "en"}

      • search = SerpAPIWrapper(params=params)

  • 作为工具整合到 LangChain

    • 可包装为Tool​ 供智能体调用,或配合load_tools(["serpapi"])​ 使用(旧式 Agents)

    • 示例:

      • from langchain_core.tools import Tool

      • tool = Tool(name="web_search", func=search.run, description="使用 SerpAPI 执行网页搜索")

  • 结果加工与扩展

    • 通过继承并重写_process_response​ 定制返回内容(如提取answer_box、knowledge_graph、organic_results​ 等片段,或只返回链接/摘要)

常见问题与建议

  • 访问与网络

    • 部分地区访问SerpAPI​ 可能不稳定,可评估使用合规的API 代理/加速​ 方案;同时优先排查密钥与网络连通性

  • 配额与限流

    • 免费/入门套餐存在调用配额与速率限制,必要时升级套餐或在调用间加入延迟/退避​ 策略

  • 参数正确性

    • 自定义参数需与SerpAPI 文档保持一致(如engine、gl、hl​ 等),否则可能导致结果不符合预期

  • 结果格式

    • run()​ 返回的是已处理的字符串;如需原始 JSON 或细粒度字段,请基于包装器进行二次封装或在子类中调整_process_response

  • 密钥安全

    • 避免硬编码密钥,推荐使用环境变量​ 或密钥管理服务进行注入

相关替代方案

  • GoogleSerperAPIWrapper + Serper API:面向Google​ 搜索的低成本替代,同样可在 LangChain 中作为工具使用,适合问答与摘要场景

  • GoogleSearchAPIWrapper / BingSearchAPIWrapper:分别封装Google Custom Search API​ 与Bing Search API,在需要直连官方搜索 API 时可选

http://www.cnnetsun.cn/news/2661.html

相关文章:

  • c语言 ---static关键字
  • ChatTTS x OpenVoice安装模型下载失败?一招搞定
  • 手残党狂喜!ChatTTS-OpenVoice保姆级教程
  • 猴子爬山od
  • 期末算法题
  • 宝济药业港股上市:上半年亏1.8亿 大涨超100% 市值189亿港元
  • 世纪华通子公司投摩尔线程:预计第四季后者贡献净利6.4亿
  • 空中云汇宣布完成G轮3.3亿美元融资 估值80亿美元
  • 海光信息合并中科曙光交易终止:中科曙光跌停 市值仍超1300亿
  • 摩尔线程大涨17%:公司市值3455亿 美团浮盈超2亿
  • 陌陌母公司挚文季报图解:营收26.5亿 净利3.5亿同比降22%
  • 京东购得香港中环办公楼层 刚完成并购香港佳宝食品超级市场
  • 百奥赛图科创板上市:预计年营收13.5亿 大涨120% 市值超290亿
  • 一起教育科技第三季营收2000万:同比降66% 运营亏损4660万
  • LVMH大中华区总裁吴越加入泡泡玛特董事会 何愚退出
  • 跨时空双世虐恋来袭《双面公子我渡劫》火爆上线!古装×现代双线并行,极致拉扯引爆整个冬天!
  • 简易图书系统MySQL数据库转达梦数据库
  • 需求如何变成应用系统中的功能(之一)--银保监处罚案例查询系统
  • AI职场简历优化建议工具,核心功能,用户上传简历文字,程序分析简历中的亮点和不足,给出优化建议,如关键词补充,排版调整。
  • 老年书法绘画作品展示平台,核心功能,上传书法,绘画作品,设置作品介绍,支持点赞,评论,分享,举办线上作品展。应用场景,中老年人展示自己的才艺,互相交流学习,获得成就感。
  • C与C++核心区别深度解析笔记
  • 【期末复习01】--算法题ProgramDesign
  • 价值流与流程的区别:别让“伪敏捷“毁了你的运维体系
  • 服务价值链管理:为什么90%的运维团队都在“瞎忙“?
  • 服务价值体系落地后为何“雷声大雨点小“?深度剖析实施效果不佳的根本原因
  • 服务请求管理的双重挑战:标准化流程与个性化需求如何共存?
  • 什么是AI Agent ? AI Agent:赋予机器“生命“的三大核心能力
  • 基于Python的在线考试系统【2026最新】
  • 基于Python的高校后勤报修系统【2026最新】
  • 向海而生:未来港口海岛低空经济的系统架构与游戏规则