| domain | tags | datasets | models | license | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
multi-modal |
|
|
Apache License 2.0 |
git clone https://github.com/megemini/AuditAgent.githttps://aistudio.baidu.com/application/detail/103657
https://www.bilibili.com/video/BV1ybUWBhEvh/?vd_source=52a02e4f0aa6b27776bd86a6d103f2d1
感谢 Comate 送了一个月的会员 🫡🫡🫡
哦,对了,另一款国产 AI 编程工具,到现在 还 没 有 linux/ubuntu 版本,排了快一年的队了,隔壁大佬娃都生了 ~ 🫣🫣🫣
单据审核智能体是一个基于大语言模型的智能助手,旨在帮助企业员工快速了解单据审核规则、审核单据材料,提高审核效率。该系统集成了多种先进技术,包括自然语言处理、光学字符识别(OCR)、模型上下文协议(MCP)等,为用户提供全方位的单据审核服务。
- 智能规则提取:从多种文档格式(PDF、Word、TXT)中自动提取单据审核规则
- 发票智能识别:使用先进的OCR技术和大语言模型识别发票信息
- 智能审核流程:基于提取的规则对发票进行逐条验证和审核
- 多工具协作:集成多个MCP服务器,提供城市分级查询、日期时间计算等专业功能
- 流式交互:支持实时流式输出,提供流畅的用户体验
┌─────────────────────────────────────────────────────────────┐
│ 单据审核智能体 │
├─────────────────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ 设置 │ │ 知识库 │ │ MCP服务器 │ │
│ │ (Step 1) │ │ (Step 2) │ │ (Step 3) │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ 智能问答 │ │
│ │ (Step 4) │ │
│ └─────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ MCP服务器层 │
├─────────────────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │城市分级服务器│ │发票识别服务器│ │日期时间服务器│ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 大语言模型层 │
├─────────────────────────────────────────────────────────────┤
│ OpenAI API / 本地LLM │
└─────────────────────────────────────────────────────────────┘
- 前端界面: Gradio - 提供直观的Web用户界面
- 大语言模型: 支持OpenAI API兼容的模型(如Qwen系列)
- MCP协议: FastMCP - 实现工具调用和服务器通信
- OCR技术: PaddleOCR - 用于发票文本提取
- 文档处理: PyMuPDF (PDF)、python-docx (Word)
- 异步处理: asyncio - 支持高效的异步操作
- 文件服务: 内置HTTP文件服务器
- 提供完整的Gradio用户界面
- 实现会话管理和状态保持
- 集成所有MCP服务器客户端
- 处理文件上传和规则提取
- 实现流式智能问答功能
城市分级服务器 (mcp_citytier_stdio.py)
- 基于最新城市分级数据
- 支持单城市查询、批量查询
- 提供分级城市列表功能
- 覆盖一线至五线城市数据
发票识别服务器 (mcp_invoice_stdio.py)
- 集成PaddleOCR进行文本提取
- 使用大语言模型进行智能字段解析
- 支持多种发票格式和类型
- 提供高精度的发票信息识别
日期时间服务器 (mcp_datetime_stdio.py)
- 提供全面的日期时间功能
- 支持多时区查询
- 实现日期计算和格式化
- 支持日期差值计算
- 实现基于大语言模型的发票信息提取
- 集成OCR技术和AI分析
- 提供结构化的发票字段输出
- 支持多语言发票处理
- 多格式支持: 支持TXT、PDF、DOCX、DOC等多种文档格式
- 自动解析: 使用大语言模型自动识别和提取审核规则
- 结构化输出: 将规则转换为JSON格式,便于后续处理
- 示例内置: 提供完整的单据审核规则示例
- 多格式处理: 支持图片文件(JPG、PNG等)和PDF文档
- 高精度OCR: 使用PaddleOCR进行准确的文本提取
- AI驱动分析: 利用大模型进行智能字段提取和验证
- 隐私保护: 所有处理都在本地进行,确保数据安全
- 逐条验证: 系统性地逐条验证每条审核规则
- 多工具协作: 根据需要调用相应的MCP工具
- 实时反馈: 每验证完一条规则立即给出结果
- 综合报告: 生成详细的审核报告和改进建议
- 实时输出: 支持流式输出,提供即时的用户反馈
- 状态指示: 清晰显示AI思考、工具调用等状态
- 错误处理: 完善的错误处理和用户提示
- 会话保持: 支持多轮对话和上下文保持
- Python 3.10+
- 操作系统: Windows/Linux/macOS
- 内存: 推荐8GB以上
- 网络连接: 需要访问大语言模型API
- 克隆项目
git clone https://github.com/megemini/AuditAgent.git
cd AuditAgent- 创建虚拟环境
python -m venv venv
source venv/bin/activate # Linux/macOS
# 或
venv\Scripts\activate # Windows- 安装依赖
pip install -r requirements.txt- 配置OpenAI API密钥
- 设置API基础URL
- 选择使用的模型
- 测试连接确保配置正确
- 上传单据审核规则文档(支持TXT、PDF、DOCX格式)
- 或使用内置的示例文档
- 系统自动提取规则并转换为JSON格式
- 查看提取的规则确认准确性
- 连接城市分级查询服务器
- 连接发票识别LLM服务器
- 连接日期时间服务器
- 确认所有服务器连接状态正常
- 输入单据审核相关问题
- 可选择上传发票图片或PDF文件
- 系统基于规则进行智能分析和审核
- 获得详细的审核报告和建议
用户: 差旅费的住宿标准是什么?
系统: 根据单据审核规则,差旅费的住宿标准按城市分级有所不同:
- 一线城市:600元/晚
- 二线城市:500元/晚
- 其余地区统一400元/晚
用户: [上传北京某酒店的发票图片]
用户: 审核一下此张单据
系统: 我将对这张发票进行详细审核...
第一步:发票识别
→ 使用recognize_single_invoice工具识别发票信息
→ 提取信息:金额580元,日期2025-08-20,城市北京
第二步:逐条规则验证
正在验证规则1:差旅费住宿标准
→ 需要查询城市分级 → 调用query_city_tier工具
→ 验证结果:✅ 符合
→ 详细说明:北京属于一线城市,住宿标准为600元/晚,发票金额580元未超出标准
第三步:汇总审核结果
📋 发票审核报告
📊 规则验证结果:
- ✅ 符合规则1:差旅费住宿标准
📈 审核统计:
- 总规则数:1
- 符合规则:1
- 不符合规则:0
🎯 最终结论:发票审核通过
系统集成了多个MCP服务器,提供丰富的工具调用能力:
城市分级工具
query_city_tier: 查询单个城市分级query_multiple_cities: 批量查询多个城市分级get_tier_cities: 获取指定分级的城市列表
发票识别工具
recognize_single_invoice: 识别单张发票recognize_multiple_invoices: 批量识别多张发票get_invoice_template_info: 获取支持的发票模板信息
日期时间工具
get_current_date: 获取当前日期get_current_time: 获取当前时间get_current_datetime: 获取当前日期时间get_datetime_by_timezone: 获取指定时区的日期时间calculate_date_difference: 计算日期差值add_days_to_date: 日期加减天数
系统实现了先进的流式输出机制,提供以下特性:
- 实时状态显示: 显示AI思考、工具调用等状态
- 逐步结果呈现: 逐条显示规则验证结果
- 错误处理: 完善的错误提示和恢复机制
- 会话管理: 支持多轮对话和上下文保持
- 多格式支持: 支持TXT、PDF、DOCX、DOC、JPG、PNG等格式
- 自动清理: 定期清理非当天的上传文件
- 安全访问: 内置文件服务器,确保文件访问安全
- 临时文件: 智能的临时文件管理
- 会话隔离: 每个用户会话独立,数据不互相干扰
- 状态保持: 保持API配置、提取规则等会话状态
- 安全存储: 敏感信息如API密钥安全存储
- 自动清理: 智能的会话生命周期管理
- 本地处理: 所有文件处理都在本地进行
- 临时文件: 上传文件定期自动清理
- 访问控制: 内置文件服务器提供安全的文件访问
- 会话隔离: 用户数据严格隔离
- 密钥管理: API密钥安全存储,不暴露给前端
- 会话绑定: API配置与会话绑定,防止跨会话访问
- 传输加密: 所有API调用使用HTTPS加密传输
- 无数据留存: 处理完成后不保留用户数据
- 匿名处理: 不收集用户个人信息
- 本地部署选项: 支持完全本地化部署
- 先进架构: 基于MCP协议的模块化架构,易于扩展
- 多模态处理: 支持文本、图像、PDF等多种格式
- 智能集成: 无缝集成大语言模型和专业工具
- 流式交互: 提供流畅的实时用户体验
- 提高效率: 自动化单据审核,大幅提升处理速度
- 降低成本: 减少人工审核成本,降低错误率
- 标准化: 确保单据审核的一致性和标准化
- 合规性: 基于规则进行审核,确保合规要求
- 简单易用: 直观的四步操作流程
- 实时反馈: 即时的审核结果和状态显示
- 智能提示: 智能的错误提示和操作指导
- 多轮对话: 支持连续的问答和交互
此智能体可以完全在本地进行部署,并连接本地大模型,确保数据安全和隐私保护。为了方便演示和快速体验,当前版本已修改为适配远端服务器配置。
- 数据安全: 所有数据处理都在本地完成,敏感财务信息不会离开企业网络
- 隐私保护: 无需将数据传输到外部服务器,完全符合数据保护法规要求
- 离线运行: 支持完全离线运行,不依赖外部网络连接
- 定制化: 可根据企业具体需求进行深度定制和优化
- 成本控制: 长期使用成本更低,无需支付API调用费用
- 本地大语言模型服务(如Ollama、LocalAI等)
- 足够的硬件资源(GPU推荐用于模型推理)
- 本地文件存储和处理能力
- 企业内部网络环境
演示说明: 当前演示版本使用远端服务器配置以便于快速体验,在实际生产环境中,建议采用本地部署方案以确保数据安全和合规性。
免责声明: 本项目提供的单据审核规则和审核功能仅供参考学习使用,不构成任何法律或财务建议。实际单据审核制度应根据公司具体情况、行业特点和当地法律法规进行定制。使用本系统前,请务必咨询专业的财务、法律顾问。

