华为云 Flexus+DeepSeek 征文|增值税发票智能提取小工具:基于大模型的自动化信息解析实践
华为云 Flexus+DeepSeek 征文|增值税发票智能提取小工具:基于大模型的自动化信息解析实践
前言背景
企业财务处理中,增值税发票信息手动提取存在效率低、易出错等痛点,华为云 Flexus 弹性算力联合 DeepSeek 大模型,通过 CCE 集群部署 Dify 平台,构建发票上传 - 文本解析 - 信息提取自动化工作流,可精准识别发票代码、金额等关键数据并输出结构化 JSON,助力企业提升财务处理效率,降低人工成本
前提准备
Step.1 华为账号注册登录
1、华为云官网登录
Step.2 华为云单机部署流程
华为云 Flexus+DeepSeek 实战:华为云单机部署 Dify-LLM 开发平台全流程指南【服务部署、模型配置、知识库构建全流程】
查看链接
✅上面链接文章是本文的操作前提,包含了华为云单机部署 Dify - LLM 开发平台全流程,涵盖 ModelArts Studio 大模型开通、Dify 平台单机与模型供应商配置,还有高质量知识库配置(含 Embedding 及 Rerank 模型部署、相关供应商配置等),以及资源删除销毁,大家需要根据链接完成前提部署再进行本文的操作流程哈
智能体工作流搭建配置
1、智能体工作流信息创建配置
2、工作流创建配置
3、开始节点配置
4、文档提取器节点配置
- 输入:接收 “开始” 节点的
sys.files
(即上传的发票文件,支持 pdf、docx 等多格式 ),作为提取内容的来源。- 功能:解析文件文本信息,输出给后续 “LLM(DeepSeek - R1 模型 )” 节点,让 AI 基于提取的内容识别发票关键数据(如金额、税额等 ),是从 “文件上传” 到 “智能识别” 的核心转换环节 。
5、大模型配置
- 模型:选用
DeepSeek-R1
,用于处理发票提取任务。- 输入:接收 “文档提取器” 解析的发票文件内容(
file
关联的文件信息 )。- 系统指令(SYSTEM):要求提取发票关键信息(如机器编号、发票代码等 ),并以 JSON 格式输出,明确模型处理发票内容的规则,是智能识别发票数据的核心环节 。
- USER 输入:关联 “开始” 节点的
sys.query
,即把用户输入的查询内容作为该模块的用户侧输入,用于流程中结合历史或上下文信息处理,是构建对话 / 任务上下文关联的配置项 。
# 角色 你是一个专业的发票信息提取助手,能够从增值税发票中精准地解析并提取所需的信息,然后将这些信息按照指定的JSON格式进行输出。## 技能 ### 技能 1: 解析发票 1. 接收并识别增值税发票的图像或文本信息。 2. 根据规则说明,准确提取出所有必要的字段信息。### 技能 2: 数据校验 1. 确保提取的数据符合格式要求,如字段名称与示例完全一致,包括标点和空格。 2. 对金额、日期等关键信息进行校验,确保其严格按票面信息提取。### 技能 3: JSON格式化 1. 将提取的数据按照指定的JSON结构进行组织。 2. 确保所有字段的值正确无误,如无对应信息则填入空字符串。### 技能 4: 精准识别 1. 仔细匹配发票上的文字信息,确保每个字段的提取精准无误。 2. 对于票面上直接显示的税率、税额等信息直接取值,对于需要计算的则按照票面的计算逻辑进行处理。## 限制 - 提取信息时必须严格依据票面内容,不能自行推测或填写不存在的字段。 - 输出内容必须符合规定的JSON格式,不能有任何偏差。 - 对于所有字段的提取,若无对应信息,则必须填写空字符串,不得留白或填写其它默认值。
6、结束节点
- 功能:接收 LLM 节点输出的
text
(即发票提取结果 ),作为最终回复内容输出给用户。- 流程定位:是工作流收尾环节,把 AI 处理后的发票信息(如金额、税额等关键数据 ),通过该节点反馈,完成 “上传发票→提取信息→回复结果” 的完整流程 。
工作流测试与预览
1、准备需要提取的发票
2、上传至Dify平台
3、工作流提取分析
{ "机器编号": "", "发票代码": "", "发票号码": "24342000000169207701", "开票日期": "2024年11月22日", "校验码": "", "购买方名称": "杭州...有限公司", "购买方纳税人识别号": "91330...CAYEC75C", "购买方地址、电话": "", "开户行及账号": "", "货物或应税劳务、服务名称": "*信息技...息服务费", "规格型号": "", "单位": "", "数量": "", "单价": "", "金额": "¥243.40", "税率": "6%", "税额": "¥14.60", "价税合计(大写)": "贰佰伍拾捌圆整", "价税合计(小写)": "¥258.00", "销售方名称": "蚌埠谦..技有限公司", "销售方纳税人识别号": "9134030...34329C", "销售方地址、电话": "", "开户行及账号": "徽商银行股份...蚌山支行;2379702504...528183/12804010210002...991", "备注": "", "收款人": "", "复核": "" }
4、成功搭建展示
应用场景与拓展方向
通过华为云 Flexus 算力与 DeepSeek 大模型结合,实现增值税发票关键信息自动化提取,已在企业财务审核、智能报销及税务申报等场景落地,未来将向多票种识别、OCR 与 LLM 深度融合及行业定制方案拓展,全面提升票据处理智能化水平
✅财务场景全覆盖:支撑企业发票验真、报销流程优化及税务申报自动化,如某制造企业借此提升审核效率提高
✅技术融合升级:通过 OCR 模型与 DeepSeek 大模型结合提升识别准确率,计划拓展至全票种类型解析
✅行业定制拓展:针对零售、医疗等行业开发专属模板,同步集成区块链存证实现票据数据全链路可信溯源
总结
本文基于华为云 Flexus 弹性算力与 DeepSeek 大模型,通过 CCE 集群部署 Dify 平台构建增值税发票智能提取工具,实现发票代码、金额等关键信息自动化解析与结构化输出,经过实践可以企业财务、报销及税务场景落地提效,未来可以向多票种兼容、OCR+LLM 深度融合及行业定制方向拓展,为票据处理智能化提供解决方案
✅极简部署体验:通过自动化工具与预置模板,快速完成环境配置,无需复杂操作即可搭建开发平台
✅柔性资源调配:支持 CPU 与内存灵活配比,根据业务负载动态调整资源,按需计费降低算力成本
✅场景无缝适配:适用于个人学习、中小企业开发测试等场景,且能平滑扩展至集群部署,满足业务增长需求
相关文章:
华为云 Flexus+DeepSeek 征文|增值税发票智能提取小工具:基于大模型的自动化信息解析实践
华为云 FlexusDeepSeek 征文|增值税发票智能提取小工具:基于大模型的自动化信息解析实践 前言背景 企业财务处理中,增值税发票信息手动提取存在效率低、易出错等痛点,华为云 Flexus 弹性算力联合 DeepSeek 大模型,通过…...
[特殊字符] OpenCV opencv_world 模块作用及编译实践完整指南
📌 什么是 opencv_world 模块? opencv_world 是 OpenCV 官方提供的一个 大型集成动态库。它将 OpenCV 所有启用的模块(例如 core, imgproc, highgui, videoio, dnn, photo 等)打包到一个单一的动态库文件(如 Linux 的…...
目标检测之YOLOv5到YOLOv11——从架构设计和损失函数的变化分析
YOLO(You Only Look Once)系列作为实时目标检测领域的标杆性框架,自2016年YOLOv1问世以来,已历经十余年迭代。本文将聚焦YOLOv5(2020年发布)到YOLOv11(2024年前后)的核心技术演进&am…...
Java的SpringAI+Deepseek大模型实战【二】
文章目录 背景交互方式1、等待式问答2、流式问答 设置角色环绕增强1)修改controller2)修改配置日志级别 处理跨域 背景 上篇【Java的SpringAIDeepseek大模型实战【一】】搭建起浏览器交互的环境,如何进行流式问答,控制台打印日志…...
OpenCV——霍夫变换
霍夫变换 一、霍夫变换原理二、霍夫线检测2.1、标准霍夫变换2.2、概率霍夫变换 三、霍夫圆检测3.1、霍夫圆检测的原理3.2、霍夫梯度法 一、霍夫变换原理 霍夫变换(Hough TRansform)是从图像中识别几何图形的基本方法,由Paul Hough于1962年提…...
线程池 JMM 内存模型
线程池 & JMM 内存模型 文章目录 线程池 & JMM 内存模型线程池线程池的创建ThreadPoolExecutor 七大参数饱和策略ExecutorService 提交线程任务对象执行的方法:ExecutorService 关闭线程池的方法:线程池最大线程数如何确定? volatile…...
PillarNet: Real-Time and High-PerformancePillar-based 3D Object Detection
ECCV 2022 paper:[2205.07403] PillarNet: Real-Time and High-Performance Pillar-based 3D Object Detection code:https://github.com/VISION-SJTU/PillarNet-LTS 纯点云基于pillar3D检测模型 网络比较 SECOND 基于vo…...
配电抢修场景案例
以配电抢修场景为例来展示关键业务活动。配电抢修愿景分成业务逻辑、业务活动、业务特征、技术支撑、KPI五个层次,分别从策略、执行、评价、资源、协同5个方面描述配电抢修愿景的关键业务活动。...
H5新增属性
✅ 一、表单相关新增属性(Form Attributes) 这些属性增强了表单功能,提升用户体验和前端验证能力。 1. placeholder 描述:在输入框为空时显示提示文本。示例: <input type"text" placeholder"请输…...
C# Task 模式实现 Demo(含运行、暂停、结束状态)
下面是一个完整的 C# Task 实现示例,包含运行(Running)、暂停(Paused)和结束(Completed)状态控制: 1. 基本实现(使用 CancellationToken 控制) using System; using System.Threading; using System.Threading.Tasks;public cla…...
Docker健康检查
目录 1.命令 2.验证 1.命令 docker run -itd --name nginx -v data:/etc/nginx/ -v log:/var/log/ -p 8080:80 \ --health-cmd"curl http://127.0.0.1:80" \ --health-interval30s \ --health-timeout5s \ --health-retries3 \ --health-start-period18s \ nginx:…...
Linux笔记---线程控制
1. 线程创建:pthread_create() pthread_create() 是 POSIX 线程库(pthread)中用于创建新线程的函数。调用该函数后系统就会启动一个与主线程并发的线程,并使其跳转到入口函数处执行。 #include <pthread.h>int pthread_cr…...
【AI论文】扩展大型语言模型(LLM)智能体在测试时的计算量
摘要:扩展测试时的计算量在提升大型语言模型(LLMs)的推理能力方面已展现出显著成效。在本研究中,我们首次系统地探索了将测试时扩展方法应用于语言智能体,并研究了该方法在多大程度上能提高其有效性。具体而言…...
Spring--IOC容器的一些扩展属性
一、BeanFactoryPostProcessor和BeanPostProcessor BeanFactoryPostProcessor的作用是在实例化前修改BeanDefinition的属性 BeanPostProcessor的作用是在bean完成创建实例、填充属性之后,初始化阶段的前后都会对bean进行操作,使用postProcessBeforeIni…...
WebClient 功能介绍,使用场景,完整使用示例演示
WebClient 功能介绍 WebClient 是 Spring 5 中引入的响应式 HTTP 客户端,用于替代已弃用的 RestTemplate,专为异步非阻塞编程设计,基于 Reactor 框架实现。其核心功能包括: 异步与非阻塞 通过 Mono 和 Flux 处理请求与响应&#…...
[Java 基础]ArrayList
ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制。 ArrayList 的示意可以看 VCR:https://visualgo.net/en/array 创建 ArrayList 对象 final ArrayList<String> strings new ArrayList<>();这里创建 …...
用无人机和AI守护高原净土:高海拔自然保护区的垃圾检测新方法
这篇题为《Automatic Detection of Scattered Garbage Regions Using Small Unmanned Aerial Vehicle Low-Altitude Remote Sensing Images for High-Altitude Natural Reserve Environmental Protection》的论文,发表于 Environmental Science & Technology&am…...
《Redis高并发优化策略与规范清单:从开发到运维的全流程指南》
Redis高并发优化策略与规范清单:从开发到运维的全流程指南 在互联网应用的后端架构中,Redis凭借其高性能、高并发的特性,成为缓存和数据存储的首选方案。无论是电商抢购、社交平台的点赞计数,还是在线旅游平台的实时数据查询&…...
Linux基本指令篇 —— man指令
man命令是Linux系统中最重要的命令之一,它是"manual"(手册)的缩写,用于查看Linux系统中命令、函数、配置文件等的详细说明文档。man命令是Linux系统管理员和开发者的必备工具,熟练掌握man命令可以大大提高工…...
Spring Boot使用MCP服务器
1、JDK版本17 2、pom文件 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apac…...
学习Linux进程冻结技术
原文:蜗窝科技Linux进程冻结技术 功耗中经常需要用到,但是linux这块了解甚少,看到这个文章还蛮适合我阅读的 1 什么是进程冻结 进程冻结技术(freezing of tasks)是指在系统hibernate或者suspend的时候,将…...
Docker基本概念——AI教你学Docker
1.1 Docker 概念详解 1. Docker 是什么? Docker 是一个开源的应用容器引擎,它让开发者可以将应用及其依赖打包到一个可移植的容器(Container)中,并在任何支持 Docker 的 Linux、Windows 或 macOS 系统上运行。这样做…...
第十六届蓝桥杯C/C++程序设计研究生组国赛 国二
应该是最后一次参加蓝桥杯比赛了,很遗憾,还是没有拿到国一。 大二第一次参加蓝桥杯,印象最深刻的是居然不知道1s是1000ms,花了很多时间在这题,后面节奏都乱了,抗压能力也不行,身体也不适。最后…...
Python 数据分析与可视化 Day 5 - 数据可视化入门(Matplotlib Seaborn)
🎯 今日目标 掌握 Matplotlib 的基本绘图方法(折线图、柱状图、饼图)掌握 Seaborn 的高级绘图方法(分类图、分布图、箱线图)熟悉图像美化(标题、标签、颜色、风格)完成一组学生成绩数据的可视化…...
WebRTC(八):SDP
SDP 概念 SDP 是一种描述多媒体通信会话的文本格式(基于 MIME,RFC 4566)。本身 不传输数据,仅用于在会话建立阶段传递信息。常与 SIP(VoIP)、RTSP、WebRTC 等协议配合使用。 用途 描述媒体类型…...
《哈希表》K倍区间(解题报告)
文章目录 零、题目描述一、算法概述二、算法思路三、代码实现四、算法解释五、复杂度分析 零、题目描述 题目链接:K倍区间 一、算法概述 计算子数组和能被k整除的子数组数量的算法。通过前缀和与哈希表的结合,高效地统计满足条件的子数组。 需要注…...
牛津大学开源视频中的开放世界目标计数!
视频中的开放世界目标计数 GitHub PaPer Niki Amini-Naieni nikianrobots.ox.ac.uk Andrew Zisserman azrobots.ox.ac.uk 视觉几何组(VGG),牛津大学,英国 图 1:视频中的目标计数:给定顶行的视频&#…...
1.2、CAN总线帧格式
1、帧类型 2、帧类型介绍 (1)数据帧 扩展格式是为了扩展ID,ID号每4位一个字节(11位最大ID号为0x7FF) (2)遥控帧 遥控帧由于没有Data,所以DLC可能没有意义,可给任意值&am…...
DeepSeek今天喝什么随机奶茶推荐器
用DeepSeek生成了一个随机奶茶推荐器-今天喝什么,效果非常棒!UI界面美观。 提示词prompt如下 用html5帮我生成一个今天喝什么的网页 点击按钮随机生成奶茶品牌等,要包括中国常见的知名的奶茶品牌 如果不满意还可以随机再次生成 ui界面要好看 …...
词编码模型怎么进行训练的,输出输入是什么,标签是什么
词编码模型怎么进行训练的,输出输入是什么,标签是什么 词编码模型的训练本质是通过数据驱动的方式,将离散的文本符号映射为连续的语义向量。 一、训练机制:从符号到向量的映射逻辑 1. 核心目标 将单词/子词(Token)映射为低维向量,使语义相关的词在向量空间中距离更近…...
LSTM、GRU 与 Transformer网络模型参数计算
参数计算公式对比 模型类型参数计算公式关键组成部分LSTM4 (embed_dim hidden_size hidden_size hidden_size)4个门控结构GRU3 (embed_dim hidden_size hidden_size hidden_size)3个门控结构Transformer (Encoder)12 embed_dim 9 embed_dim ff_dim 14 embed_dim…...
nnv开源神经网络验证软件工具
一、软件介绍 文末提供程序和源码下载 用于神经网络验证的 Matlab 工具箱,该工具箱实现了可访问性方法,用于分析自主信息物理系统 (CPS) 领域中带有神经网络控制器的神经网络和控制系统。 二、相关工具和软件 该工具箱利用神经…...
SQLite3 在嵌入式系统中的应用指南
SQLite3 在嵌入式系统中的应用指南 一、嵌入式系统中 SQLite3 的优势 SQLite3 是嵌入式系统的理想数据库解决方案,具有以下核心优势: 特性嵌入式系统价值典型指标轻量级适合资源受限环境库大小:500-700KB零配置无需数据库管理员开箱即用无…...
原生微信小程序网络请求与上传接口封装实战指南
本文基于微信小程序原生 API,封装 request 和 uploadFile 接口,最终实现统一请求管理、请求拦截、错误处理等能力。 📦 一、为什么要封装网络请求? 微信小程序提供了 wx.request 和 wx.uploadFile 原生 API,但直接使用…...
电路图识图基础知识-塔式起重机控制电路识图与操作要点(三十五)
引言: 塔式起重机作为建筑施工中不可或缺的大型起重运输机械设备,其控制电路的识图与操作对于确保施工安全和效率至关重要。本文将详细介绍塔式起重机的控制电路识图,帮助操作人员更好地理解和掌握其工作原理。 一、塔式起重机概述 塔式起重…...
基于SpringBoot + Vue 的网上拍卖系统
基于springbootvue的在线拍卖系统| Java | vue | 配万字文档 | springboot001 〔运行环境〕 Java版本:jdk1.8 node版本:13.x python版本:2.7 IDE类型:idea或exlipse 数据库:MySQL(5.x或8.x版本都…...
用 EXCEL/WPS 实现聚类分析:赋能智能客服场景的最佳实践
聚类分析作为无监督学习的核心技术,能在客服数据中发现隐藏的用户群体或问题模式。尽管 Excel/WPS 并非专业统计软件,但巧妙利用其内置功能,也能实现基础的聚类分析,为中小型客服团队提供快速洞察。以下介绍具体方法及智能客服场景…...
利用mold加快rust程序构建
我用rust的cargo build命令编译polars-cli时,用时达到14分钟,如下所示。 Finished dev profile [unoptimized debuginfo] target(s) in 14m 19s,通过核对时间戳,发觉其中最后一步生成可执行文件花了6分钟。 于是向DeepSeek请教&a…...
leetcode543-二叉树的直径
leetcode 543 思路 路径长度计算:任意两个节点之间的路径长度,等于它们的最低公共祖先到它们各自的深度之和递归遍历:通过后序遍历(左右根)计算每个节点的左右子树深度,并更新全局最大直径深度与直径的关…...
(三)yolov5——模型训练
一、准备数据 先准备一个MP4的视频 1.测试一帧 使用opencv来提取每一个视频的帧 先使用以下代码查看一帧的内容,是否符合预期 import cv2 import matplotlib.pyplot as plt# 打开视频文件 video cv2.VideoCapture("111.mp4") # 读取一帧 ret, frame…...
STM32对接霍尔传感器
STM32对接霍尔传感器的技术解析与应用实现,结合测速原理、硬件设计、代码实现及进阶应用,涵盖从基础到实战的全流程指南,可以应用到金属检测等功能。 ⚙️ 一、霍尔传感器基础 工作原理 霍尔传感器基于霍尔效应,当磁铁靠近时输出电平变化(常开型无磁铁时输出高电平,靠近时…...
SpringCloud系列(32)--使用Hystrix进行全局服务降级
前言:在上一节中我们使用Hystrix进行了服务降级,但是要在每个方法上面配置HystrixCommand才能实现服务降级,如果需要进行服务降级的方法多了,HystrixCommand也就得配置很多遍,所以本节内容则是使用Hystrix进行了全局服…...
Origin绘制三Y轴柱状图、点线图、柱状点线图
三Y轴柱状图是一种高级数据可视化形式,它通过三个独立的纵轴在同一个图表中展示不同量纲或量级的数据系列。其主要用于揭示不同量级指标间的关联性(例如高销售额是否伴随高利润率)。 当数据满足以下条件时,即可绘制三Y轴图&#x…...
通信网络编程3.0——JAVA
主要添加了私聊功能 1服务器类定义与成员变量 public class ChatServer {int port 6666;// 定义服务器端口号为 6666ServerSocket ss;// 定义一个 ServerSocket 对象用于监听客户端连接//List<Socket> clientSockets new ArrayList<>();// 定义一个列表用于存储…...
4-深度学习网络层
深度学习模型 Embedding层 Embedding矩阵是可训练的参数,一般会在模型构建时随机初始化 也可以使用预训练的词向量来做初始化,此时也可以选择不训练Embedding层中的参数 输入的整数序列可以有重复,但取值不能超过Embedding矩阵的列数 核心…...
【LeetCode】用双指针解决移除元素问题、合并两个有序数组求解
🔥个人主页:艾莉丝努力练剑 ❄专栏传送门:《C语言》、《数据结构与算法》、C语言刷题12天IO强训 🍉学习方向:C/C方向 ⭐️人生格言:为天地立心,为生民立命,为往圣继绝学,…...
车载诊断架构协议篇 --- OBDonUDS和ZEVonUDS
我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 做到欲望极简,了解自己的真实欲望,不受外在潮流的影响,不盲从&#x…...
医学 Agent:自带医学深度调研 deep research,优化治疗策略+药物参考
医学 Agent:自带医学深度调研deep research,优化治疗策略药物参考 第一版代码输出结果,居然连不上网运行结果梳理 第二版结果测试 第一版代码 医疗顾问AI系统 - 基于Qwen API 的智能医疗助手 最终目标:构建一个能够查询疾病治疗方…...
硬件工程师笔试面试高频考点汇总——(2025版)
目录 1 电子器件部分 1.1 电阻 1.1.1 电阻选型时一般从哪几个方面进行考虑? 1.1.2 上拉下拉电阻的作用 1.1.3 PTC热敏电阻作为电源电路保险丝的工作原理 1.1.4 如果阻抗不匹配,有哪些后果 1.1.5 电阻、电容和电感0402、0603和0805封装的含义 1.1.6 电阻、电…...
春秋云镜【CVE-2017-18349】fastjson wp
知识点 fastjson反序列化 将json转为java对象的过程 漏洞存在版本 Fastjson<1.2.24 漏洞原理 fastjson引入的autotype功能,本来是为了区分同名同元素但是不同类型的对象序列化后内容一致无法还原的问题,但是这一操作允许了json数据中通过type来指定对…...