使用IDP+LLM完成文档总结/抽取

更新时间:2025-03-10 08:32:19

通过结合IDP输出的内容信息,配合大模型和用户的prompt,可以完成从文档内抽取、总结信息,或以特定格式输出,本文说明如何使用IDP+LLM完成文档总结能力。

方案说明

通过结合IDP输出的内容信息,配合大模型和用户的prompt,可以完成从文档内抽取、总结信息,或以特定格式输出,本文说明如何使用IDP+LLM完成文档总结能力。

环境准备

通过Docmind文档智能解析服务调用,获取AK、SK。

环境使用前需要安装IDP-SDK Python安装包、OpenAI Python安装包。

pip install llama-index
pip install llama-index-readers-dashscope
pip install llama-index-llms-dashscope
pip install https://doc-mind-pro.oss-cn-hangzhou.aliyuncs.com/doc_json_sdk-1.0.2-py3-none-any.whl 

方案实现示例

方案通过阿里云Docmind文档智能服务进行调用,以及Qwen模型进行抽取、总结。

重要

dashscopeParse、docmind文档解析、docmind文档解析(大模型版)为独立计费

通过Docmind调用+Qwen完成文档总结

使用docmind文档智能解析,新手指引,进行开通,获取AccessKey ID、AccessKey Secret,设置环境变量。

export  ALIBABA_CLOUD_ACCESS_KEY_SECRET=YOUR_ALIBABA_CLOUD_ACCESS_KEY_SECRET 
export  ALIBABA_CLOUD_ACCESS_KEY_ID=YOUR_ALIBABA_CLOUD_ACCESS_KEY_ID 

调用服务并处理文档,qwen模型开通通过dashscope获取api_key

import logging
import sys
import io
import os
logging.basicConfig(stream=sys.stdout, level=logging.INFO)
logging.getLogger().addHandler(logging.StreamHandler(stream=sys.stdout))
from doc_json_sdk.loader.document_model_loader import DocumentModelLoader
from doc_json_sdk.handler.document_handler import DocumentExtractHandler, DocumentDigitalExtractHandler, DocumentParserWithCallbackHandler
from doc_json_sdk.render.document_model_render import DocumentModelRender
from llama_index.core.schema import Document

file_path = "/local_file" # your file
# handler: 更多参数查看IDP-SDK 快速开始
# DocumentExtractHandler 文档智能解析
# DocumentDigitalExtractHandler 文档电子解析
loader = DocumentModelLoader(handler=DocumentExtractHandler())
docmind_document = loader.load(file_path=file_path,
                               reveal_markdown=True,  # 处理markdown 表格表示、图片链接表示 不处理图片的话可以关掉
                                formula_enhancement=False,  # 公式增强
                                use_url_response_body=True)
# or file url
# docmind_document = loader.load(file_url="http://xxxx")
render = DocumentModelRender(document_model=docmind_document)
docmind_markdown_result = render.render_markdown_result()
# 查看markdown结果
print(docmind_markdown_result)

# use qwen_max as llm
from llama_index.llms.dashscope import DashScope, DashScopeGenerationModels
dashscope_llm = DashScope(model_name=DashScopeGenerationModels.QWEN_MAX,api_key="your-dashscope-sk")

# 总结
response = dashscope_llm.complete("总结文档内容,以markdown结果表示 \n: "+docmind_markdown_result)
print("总结如下:----------------------\n")
print(response.text)

# 抽取
response = dashscope_llm.complete("抽取文档内容,以KV方式表示 \n: "+docmind_markdown_result)
print("抽取如下:----------------------\n")
print(response.text)

  • 本页导读 (1)
  • 方案说明
  • 环境准备
  • 方案实现示例
  • 通过Docmind调用+Qwen完成文档总结
AI助理

点击开启售前

在线咨询服务

你好,我是AI助理

可以解答问题、推荐解决方案等