用例(User Case)
抽取(Extraction)
索引(Index)

结构化输出提取

概述

大型语言模型(LLM)正在成为一种极其强大的技术,用于驱动信息提取应用。

信息提取的经典解决方案依赖于人力、(大量)手工编写的规则(例如正则表达式)以及定制的微调机器学习模型。

这类系统往往会随时间变得复杂,维护成本越来越高,增强也越来越困难。

LLM 只需向它们提供适当的指令和适当的参考示例,就能快速适应特定的提取任务。

本指南将向你展示如何使用 LLM 进行提取应用!

方法

使用 LLM 进行信息提取大致有 3 种方法:

  • 工具/函数调用(Tool/Function Calling) 模式:一些 LLM 支持 工具或函数调用 模式。这些 LLM 可以根据给定的 模式(schema) 来组织输出。通常,这种方法最易于使用,并有望取得良好效果。

  • JSON 模式:一些 LLM 可以被强制输出有效的 JSON。这与 工具/函数调用 方法类似,区别在于模式是作为提示的一部分提供的。一般而言,我们的直觉是它比 工具/函数调用 方法表现更差,但别只信我们,请针对你自己的用例进行验证!

  • 基于提示(Prompting Based):能够很好遵循指令的 LLM 可以被指示以所需格式生成文本。生成的文本可以下游使用现有的 输出解析器 或 自定义解析器 解析为 JSON 等结构化格式。这种方法可用于 不支持 JSON 模式或工具/函数调用模式的 LLM。这种方法适用范围更广,尽管效果可能不如针对提取或函数调用微调过的模型。

快速开始

前往 快速开始,了解如何使用 LLM 通过一个基本的端到端示例来提取信息。

该快速开始侧重使用 工具/函数调用 方法进行信息提取。

操作指南

  • 使用参考示例:了解如何使用 参考示例 来提高性能。
  • 处理长文本:如果文本无法放入 LLM 的上下文窗口,该怎么办?
  • 处理文件:使用 LangChain 文档加载器和解析器从 PDF 等文件进行提取的示例。
  • 使用解析方法:使用基于提示的方法,配合不支持 工具/函数调用 的模型进行提取。

指南

前往 指南 页面,查看一系列关于如何为提取用例获得最佳性能的独到指南。

用例加速器

langchain-extract (opens in a new tab) 是一个入门仓库,实现了一个简单的 Web 服务器,用于从文本和文件中使用 LLM 提取信息。它使用 FastAPI、LangChain 和 Postgresql 构建。你可以随意将其适配到你自己的用例。

其他资源