这个项目能做什么

LangExtract 是一款 Python 库,利用大型语言模型根据用户定义指令从非结构化文本文档中提取结构化信息。它适用于临床笔记或报告等材料,识别并组织关键细节,同时确保提取的数据与源文本对应。 README 中描述的关键功能: - 精确来源锚定:每次提取都映射到源文本中的确切字符范围,支持视觉高亮以实现可追溯性和验证。无法在源中定位的提取项将获得 char_interval = None,可被过滤。 - 可靠的结构化输出:输出模式由少样本示例驱动,Gemini 等模型支持受控生成。 - 长文档处理:文本分块、并行处理和多次提取旨在提高大型文档的召回率。 - 交互式可视化:生成自包含的交互式 HTML 文件,用于在原始上下文中审查提取的实体。 - 灵活的模型支持:支持 Google Gemini 系列等云模型、通过可选依赖支持的 OpenAI 模型,以及通过内置 Ollama 接口支持的本地开源模型。插件系统允许注册和分发自定义模型提供商作为独立包。 - 领域适应性:提取任务通过提示词和少量示例定义,无需模型微调。 典型用法包括定义提示词和示例提取、调用 lx.extract 处理文本或文档 URL、将结果保存为 JSONL,并生成 HTML 可视化。选项包括 extraction_passes、max_workers 和 max_char_buffer,用于扩展到更长文档,另支持 Vertex AI 和 OpenAI 批处理配置以应对大规模工作负载。 可通过 PyPI(pip install langextract)、源码(pyproject.toml)或 Docker 安装。云模型需要 API 密钥,可通过环境变量、.env 文件、直接参数或 Vertex AI 服务账户进行配置。项目包含 pytest、tox、pylint 和 pre-commit hooks 等测试和开发工具。 README 注明该项目不是官方支持的谷歌产品,使用需遵守 Apache 2.0 许可证,健康相关应用另有附加条款。