docai:提取非结构化文档中的结构化数据
docai Structured information extraction from documents 项目地址: https://gitcode.com/gh_mirrors/do/docai
项目介绍
在当今信息化的时代,非结构化数据的处理与分析成为许多行业的痛点。docai 项目应运而生,旨在利用先进的人工智能技术,从非结构化文档中提取结构化数据。这一过程不仅能够提高信息处理的效率,还能为数据分析、决策支持等领域提供强大的支持。
项目技术分析
docai 项目采用了 Answer.AI 的 Byaldi、OpenAI 的 gpt-4o 以及 Langchain 的 structured output 等先进技术。这些技术的结合使得项目在处理非结构化文档方面具备了高度的智能化和准确性。
- Byaldi:Answer.AI 开发的自然语言处理模型,能够理解并处理各种类型的非结构化数据。
- gpt-4o:OpenAI 推出的图像识别模型,可以识别并理解文档中的图像信息。
- Langchain's structured output:Langchain 提供的结构化输出功能,帮助将提取的信息转化为结构化格式。
项目及技术应用场景
docai 项目的应用场景广泛,以下是一些典型的使用案例:
- 保险行业:通过 docai,保险公司可以快速从保险理赔文档中提取关键信息,如损失日期、损失金额、损失描述等,从而提高理赔效率。
- 金融行业:金融机构可以利用 docai 从合同、报表等非结构化文档中提取关键数据,用于风险评估和决策支持。
- 医疗行业:医疗文档中的诊断报告、病历等可通过 docai 提取结构化信息,便于后续的数据分析和研究。
项目特点
docai 项目的特点如下:
- 高度集成:集成了多种先进的人工智能技术,提供了全面的非结构化数据处理能力。
- 易于安装与部署:通过简单的命令行操作,即可完成环境的搭建和部署。
- 灵活的输入输出:支持多种类型的非结构化文档输入,并提供结构化的输出格式,方便用户使用。
- 可扩展性:项目具有良好的可扩展性,用户可以根据自己的需求进行定制化开发。
以下是具体的安装和使用方法:
安装
首先,使用 pyenv 创建一个 Python 虚拟环境,并激活该环境:
pyenv virtualenv 3.10.6 docai
pyenv activate docai
接着,使用 poetry 安装项目依赖:
poetry install
环境变量
确保在环境变量中设置了 OPENAI_API_KEY 和 HF_TOKEN:
export OPENAI_API_KEY=<your key>
export HF_TOKEN=<your token>
使用示例
- 构建索引:从 pdfs/ 文件夹中的 PDF 文件构建索引:
python scripts/build_index.py --folder "pdfs/" --index_name "application"
- 提取结构化信息:从索引中提取结构化信息(打开 extract.py 文件查看查询和 pydantic 模型):
python scripts/extract.py
输出示例
以下是提取结果的示例:
What losses have occurred in the past 5 years?
LossHistory(
losses=[
Loss(loss_date='2/20/21', loss_amount=7003.0, loss_description='Claimant was in his sleeper when his truck got hit by insured driver on the left', date_of_claim='4/19/21'),
Loss(loss_date='2/4/21', loss_amount=92584.0, loss_description='The IV was attempting to merge on the highway when the IV lost control and struck', date_of_claim='4/30/21'),
Loss(loss_date='9/14/21', loss_amount=5583.0, loss_description='IV was in the fast lane, when IV tire flew off and struck OV1, OV2, OV3, OV4', date_of_claim='9/15/21'),
Loss(loss_date='9/14/21', loss_amount=6299.0, loss_description='IV was in the fast lane, when IV tire flew off and struck OV1, OV2, OV3, OV4', date_of_claim='9/15/21')
]
)
What is the basic application information?
Application(
insured_name='Greentown Burgers LLC',
insured_address='Not provided',
insured_phone='Not provided',
insured_email='Not provided',
effective_date='07/22/2024'
)
总之,docai 项目的出现为非结构化数据的处理和分析提供了新的解决方案,其在多个行业中的应用前景广阔,值得大家关注和尝试。
docai Structured information extraction from documents 项目地址: https://gitcode.com/gh_mirrors/do/docai
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考