SuperAPI AI 工具集

langextract

数据与分析

查看项目

更新于 10-15 19:54

技能介绍

用途:langextract 用于从非结构化文本中抽取结构化数据,核心特点是每条抽取结果都能追溯到原文(source grounding),而不仅是给出最终值。适合抽取实体、关系或事实,处理临床笔记、法律文书、研究论文、报告、日志等,也适合需要来源可追溯的抽取流水线。

主要能力:通过示例定义抽取模式(schema);支持长文档的分块、并行 worker 与多轮抽取以提升召回;支持 Gemini、OpenAI、Ollama 或自定义提供方;可生成抽取片段叠加在原文上的 HTML 可视化,便于人工复核。

使用方式:先用 prompt 说明抽取内容与接地要求,再创建若干 ExampleData 对象,展示抽取类别、原文中的精确 extraction_text 片段及补充属性;示例即模式契约,质量比堆叠指令更重要。随后调用 lx.extract(),传入文本、prompt、examples 与 model_id。Gemini 为最简默认路径;OpenAI 需 pip install langextract[openai],并保持 fence_output 与 use_schema_constraints 不设置以自动配置;Ollama 使用 model_url="http://localhost:11434" 并同样倾向自动默认。长文档可设置 extraction_passes、max_workers、max_char_buffer,再用 lx.io.save_annotated_documents 保存、lx.visualize 生成 HTML 复核。

限制:不适用于 OCR、PDF 版面解析或图像转文本;不用于普通摘要、分类或问答;不是通用 RAG 系统;输入需为干净文本或可抓取的 URL。少样本示例可能泄漏进输出,无法在原文中接地的抽取会标记 char_interval = None,需要严格接地时可据此过滤。若下游使用 start 与 end,应先核对片段是否仍与原文一致。许可证为 Apache 2.0。