Ultralytics YOLO27: 加入候补名单。
获取 YOLO 许可
返回 Ultralytics 术语表

LangChain

LangChain 是一个开源框架,可通过可替换的模型、工具、检索器和中间件构建 LLM 应用和智能体。

LangChain 是一个开源框架,用于基于大型语言模型(LLM)构建应用和 AI 智能体。它为各个模型提供商提供统一的消息、聊天模型、工具和检索器接口,因此应用只需更改模型名称,就能从一个提供商的模型切换到另一个提供商的模型;它还提供现成的智能体循环,以及与向量存储、文档加载器和 API 的数百种集成。Harrison Chase 于 2022 年 10 月将 LangChain 作为开源 Python 项目发布,比 ChatGPT 上线早了几周;它随后成为最广泛使用的工具包之一,可将提示、检索和模型调用串联起来,构建生成式 AI应用。LangChain 1.0 和 LangGraph 1.0 于 2025 年 10 月 22 日一同发布,并承诺在 2.0 版本之前不引入破坏性变更。

LangChain 生态系统#

如今,这个名称涵盖一系列可用于 Python 和 JavaScript 的软件包:

  • langchain:以 create_agent 为核心的智能体框架;它接收一个模型、一组工具和一条系统提示,并返回一个可运行的智能体。
  • langchain-core 和集成包:为聊天模型、消息、嵌入、检索器和工具提供标准接口;此外还有 langchain-openai 和 langchain-anthropic 等用于实现这些接口的提供商软件包。
  • LangGraph:LangChain 智能体运行其上的底层运行时。它将程序建模为由共享状态连接的一系列步骤组成的图,并可在每一步后对状态创建检查点,使长时间运行的任务能够经受重启,也能暂停以等待人工批准。
  • LangSmith:提供托管平台,用于查看可观测性追踪记录、在数据集上进行智能体评估,以及部署智能体。

经典的 LangChain 应用由链构成:填入用户输入的提示模板、模型调用和输出解析器;这些组件可通过管道语法组合,就像提示链一样。最常见的链是检索增强生成(RAG):它加载文档,将文档拆分为文本块,把文本块的嵌入存入向量数据库,再将与每个问题最匹配的文本块加入模型的上下文窗口。

LangChain 智能体的运行方式#

使用 create_agent 构建的智能体会循环调用模型和工具,这与每个智能体运行框架执行的函数调用循环相同。中间件会挂接到每个步骤,以改变模型周围的处理过程:内置中间件可以总结较长的历史记录、隐藏个人数据,并在选定工具运行前暂停以等待人工批准。

为 LangChain 智能体添加视觉能力#

LangChain 的 @tool 装饰器会将 Python 函数转换为工具,从函数签名中读取参数类型,并从文档字符串中读取描述。这样封装 Ultralytics YOLO26,就能为智能体提供目标检测能力;Results.summary() 会将每项检测的类别名称、置信度和边界框作为模型可读取的数据返回:

from langchain_core.tools import tool
from langchain_core.utils.function_calling import convert_to_openai_tool
from ultralytics import YOLO

model = YOLO("yolo26n.pt")


@tool
def detect_objects(image_url: str) -> list[dict]:
    """Detect objects in an image and return each one's class name, confidence, and box."""
    results = model(image_url)
    return results[0].summary()


# LangChain 根据签名和文档字符串推导出的架构,也就是模型接收的内容
print(convert_to_openai_tool(detect_objects))

# 智能体使用模型工具调用中的参数运行该工具
detections = detect_objects.invoke({"image_url": "https://ultralytics.com/images/bus.jpg"})
print(detections[0]["name"], detections[0]["confidence"])

第一条打印结果展示了函数定义:其中包含一个 image_url 字符串参数,文档字符串则充当描述;LangChain 会将这些内容发送给模型。第二条展示了工具返回的第一项检测结果。将 tools=[detect_objects] 传给 create_agent,即可让任何受支持的聊天模型通过预测模式调用检测器。

  • 智能体工作流:LangGraph 图和 LangChain 智能体所实现的通用设计模式,例如路由、工具使用和评估器循环。
  • 提供商 SDK:直接调用模型提供商的 API 无需框架,适合只使用单个模型的应用。应用涉及多个模型、工具或数据源时,LangChain 提供的统一接口、集成和智能体循环就能发挥作用。
  • DSPy:一个能自动编写并优化多步骤 LLM 程序提示的框架,可根据示例数据上的某项指标调整提示。
  • LlamaIndex:专注于摄取、索引和查询私有数据以实现 RAG 的框架。两者功能有所重叠,应用通常会在 LangChain 或 LangGraph 智能体内部使用 LlamaIndex 进行检索。

探索解决方案

体育领域的计算机视觉

体育领域的计算机视觉

了解 Ultralytics YOLO 如何通过球员和球追踪、表现分析、教练洞察及运动员康复,推动体育视觉技术的发展。
了解详情
航空影像计算机视觉

航空影像计算机视觉

使用 Ultralytics YOLO 将无人机和航空影像转化为农业、水产养殖、保护工作和地理空间分析的实时洞察。
了解详情
航空航天中的计算机视觉

航空航天中的计算机视觉

使用 Ultralytics YOLO 将计算机视觉应用于航空航天领域,包括飞机检查、跑道 FOD 检测、机场地面作业和复合材料缺陷检测。
了解详情
安防领域的计算机视觉

安防领域的计算机视觉

使用 Ultralytics YOLO 模型守护每个场所。视觉 AI 可用于周界监控、威胁检测、车牌识别和工作场所安全。
了解详情
机器人领域的计算机视觉

机器人领域的计算机视觉

使用 Ultralytics YOLO 模型提升智能机器的能力。机器人领域的视觉 AI 可用于自主导航、感知、目标跟踪和实时控制。
了解详情
物流中的计算机视觉

物流中的计算机视觉

借助 Ultralytics YOLO 模型优化物流流程。视觉 AI 可用于包裹检查、分拣、车辆跟踪和仓库安全实时监控。
了解详情
零售中的计算机视觉

零售中的计算机视觉

借助 Ultralytics YOLO 模型重新构想零售。视觉 AI 可用于库存跟踪、货架监控、排队管理和更深入的客户洞察。
了解详情
医疗领域的计算机视觉

医疗领域的计算机视觉

借助 Ultralytics YOLO 模型构建医疗解决方案。医疗领域的视觉 AI 可加快医学影像处理、优化诊断并监测患者。
了解详情
制造业中的计算机视觉

制造业中的计算机视觉

利用 Ultralytics YOLO 模型优化制造流程。视觉 AI 可用于质量控制、缺陷检测、个人防护装备合规检查和装配线自动化。
了解详情
汽车领域的计算机视觉

汽车领域的计算机视觉

利用 Ultralytics YOLO 模型在汽车领域应用计算机视觉。视觉 AI 可提升道路安全、驾驶辅助和车辆自动化水平,让道路更智能。
了解详情
农业中的计算机视觉

农业中的计算机视觉

借助 Ultralytics YOLO 模型,将视觉 AI 引入智慧农业。为作物监测、牲畜追踪和精准农业提供支持,从而提高产量并实现更智能的生产。
了解详情

让我们携手构建 AI 的未来!

开启你的旅程,迎接机器学习的未来