google/langextract
A Python library for extracting structured information from unstructured text using LLMs with precise source grounding and interactive visualization.
解决的问题
LangExtract 旨在利用大语言模型 (LLM) 从非结构化文本文档(如临床笔记或报告)中提取结构化信息。它专门解决了长文档中“大海捞针”式的提取挑战以及对精确源头溯源 (grounding) 的需求,确保提取的每条数据都能追溯到原始文本中的确切位置。
工作原理
该库结合使用用户定义的提示词和 few-shot 示例来引导 LLM 识别并组织关键细节。为了处理大型文档,它采用了文本分块、并行处理和多次提取轮次策略,以提高召回率。它支持广泛的模型,包括 Google Gemini 和 OpenAI 等云端选项,以及通过 Ollama 实现的本地模型。系统会自动检测提取内容是基于源文本还是 LLM 从示例中产生了幻觉,并将后者标记为 null 字符间隔。
适用对象
适用于需要将非结构化文本转换为结构化数据而无需微调模型的开发人员和研究人员,特别是处理长文档或在医疗保健等对可追溯性和验证性要求极高的领域工作的人员。
亮点
- 精确的源头溯源: 将每次提取都映射到源文本中的确切字符范围,以便于验证。
- 可靠的结构化输出: 使用受控生成和 few-shot 示例来强制执行一致的输出模式。
- 长文档优化: 通过并行处理和分块技术,在大型文本中保持高召回率。
- 交互式可视化: 生成自包含的 HTML 文件,以便在原始上下文中直观地查看提取的实体。
- 灵活的模型支持: 兼容 Gemini、OpenAI 和通过 Ollama 实现的本地 LLM,并具有用于自定义提供者的插件系统。
相关
- 项目
- 项目
- 项目
- 项目
- 项目