微信扫码
添加专属顾问
 
                        我要投稿
Docext:企业数据处理的新突破,无需OCR,本地化文档提取,保障数据安全。 核心内容: 1. Docext开源工具介绍,无需OCR技术实现文档信息提取 2. 视觉语言模型(VLMs)技术原理及智能文档处理能力 3. 主要功能:字段和表格提取、自定义模板、置信度评分、多页文档支持
 
                                在数字化办公日益普及的今天,文档信息提取成为了企业和个人处理大量非结构化数据的重要环节。然而,传统的OCR 技术在处理复杂文档时常常面临准确率低、格式混乱等问题,尤其是在处理敏感信息时,数据隐私和安全性也难以保障。为了解决这些痛点,NanoNets 团队开发了一款开源的本地化工具——Docext,它利用视觉语言模型(VLM)实现无需 OCR 的结构化信息提取,为企业和开发者提供了一种高效、安全且灵活的解决方案。
Docext 是一个无需 OCR 的文档信息提取工具,由 NanoNets 团队开发并开源。它利用视觉语言模型(VLMs)从文档图像中准确识别和提取字段数据和表格信息,支持发票、护照等多种常见文档类型。Docext 旨在通过本地部署的方式,保障数据隐私,同时提供自定义字段、表格提取、多页文档支持和 REST API 集成等功能,全面提升文档处理的效率和安全性。
Docext 的核心在于其利用的视觉语言模型(VLMs)。与传统的 OCR 技术不同,VLMs 能够直接从文档图像中提取信息,而无需先进行字符识别。这种模型通过结合视觉信息和语言理解能力,能够更准确地识别文档中的结构化信息,例如关键字段和表格数据。VLMs 的优势在于其能够理解文档的整体布局和语义,从而在提取信息时保持更高的准确性和稳定性。
为了评估不同模型在文档处理任务中的性能,Docext 提供了一个智能文档处理排行榜。该排行榜涵盖了七个关键的文档智能挑战,包括关键信息提取(KIE)、视觉问答(VQA)、光学字符识别(OCR)、文档分类、长文档处理、表格提取和置信度评分校准。通过这些任务的评估,研究人员和实践者可以更全面地了解模型在不同场景下的表现,从而选择最适合其需求的模型。
Docext 能够从各种文档中提取关键字段信息和表格数据,同时保持原始结构。无论是发票中的金额、日期,还是护照中的姓名、国籍,Docext 都能够准确识别并提取出来。此外,它还支持从复杂表格中提取结构化数据,即使表格跨越多页,Docext 也能够自动识别并提取跨页内容。
Docext 提供了高度的灵活性,用户可以根据自己的需求定义自定义字段,或者使用内置的常见文档类型模板,如发票、护照等。这些模板已经经过优化,能够快速启动并满足大多数用户的需求。同时,用户还可以根据实际情况动态添加或删除字段/列,以满足个性化的需求。
为了帮助用户评估提取信息的可靠性,Docext 提供了置信度评分功能。每个提取的字段和表格数据都会附带一个置信度评分,用户可以根据这个评分来判断数据的准确性,从而在必要时进行人工审核或进一步处理。
在处理长文档时,Docext 能够自动处理多页内容,无需用户手动分页。这使得它特别适合处理合同、研究报告等复杂的长文档,能够有效地提高工作效率。
Docext 支持在 Linux 和 macOS 系统上本地部署,确保数据完全在本地处理,不会上传到云端。这种部署方式极大地保障了数据的隐私和安全性,特别适合处理敏感信息。
Docext 提供了 RESTful API 接口,可以轻松集成到现有的系统或应用程序中。通过 API,用户可以程序化地访问文档提取功能,实现自动化处理。
Docext 可以广泛应用于企业的自动化流程中,例如自动处理发票、收据、合同等文档,减少人工干预,提高工作效率。通过 REST API 集成,Docext 可以轻松集成到现有的企业系统中,实现文档处理的自动化。
在数据录入和分析方面,Docext 能够从复杂表格中提取结构化数据,为数据分析和决策提供支持。它支持多种文档类型,能够快速提取关键信息,提高数据处理的速度和准确性。
在出入境管理场景中,Docext 可以快速提取护照、签证等证件的关键信息,简化出入境流程。其本地化部署的特性确保了数据的安全性和隐私性,特别适合处理敏感信息。
对于长文档,如研究报告、法律文件等,Docext 能够有效地解析文档内容,提取重要信息以供进一步分析。它支持多页文档处理,能够自动识别并提取跨页内容,提高了长文档处理的效率。
在使用Docext 之前,需要确保安装了以下依赖项:
- Python >= 3.11
- uv 工具(用于创建虚拟环境和安装依赖)
以下是安装步骤:
1. 安装 uv 工具(如果尚未安装):
curl -LsSf https://astral.sh/uv/install.sh | sh
2. 创建虚拟环境并激活:
uv venv --python=3.11source .venv/bin/activate
3. 安装 Docext:
uv pip install docext
或者通过克隆项目进行安装:
git clone https://github.com/nanonets/docext.gitcd docextuv pip install -e .
Docext 提供了一个基于 Gradio 的网页界面,可用于轻松处理文档。启动命令如下:
# 以默认配置启动 Web 界面python -m docext.app.app# 以自定义配置启动 Web 界面python -m docext.app.app --model_name "hosted_vllm/Qwen/Qwen2.5-VL-7B-Instruct-AWQ" --max_img_size 1024
界面可以通过访问`http://localhost:7860` 使用,默认用户名和密码为 `admin`。
Docext 还提供了一个 REST API,用于程序化访问文档提取功能。启动 API 服务器的命令如下:
# 增加并发限制以并行处理更多请求,默认值为 1python -m docext.app.app --concurrency_limit 10
使用API 从文档中提取信息的示例代码如下:
import pandas as pdimport concurrent.futuresfrom gradio_client import Client, handle_filedef dataframe_to_custom_dict(df: pd.DataFrame) -> dict:return {"headers": df.columns.tolist(),"data": df.values.tolist(),"metadata": None # Modify if metadata is needed}def dict_to_dataframe(d: dict) -> pd.DataFrame:return pd.DataFrame(d["data"], columns=d["headers"])def get_extracted_fields_and_tables(client_url: str,username: str,password: str,model_name: str,fields_and_tables: dict,file_inputs: list[dict]):client = Client(client_url, auth=(username, password))result = client.predict(file_inputs=file_inputs,model_name=model_name,fields_and_tables=fields_and_tables,api_name="/extract_information")fields_results, tables_results = resultfields_df = dict_to_dataframe(fields_results)tables_df = dict_to_dataframe(tables_results)return fields_df, tables_dffields_and_tables = dataframe_to_custom_dict(pd.DataFrame([{"name": "invoice_number", "type": "field", "description": "Invoice number"},{"name": "item_description", "type": "table", "description": "Item/Product description"}# add more fields and table columns as needed]))file_inputs = [{# "image": handle_file("https://your_image_url/invoice.jpg") # incase the image is hosted on the internet"image": handle_file("assets/invoice_test.jpeg") # incase the image is hosted on the local machine}]# send single requestfields_df, tables_df = get_extracted_fields_and_tables("http://localhost:7860", "admin", "admin", "hosted_vllm/Qwen/Qwen2.5-VL-7B-Instruct-AWQ", fields_and_tables, file_inputs)print("========Fields:=========")print(fields_df)print("========Tables:=========")print(tables_df)# send multiple requests in paralleldef run_request():return get_extracted_fields_and_tables("http://localhost:7860", "admin", "admin", "hosted_vllm/Qwen/Qwen2.5-VL-7B-Instruct-AWQ", fields_and_tables, file_inputs)with concurrent.futures.ThreadPoolExecutor(max_workers=10) as executor:future_results = [executor.submit(run_request) for _ in range(10)]for future in concurrent.futures.as_completed(future_results):fields_df, tables_df = future.result()print("========Fields:=========")print(fields_df)print("========Tables:=========")print(tables_df)
Docext 是一款基于视觉语言模型(VLM)的智能文档处理工具,它通过无需 OCR 的方式直接从文档图像中提取结构化信息,提供了高效、安全且灵活的解决方案。无论是关键字段提取、表格数据解析,还是多页文档处理,Docext 都能够满足企业和个人的需求。其本地化部署的特性特别适合处理敏感信息,确保数据隐私和安全性。如果你正在寻找一款无需 OCR 即可从各类文档中提取结构化信息的工具,Docext 是一个值得关注的项目。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2025-10-31
有人问我会不会用 AI,我直接拿出这个 Ollama + FastGPT 项目给他看
2025-10-30
开源可信MCP,AICC机密计算新升级!
2025-10-30
OpenAI 开源了推理安全模型-gpt-oss-safeguard-120b 和 gpt-oss-safeguard-20b
2025-10-29
刚刚,OpenAI 再次开源!安全分类模型 gpt-oss-safeguard 准确率超越 GPT-5
2025-10-29
AI本地知识库+智能体系列:手把手教你本地部署 n8n,一键实现自动采集+智能处理!
2025-10-29
n8n如何调用最近爆火的deepseek OCR?
2025-10-29
OpenAI终于快要上市了,也直面了这23个灵魂拷问。
2025-10-29
保姆级教程:我用Coze干掉了最烦的周报
 
            2025-08-20
2025-09-07
2025-08-05
2025-08-20
2025-08-26
2025-08-22
2025-09-06
2025-08-06
2025-10-20
2025-08-22
2025-10-29
2025-10-28
2025-10-13
2025-09-29
2025-09-17
2025-09-09
2025-09-08
2025-09-07