Skip to content

MarkMoskt/Word-Report-Generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📝 智能报告生成器 (ReportGenerator)

AI-Powered Intelligent Report Generator with RAG Knowledge Base

基于大语言模型 + RAG 知识库的智能报告生成工具,支持实验报告、调研报告、学术报告等多种类型文档的一键生成。

Python PyQt6 LLM License

功能特性 · 快速开始 · 使用指南 · 技术架构 · 更新日志


✨ 功能特性

🤖 AI 智能生成

  • 集成 智谱AI GLM-4-Flash 大模型(免费额度 2500万 Tokens)
  • 每个实验仅调用 1 次 API,大幅节约 Token 消耗
  • 自动回退机制:API 不可用时无缝切换到模板生成

📚 RAG 知识库

  • 导入历史 Word 报告,自动学习格式和内容结构
  • 生成结果可 回传到知识库,持续提升后续生成质量
  • 支持审计版本提交:用户修改后的版本可重新入库学习

📏 字数规模控制

  • 预设档位:5000 字 / 10000 字 / 20000 字
  • 支持自定义任意字数
  • 自动补充机制:字数不足时智能填充相关内容

🎨 精美 UI

  • 基于 PyQt6 的现代化桌面应用
  • 实时进度显示,LLM 状态即时反馈
  • 深色主题,专业美观

📄 多类型支持

报告类型 说明
实验报告 包含实验环境、目的、步骤、结果分析、总结等完整结构
论述报告 包含研究背景、文献综述、核心论点、案例分析、结论等
调研报告 自动根据题目生成对应的调研框架

🚀 快速开始

方式一:下载 exe 直接运行(推荐)

  1. 下载 ReportGenerator-v1.0.0.exe(44.6 MB,单文件,无需安装)
  2. 双击运行
  3. 输入报告题目,点击"生成报告"

📦 所有历史版本见 Releases 页面

方式二:从源码运行

# 克隆仓库
git clone https://github.com/MarkMoskt/Word-Report-Generator.git
cd Word-Report-Generator

# 安装依赖
pip install PyQt6 python-docx requests

# 运行
python main.py

获取 API 密钥(可选,用于启用 AI 智能生成)

  1. 访问 智谱AI 开放平台 注册账号
  2. 进入控制台 → API 密钥管理 → 创建新密钥
  3. 将密钥粘贴到软件的 API 密钥输入框中

💡 不输入 API 密钥也能使用! 软件会自动回退到模板生成模式,生成结构完整的报告。


📖 使用指南

基本流程

输入题目 → 选择报告类型 → 设置字数规模 → (可选)导入参考Word → 生成报告

高级功能

1. 导入参考 Word 文档

  • 点击"导入 Word"按钮,选择参考文档
  • 软件会自动解析文档结构,作为需求输入
  • 结合 RAG 知识库,生成更贴合需求的报告

2. RAG 知识库回传

  • 报告生成完成后,弹出回传确认对话框
  • 选择 "审计版本提交":将修改后的 Word 文件提交到知识库
  • 后续生成会自动参考已提交的文档

3. 字数控制

  • 在"报告规模"下拉菜单中选择预设档位
  • 选择"自定义"可输入任意目标字数
  • 软件会自动确保最终字数达标(误差 < 10%)

🏗️ 技术架构

系统架构

┌─────────────────────────────────────────────┐
│                  PyQt6 UI                    │
│  ┌──────────┐ ┌──────────┐ ┌─────────────┐ │
│  │ 简易模式  │ │ 复杂模式  │ │ 回传确认界面 │ │
│  └────┬─────┘ └────┬─────┘ └──────┬──────┘ │
├───────┴────────────┴─────────────┴─────────┤
│              Report Engine                   │
│  ┌──────────┐ ┌──────────┐ ┌────────────┐ │
│  │ 模板构建  │ │ 内容生成  │ │ 格式检查    │ │
│  └────┬─────┘ └────┬─────┘ └──────┬──────┘ │
├───────┴────────────┴─────────────┴─────────┤
│  ┌──────────┐  ┌──────────┐  ┌────────────┐ │
│  │LLM Client│  │Doc Parser│  │ RAG Library│ │
│  │(GLM-4)   │  │(python-  │  │ (Knowledge │ │
│  │          │  │ docx)    │  │   Base)    │ │
│  └──────────┘  └──────────┘  └────────────┘ │
└─────────────────────────────────────────────┘

生成流程

Word 解析 → 需求提取 → RAG 检索 → 模板构建 → AI 填充 → 格式检查 → Word 输出 → 回传学习

项目结构

ReportGenerator/
├── main.py              # 主程序入口(PyQt6 UI,含简易/复杂双模式)
├── report_engine.py     # 报告生成引擎(模板构建 + 内容填充 + 格式检查)
├── llm_client.py        # 大模型 API 客户端(GLM-4-Flash,批量生成)
├── doc_parser.py        # Word 文档解析器(格式学习 + 内容提取)
├── app_icon.ico         # 应用图标
├── rag_library/         # RAG 知识库目录(用户提交的文档)
└── README.md            # 项目说明

核心模块

模块 职责
main.py PyQt6 前端,包含简易模式和复杂模式两个页面
report_engine.py 核心引擎:模板构建、内容生成、格式检查、字数控制
llm_client.py LLM 客户端:API 调用、批量生成、错误处理、自动回退
doc_parser.py 文档解析:Word 解析、模板学习、格式提取

🔄 更新日志

v1.0.0 (2026-06-13)

  • 🎉 初始版本发布
  • ✅ 支持实验报告、论述报告两种类型
  • ✅ 集成智谱AI GLM-4-Flash 大模型
  • ✅ RAG 知识库持续学习
  • ✅ 字数规模控制(5000/10000/20000/自定义)
  • ✅ 生成结果回传确认界面
  • ✅ 实时 LLM 状态反馈
  • ✅ 单文件 exe 打包

📄 许可证

本项目基于 MIT License 开源。


👨‍💻 作者

张文瑞

欢迎提交 Issue 和 Pull Request!