Skip to main content
AI报告系统是一个基于模板驱动的智能报告生成平台,通过集成大语言模型和JSON Schema约束,实现高质量、结构化的报告自动生成。

1.1 核心特性

  • 模板驱动: 基于Word模板,支持书签和占位符动态替换
  • AI增强: 集成大语言模型进行内容润色和结构化提取
  • JSON约束: 使用JSON Schema确保输出格式的一致性和数据完整性
  • 自动化流程: 端到端的报告生成,从模板解析到文件下载

1.2 技术架构

2. 核心组件

2.1 服务层组件

AiReportConfService

报告配置服务接口,定义了报告模板管理的核心业务逻辑:
  • 模板上传与解析
  • 配置信息管理
  • 报告生成协调

AiReportConfServiceImpl

报告配置服务实现类,负责:
  • Word文档解析(书签、占位符识别)
  • AI模型调用与结果处理
  • 模板填充与文件生成

2.2 控制器层

AiReportConfController

报告管理REST控制器,提供以下API端点:

3. 模板管理流程

3.1 模板配置流程

步骤1: 模板文件上传

通过文件服务上传Word模板文件,支持.docx格式。

步骤2: 模板解析

使用parseDoc方法解析Word文档结构:

步骤3: 字段配置

report_marked字段中配置JSON格式的字段映射关系。

步骤4: 模板保存

将解析后的模板信息和配置保存到数据库。

3.2 模板解析功能

系统支持两种类型的占位符:
  • 书签(Bookmark): Word文档中的书签标记
  • 占位符(Placeholder): 自定义的文本占位符

4. 报告生成流程

4.1 请求参数

AiReportCompletionsDTO

4.2 生成流程详解

步骤1: 内容润色(可选)

polish参数为YES时,系统会对用户输入进行AI润色:

步骤2: 结构化数据提取

  1. 构建JSON Schema: 根据模板字段配置构建数据约束
  2. AI模型调用: 使用JSON Assistant模型提取结构化数据
  3. 数据修复: 使用JSONRepairUtil.repair()修复JSON格式

步骤3: 模板填充与下载

将AI生成的结构化数据填充到Word模板中:

5. 提示词模板

5.1 报告润色模板 (report-polish.st)

5.2 系统提示词模板 (report-system-json.st)

5.3 用户提示词模板 (report-user-json.st)