langextract

从杂乱文本中精准抽取结构化数据,并可视化追溯来源

langextract 是一个 Python 库,旨在利用大型语言模型从非结构化文本中提取结构化信息,并具备精确的源定位和交互式可视化能力。它解决了传统文本提取方法中信息定位不准确、结果难以验证和解释的问题。核心能力包括:基于 LLM 的智能抽取,支持自定义抽取模式;提供源文本与抽取结果的精确映射,确保可追溯性;内置交互式可视化界面,便于用户审查和调整提取结果。该库设计简洁,易于集成到现有数据处理流程中,适用于文档解析、知识图谱构建、数据清洗等多种场景。

开源 free 开源模型
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 38643
维护状态 活跃
是否开源 是
定价模式 free

项目数据

分类开源模型
开发团队google
所属国家
官网地址
定价模式free
价格说明开源Python库,Apache-2.0许可证,完全免费,可自行部署使用。
访问状态
是否开源是
开源协议Apache-2.0
主要语言Python
技术栈/模型gemini,gemini-ai,gemini-api,gemini-flash,gemini-pro,information-extration,large-language-models,llm,nlp,python,structured-data
GitHub 星标★ 38643
30天Star增速
HF 下载量
上线时间2025-07-08 00:00:00
最近更新2026-09-22 00:00:00
维护状态活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数2

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 7 步

环境要求

  • Python 环境(README 的 CI 覆盖 Python 3.10 和 3.11)
  • 使用 Gemini 等云端模型时需要一个 API Key
  • 可选:本机已安装并运行 Ollama 以使用本地模型(如 gemma2:2b)
  • 可选:使用 Docker 方式时需要 Docker

安装与启动步骤

  1. 1获取项目源码

    从 GitHub 克隆仓库并进入项目目录,后续安装命令需在仓库根目录执行。

    git clone https://github.com/google/langextract.git
    cd langextract
  2. 2安装库

    在仓库根目录执行可编辑安装,README 给出的基础安装方式即为此命令。

    pip install -e .
  3. 3安装测试依赖(可选)

    需要跑测试时再安装 test 附加依赖,普通使用可跳过这一步。

    pip install -e ".[test]"
  4. 4配置 API Key

    使用 Gemini 等云端模型必须设置 API Key,环境变量名为 LANGEXTRACT_API_KEY;本地模型无需。

    export LANGEXTRACT_API_KEY="your-api-key"
  5. 5运行抽取脚本

    编写脚本调用 lx.extract,传入文本、提示词、示例和 model_id,默认推荐 gemini-3.5-flash。

    python your_script.py
  6. 6Docker 方式运行

    也可先构建镜像,再通过 -e 传入 API Key 运行自己的脚本,无需本地安装依赖。

    docker build -t langextract .
    docker run --rm -e LANGEXTRACT_API_KEY="your-api-key" langextract python your_script.py
  7. 7运行测试验证

    用 pytest 跑测试,或用 tox 在 Python 3.10/3.11 上复现完整 CI 流程。

    pytest tests

关键配置

配置项必填说明示例
LANGEXTRACT_API_KEY是云端模型(Gemini/OpenAI)调用所需的 API Key;本地模型可不设your-api-key
model_id是传给 lx.extract 的模型标识,决定使用哪个 LLM 进行抽取gemini-3.5-flash
text_or_documents是待抽取的输入文本或文档input_text
prompt_description是描述你要抽取什么信息的提示词prompt
examples否少样本示例,用于约束抽取格式与内容examples
output_schema否枚举值等高级约束;Gemini 与 OpenAI 支持,可配合或不配合示例output_schema

如何确认成功

执行 pytest tests 全部通过,或运行脚本后成功返回 lx.extract 的抽取结果(含源文本定位)。

常见问题

Q:没有 API Key 能用吗?

A:可以。本地或设备端模型不需要 API Key,LangExtract 内置支持 Ollama,也可通过修改推理端点接入其他第三方 API。

Q:该选哪个模型?

A:默认推荐 gemini-3.5-flash;量大或在意成本可用稳定的 Flash-Lite(gemini-3.1-flash-lite);复杂推理任务可评估 Gemini Pro。

Q:生产环境频繁被限流怎么办?

A:建议升级到付费 Gemini 套餐以提升吞吐并避免速率限制,具体可参考官方 rate-limit 文档。

Q:怎么测试 Ollama 集成?

A:先确保本机运行 Ollama 并准备好 gemma2:2b 模型,再执行 tox -e ollama-integration,测试会自动检测 Ollama 是否可用。

Q:如何复现官方 CI?

A:在项目根目录执行 tox,会在 Python 3.10 和 3.11 上运行 pylint 与 pytest。

注意事项

  • 云端模型必须配置 API Key,本地模型则不需要。
  • Gemini 模型有生命周期和退役日期,长期项目请关注官方模型版本文档。
  • 大批量或生产使用建议付费套餐,避免触发速率限制。
  • 代码风格工具可直接运行:isort langextract tests --profile google --line-length 80 与 pyink langextract tests --config pyproject.toml。

核心亮点

  • 精确的源定位:每个抽取结果都绑定原文片段,方便验证和纠错
  • 交互式可视化:内置界面直观展示抽取逻辑,降低调试成本
  • 灵活的模式定义:支持自定义抽取规则,适配多种业务场景

不足之处

  • 依赖 LLM API,可能产生较高调用成本
  • 文档/社区待观察

适用场景

  • 从合同、报告中提取关键字段并溯源
  • 构建知识图谱时从非结构化文本抽取实体关系
  • 数据清洗中标准化非结构化文本为结构化记录

替代项目

LangChain、Haystack、spaCy

项目介绍

langextract 是搜索知识领域的开源项目,由 google 开发,2025 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(38,643)位列前 1%,在搜索知识分类的 585 个项目里位列前 2%。

近 41 天,它的 GitHub 星标从 38,315 增加到 38,643,净增 328。

项目目前处于活跃维护状态,最近一次代码更新于 2026-09-22。开源Python库,Apache-2.0许可证,完全免费,可自行部署使用。

它主要面向的使用场景是:从合同、报告中提取关键字段并溯源。同类可对比的替代方案包括 LangChain、Haystack、spaCy。

上一篇:OpenSearch-VL

下一篇:pandas-ai

同类项目推荐

firecrawl 开源

网页抓取像喝水一样简单,开发者省下整周加班

The web data API to search, scrape, and interact at scale.

★ 183325 2026-08-09
contoso-chat 开源

一键跑通 Azure RAG 应用,从代码到评估部署全流程

This sample has the full End2End process of creating RAG application with Prompty an···

★ 766 2026-08-09
graphify 开源

整个代码库画成一张图,找问题一眼定位

Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable k···

★ 120493 2026-08-09
ragflow 开源

让大模型用上你的私有知识,搭建可靠的企业级RAG应用

RAGFlow is a leading open-source Retrieval-Augmented Generation (RAG) engine that fu···

★ 91170 2026-08-09