853 lines
24 KiB
Markdown
853 lines
24 KiB
Markdown
# 数据资源盘点系统 - Python 技术人员工作量文档
|
||
|
||
## 📋 文档说明
|
||
|
||
本文档分析数据资源盘点系统中所有涉及大模型技术和需要 Python 开发的功能接口,为 Python 技术人员提供详细的工作量评估和开发任务清单。
|
||
|
||
**文档版本**: v1.0
|
||
**更新日期**: 2025-01-XX
|
||
**适用范围**: 数据资源盘点模块
|
||
|
||
---
|
||
|
||
## 🎯 系统概述
|
||
|
||
数据资源盘点系统是一个企业级数据资产管理平台的核心模块,通过 AI 大模型技术实现智能化的数据资产识别、分析和价值挖掘。系统主要包含 4 个核心步骤:
|
||
|
||
1. **数据盘点 (InventoryStep)**: 智能识别数据资产、PII 敏感信息、重要数据
|
||
2. **背景调研 (ContextStep)**: 收集企业信息,触发场景挖掘
|
||
3. **价值挖掘 (ValueStep)**: AI 推荐潜在应用场景
|
||
4. **成果交付 (DeliveryStep)**: 生成完整的数据资产盘点工作总结报告
|
||
|
||
---
|
||
|
||
## 📊 功能模块分析与工作量评估
|
||
|
||
### 模块一:数据盘点智能分析服务
|
||
|
||
#### 1.1 文档解析服务
|
||
|
||
**功能描述**: 解析上传的数据字典文档(Excel/Word),提取表结构信息
|
||
|
||
**涉及页面**: `InventoryStep.vue` - 方案一(已有文档导入)
|
||
|
||
**Python 开发任务**:
|
||
- **文档解析接口** (`/api/v1/inventory/parse-document`)
|
||
- Excel 文件解析(支持 .xlsx, .xls)
|
||
- Word 文件解析(支持 .doc, .docx)
|
||
- PDF 文档解析(如需要)
|
||
- 表结构信息提取(表名、字段名、字段类型、注释)
|
||
|
||
**技术栈**:
|
||
- `openpyxl` / `pandas` (Excel 解析)
|
||
- `python-docx` (Word 解析)
|
||
- `PyPDF2` / `pdfplumber` (PDF 解析,如需要)
|
||
|
||
**工作量评估**: **5 人日**
|
||
- 接口开发: 2 人日
|
||
- 文档解析逻辑: 2 人日
|
||
- 单元测试和异常处理: 1 人日
|
||
|
||
**输入数据格式**:
|
||
```json
|
||
{
|
||
"file_path": "string", // 上传文件路径
|
||
"file_type": "excel | word | pdf",
|
||
"project_id": "string"
|
||
}
|
||
```
|
||
|
||
**输出数据格式**:
|
||
```json
|
||
{
|
||
"success": true,
|
||
"data": {
|
||
"tables": [
|
||
{
|
||
"raw_name": "t_user_base_01",
|
||
"fields": [
|
||
{
|
||
"raw_name": "user_id",
|
||
"type": "varchar(64)",
|
||
"comment": ""
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"total_tables": 10
|
||
}
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
#### 1.2 SQL 脚本结果解析服务
|
||
|
||
**功能描述**: 解析 IT 执行 SQL 脚本后导出的 Excel/CSV 结果文件
|
||
|
||
**涉及页面**: `InventoryStep.vue` - 方案二(IT 脚本提取)
|
||
|
||
**Python 开发任务**:
|
||
- **SQL 结果解析接口** (`/api/v1/inventory/parse-sql-result`)
|
||
- Excel/CSV 文件解析
|
||
- 提取表名、字段名、字段类型等信息
|
||
|
||
**技术栈**:
|
||
- `pandas` (CSV/Excel 解析)
|
||
|
||
**工作量评估**: **2 人日**
|
||
- 接口开发: 1 人日
|
||
- 数据验证和清洗: 1 人日
|
||
|
||
**输入数据格式**:
|
||
```json
|
||
{
|
||
"file_path": "string",
|
||
"file_type": "excel | csv",
|
||
"project_id": "string"
|
||
}
|
||
```
|
||
|
||
**输出数据格式**: 同 1.1
|
||
|
||
---
|
||
|
||
#### 1.3 业务表导入解析服务
|
||
|
||
**功能描述**: 解析业务人员手动导出的核心业务表(Excel/CSV)
|
||
|
||
**涉及页面**: `InventoryStep.vue` - 方案三(业务关键表导入)
|
||
|
||
**Python 开发任务**:
|
||
- **业务表解析接口** (`/api/v1/inventory/parse-business-tables`)
|
||
- 批量文件解析
|
||
- 表结构识别
|
||
|
||
**技术栈**:
|
||
- `pandas` (批量文件处理)
|
||
|
||
**工作量评估**: **3 人日**
|
||
- 批量文件处理: 2 人日
|
||
- 异常处理和进度反馈: 1 人日
|
||
|
||
**输入数据格式**:
|
||
```json
|
||
{
|
||
"files": ["file_path1", "file_path2", ...],
|
||
"project_id": "string"
|
||
}
|
||
```
|
||
|
||
**输出数据格式**: 同 1.1
|
||
|
||
---
|
||
|
||
#### 1.4 数据资产智能识别服务 ⭐⭐⭐ **核心功能**
|
||
|
||
**功能描述**: 使用大模型识别数据资产的中文名称、业务含义、PII 敏感信息、重要数据特征
|
||
|
||
**涉及页面**: `InventoryStep.vue` - AI 盘点处理阶段
|
||
|
||
**Python 开发任务**:
|
||
- **AI 智能识别接口** (`/api/v1/inventory/ai-analyze`)
|
||
- 表名和字段名中文命名识别
|
||
- 业务含义描述生成
|
||
- PII(个人信息)识别
|
||
- 重要数据识别(符合《数据安全法》)
|
||
- 置信度评分
|
||
|
||
**大模型技术**:
|
||
- **模型选择**: 推荐使用通义千问、文心一言或 GPT-4
|
||
- **提示词工程**: 需要设计专业的提示词模板
|
||
- **少样本学习**: 提供示例数据提升识别准确率
|
||
|
||
**工作量评估**: **15 人日**
|
||
- 大模型集成和调用: 3 人日
|
||
- 提示词工程设计和优化: 5 人日
|
||
- PII 识别规则引擎: 3 人日
|
||
- 重要数据识别规则引擎: 2 人日
|
||
- 置信度评分算法: 1 人日
|
||
- 单元测试和调试: 1 人日
|
||
|
||
**输入数据格式**:
|
||
```json
|
||
{
|
||
"tables": [
|
||
{
|
||
"raw_name": "t_user_base_01",
|
||
"fields": [
|
||
{
|
||
"raw_name": "user_id",
|
||
"type": "varchar(64)",
|
||
"comment": "用户ID"
|
||
},
|
||
{
|
||
"raw_name": "phone",
|
||
"type": "varchar(11)",
|
||
"comment": "手机号"
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"project_id": "string",
|
||
"industry": "string", // 行业信息
|
||
"context": "string" // 业务背景信息
|
||
}
|
||
```
|
||
|
||
**输出数据格式**:
|
||
```json
|
||
{
|
||
"success": true,
|
||
"data": {
|
||
"tables": [
|
||
{
|
||
"raw_name": "t_user_base_01",
|
||
"ai_name": "会员基础信息表",
|
||
"desc": "存储C端注册用户的核心身份信息",
|
||
"fields": [
|
||
{
|
||
"raw_name": "user_id",
|
||
"ai_name": "用户ID",
|
||
"desc": "用户的唯一标识符"
|
||
},
|
||
{
|
||
"raw_name": "phone",
|
||
"ai_name": "手机号",
|
||
"desc": "用户的联系电话",
|
||
"pii": ["手机号"],
|
||
"pii_type": "contact"
|
||
}
|
||
],
|
||
"pii": ["手机号"],
|
||
"important": false,
|
||
"confidence": 98,
|
||
"ai_completed": true
|
||
}
|
||
],
|
||
"processing_time": 5.2
|
||
}
|
||
}
|
||
```
|
||
|
||
**提示词模板设计要点**:
|
||
1. **系统提示词**: 定义 AI 角色为"数据资产管理专家"
|
||
2. **用户提示词**: 包含表结构信息、行业背景、业务上下文
|
||
3. **约束条件**:
|
||
- PII 识别必须符合《个人信息保护法》(PIPL)
|
||
- 重要数据识别必须符合《数据安全法》
|
||
- 置信度评分需考虑字段命名规范度、注释完整性等因素
|
||
4. **少样本学习**: 提供 5-10 个典型示例
|
||
|
||
---
|
||
|
||
### 模块二:场景挖掘智能推荐服务 ⭐⭐
|
||
|
||
#### 2.1 潜在场景推荐服务
|
||
|
||
**功能描述**: 基于企业背景、数据资产清单和存量场景,使用 AI 推荐潜在的数据应用场景
|
||
|
||
**涉及页面**: `ValueStep.vue` - AI 推荐潜在场景清单
|
||
|
||
**Python 开发任务**:
|
||
- **场景推荐接口** (`/api/v1/value/scenario-recommendation`)
|
||
- 基于企业行业、数据资产、存量场景生成推荐场景
|
||
- 场景分类(降本增效、营销增长、金融服务、决策支持等)
|
||
- 推荐指数评分(1-5星)
|
||
- 场景依赖分析(依赖哪些数据资产)
|
||
|
||
**大模型技术**:
|
||
- **模型选择**: 通义千问 / 文心一言 / GPT-4
|
||
- **提示词工程**: 需要设计场景推荐的提示词模板
|
||
|
||
**工作量评估**: **12 人日**
|
||
- 大模型集成和调用: 2 人日
|
||
- 提示词工程设计和优化: 4 人日
|
||
- 场景分类和评分算法: 3 人日
|
||
- 场景依赖关系分析: 2 人日
|
||
- 单元测试和调试: 1 人日
|
||
|
||
**输入数据格式**:
|
||
```json
|
||
{
|
||
"project_id": "string",
|
||
"company_info": {
|
||
"industry": ["retail-fresh"],
|
||
"description": "某连锁生鲜零售企业...",
|
||
"data_scale": "100TB",
|
||
"data_sources": ["self-generated"]
|
||
},
|
||
"data_assets": [
|
||
{
|
||
"name": "会员基础信息表",
|
||
"core_tables": ["Dim_Customer"],
|
||
"description": "存储C端注册用户的核心身份信息"
|
||
}
|
||
],
|
||
"existing_scenarios": [
|
||
{
|
||
"name": "月度销售经营报表",
|
||
"description": "统计各区域门店的月度GMV"
|
||
}
|
||
]
|
||
}
|
||
```
|
||
|
||
**输出数据格式**:
|
||
```json
|
||
{
|
||
"success": true,
|
||
"data": {
|
||
"recommended_scenarios": [
|
||
{
|
||
"id": 1,
|
||
"name": "精准会员营销",
|
||
"type": "营销增长",
|
||
"recommendation_index": 5,
|
||
"desc": "基于用户画像与历史交易行为,实现千人千面的优惠券发放。",
|
||
"dependencies": ["会员基础信息表", "订单流水记录表"],
|
||
"business_value": "提升复购率 15-20%",
|
||
"implementation_difficulty": "中等"
|
||
}
|
||
],
|
||
"total_count": 10
|
||
}
|
||
}
|
||
```
|
||
|
||
**提示词模板设计要点**:
|
||
1. 分析企业行业特点和数据资产价值
|
||
2. 参考存量场景,避免重复推荐
|
||
3. 推荐场景需具有可操作性和商业价值
|
||
4. 推荐指数需综合考虑业务价值、实施难度、数据准备度等因素
|
||
|
||
---
|
||
|
||
#### 2.2 存量场景优化建议服务
|
||
|
||
**功能描述**: 基于存量场景信息和截图,生成优化建议
|
||
|
||
**涉及页面**: `ContextStep.vue` - 生成场景挖掘与优化建议按钮
|
||
|
||
**Python 开发任务**:
|
||
- **场景优化建议接口** (`/api/v1/value/scenario-optimization`)
|
||
- 分析存量场景的不足
|
||
- 提供优化建议和改进方向
|
||
- 识别可提升的价值点
|
||
|
||
**大模型技术**:
|
||
- 支持图片识别(如果上传了场景截图)
|
||
- 文本分析和建议生成
|
||
|
||
**工作量评估**: **8 人日**
|
||
- 大模型集成: 2 人日
|
||
- 图片识别集成(OCR): 2 人日
|
||
- 提示词工程: 2 人日
|
||
- 建议生成算法: 1 人日
|
||
- 测试: 1 人日
|
||
|
||
**输入数据格式**:
|
||
```json
|
||
{
|
||
"existing_scenarios": [
|
||
{
|
||
"name": "月度销售经营报表",
|
||
"description": "统计各区域门店的月度GMV,维度单一",
|
||
"image_url": "string" // 可选,场景截图
|
||
}
|
||
],
|
||
"data_assets": [...],
|
||
"company_info": {...}
|
||
}
|
||
```
|
||
|
||
**输出数据格式**:
|
||
```json
|
||
{
|
||
"success": true,
|
||
"data": {
|
||
"optimization_suggestions": [
|
||
{
|
||
"scenario_name": "月度销售经营报表",
|
||
"current_status": "维度单一,仅统计GMV",
|
||
"suggestions": [
|
||
"增加时间维度分析(同比、环比)",
|
||
"增加商品类别维度分析",
|
||
"增加区域对比分析"
|
||
],
|
||
"potential_value": "提升决策支持能力 30%"
|
||
}
|
||
]
|
||
}
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
### 模块三:数据资产盘点报告生成服务 ⭐⭐⭐ **核心功能**
|
||
|
||
#### 3.1 完整报告生成服务
|
||
|
||
**功能描述**: 基于数据盘点结果、背景调研信息和价值挖掘场景,使用大模型生成完整的数据资产盘点工作总结报告
|
||
|
||
**涉及页面**: `DeliveryStep.vue` - 成果交付页面
|
||
|
||
**Python 开发任务**:
|
||
- **报告生成接口** (`/api/v1/delivery/generate-report`)
|
||
- 生成报告四个章节的完整内容
|
||
- 支持分阶段生成(可选)
|
||
- 报告内容验证和格式化
|
||
|
||
**大模型技术**:
|
||
- **模型选择**: 推荐使用 GPT-4 或通义千问 Max(支持长文本生成)
|
||
- **提示词工程**: 需要设计复杂的多章节报告生成提示词
|
||
- **分阶段生成**: 建议分阶段生成以提高质量和可控性
|
||
|
||
**工作量评估**: **20 人日**
|
||
- 大模型集成和长文本生成: 4 人日
|
||
- 提示词工程(四个章节): 8 人日
|
||
- 报告结构化生成和格式化: 3 人日
|
||
- 数据验证和合规性检查: 3 人日
|
||
- 分阶段生成策略实现: 1 人日
|
||
- 单元测试和调试: 1 人日
|
||
|
||
**输入数据格式**:
|
||
```json
|
||
{
|
||
"project_id": "string",
|
||
"project_info": {
|
||
"project_name": "数据资产盘点项目",
|
||
"industry": "retail-fresh",
|
||
"company_name": "某连锁生鲜零售企业"
|
||
},
|
||
"inventory_data": {
|
||
"total_tables": 14582,
|
||
"total_fields": 245000,
|
||
"total_data_volume": "58 PB",
|
||
"storage_distribution": [
|
||
{
|
||
"category": "供应链物流",
|
||
"volume": "25.4 PB",
|
||
"storage_type": "HDFS / NoSQL"
|
||
}
|
||
],
|
||
"data_source_structure": {
|
||
"structured": 35,
|
||
"semi_structured": 65
|
||
},
|
||
"identified_assets": [
|
||
{
|
||
"name": "消费者全景画像",
|
||
"core_tables": ["Dim_Customer", "Fact_Sales"],
|
||
"description": "客户维度表与销售事实表整合"
|
||
}
|
||
]
|
||
},
|
||
"context_data": {
|
||
"enterprise_background": "某连锁生鲜零售企业...",
|
||
"informatization_status": "使用金蝶云星空作为核心ERP...",
|
||
"business_flow": "数据流贯穿研发、生产、物流与销售全链路..."
|
||
},
|
||
"value_data": {
|
||
"selected_scenarios": [
|
||
{
|
||
"name": "精准会员营销",
|
||
"description": "基于用户画像实现精准营销"
|
||
}
|
||
]
|
||
},
|
||
"options": {
|
||
"language": "zh-CN",
|
||
"detail_level": "standard"
|
||
}
|
||
}
|
||
```
|
||
|
||
**输出数据格式**:
|
||
```json
|
||
{
|
||
"success": true,
|
||
"data": {
|
||
"header": {
|
||
"project_name": "数据资产盘点项目"
|
||
},
|
||
"section1": {
|
||
"enterprise_background": {
|
||
"description": "某连锁生鲜零售企业..."
|
||
},
|
||
"informatization_status": {
|
||
"overview": "集团采取混合云战略...",
|
||
"private_cloud": {
|
||
"title": "私有云部署:保障安全与性能",
|
||
"description": "承载核心稳态业务系统..."
|
||
},
|
||
"public_cloud": {
|
||
"title": "公有云部署:利用弹性计算能力",
|
||
"description": "承载面向消费者的电商前台..."
|
||
}
|
||
},
|
||
"business_data_flow": {
|
||
"overview": "集团的数据流贯穿研发、生产、物流与销售全链路...",
|
||
"manufacturing": {
|
||
"title": "制造端",
|
||
"description": "通过工业物联网(IIoT)网关..."
|
||
},
|
||
"logistics": {
|
||
"title": "物流端",
|
||
"description": "车载 GPS、手持 PDA..."
|
||
},
|
||
"retail": {
|
||
"title": "零售端",
|
||
"description": "记录全渠道交易流水..."
|
||
},
|
||
"data_aggregation": {
|
||
"title": "数据汇聚",
|
||
"description": "上述数据最终汇聚于基于 Greenplum..."
|
||
}
|
||
}
|
||
},
|
||
"section2": {
|
||
"summary": {
|
||
"total_data_volume": "58 PB",
|
||
"total_data_objects": {
|
||
"tables": "14,582 张表",
|
||
"fields": "24.5万+ 字段"
|
||
}
|
||
},
|
||
"storage_distribution": [
|
||
{
|
||
"category": "供应链物流",
|
||
"volume": "25.4 PB",
|
||
"storage_type": "主要存储于 HDFS / NoSQL",
|
||
"color": "blue"
|
||
}
|
||
],
|
||
"data_source_structure": {
|
||
"structured": {
|
||
"percentage": 35,
|
||
"description": "主要是数据库表,价值密度高"
|
||
},
|
||
"semi_structured": {
|
||
"percentage": 65,
|
||
"description": "包含 IoT 日志、文档 (PDF)、影像等,存在巨大的挖掘潜力"
|
||
}
|
||
}
|
||
},
|
||
"section3": {
|
||
"overview": {
|
||
"asset_count": 2,
|
||
"high_value_assets": ["供应链动态库存模型", "消费者全景画像"],
|
||
"description": "本次盘点重点识别出 2项具备价值的数据资产..."
|
||
},
|
||
"assets": [
|
||
{
|
||
"id": "customer360",
|
||
"title": "消费者全景画像",
|
||
"subtitle": "Customer 360",
|
||
"composition": {
|
||
"description": "核心依赖 Dim_Customer(客户维度表)与 Fact_Sales(销售事实表)...",
|
||
"core_tables": ["Dim_Customer", "Fact_Sales"]
|
||
},
|
||
"application_scenarios": {
|
||
"description": "旨在构建 OneID 体系,支持计算客户生命周期价值(CLV)..."
|
||
},
|
||
"compliance_risks": {
|
||
"warnings": [
|
||
{
|
||
"type": "个人信息预警",
|
||
"content": "共识别出 12 项敏感个人信息(SPI),包含生物识别信息(人脸)...",
|
||
"highlights": ["12 项", "敏感个人信息", "SPI"]
|
||
},
|
||
{
|
||
"type": "去标识化风险",
|
||
"content": "Dim_Customer 表中的手机号和身份证号部分字段未进行脱敏处理...",
|
||
"highlights": ["Dim_Customer", "手机号", "身份证号", "脱敏处理"]
|
||
}
|
||
]
|
||
}
|
||
}
|
||
]
|
||
},
|
||
"section4": {
|
||
"compliance_remediation": {
|
||
"title": "合规整改",
|
||
"items": [
|
||
{
|
||
"order": 1,
|
||
"category": "跨境传输",
|
||
"description": "针对涉及重要数据和超过 100 万人个人信息的出境场景,立即申报数据出境安全评估...",
|
||
"code_references": ["重要数据", "个人信息"]
|
||
}
|
||
]
|
||
},
|
||
"technical_evolution": {
|
||
"title": "技术演进",
|
||
"description": "建议从星型架构向湖仓一体 (Data Lakehouse) 架构演进...",
|
||
"technologies": ["Iceberg", "Hudi"]
|
||
},
|
||
"value_deepening": {
|
||
"title": "价值深化",
|
||
"items": [
|
||
{
|
||
"description": "建议优先对全链路库存优化场景进行深入加工,利用机器学习算法...",
|
||
"scenarios": ["全链路库存优化"]
|
||
}
|
||
]
|
||
}
|
||
}
|
||
},
|
||
"metadata": {
|
||
"generation_time": 25.3,
|
||
"model_used": "gpt-4",
|
||
"token_count": 8500
|
||
}
|
||
}
|
||
```
|
||
|
||
**提示词模板设计要点**:
|
||
1. **系统提示词**: 定义 AI 角色为"数据资产管理咨询专家"
|
||
2. **分阶段生成策略**:
|
||
- 阶段一: 生成章节一和章节二(基于盘点数据)
|
||
- 阶段二: 生成章节三(基于识别的数据资产,重点合规风险分析)
|
||
- 阶段三: 生成章节四(基于前面章节的分析结果)
|
||
3. **约束条件**:
|
||
- 统计数据必须准确,基于输入数据
|
||
- 合规风险分析必须符合 PIPL、数据安全法等法规
|
||
- 专家建议必须具体、可执行
|
||
- 文本长度和格式要求
|
||
4. **质量保证**:
|
||
- 数据验证(百分比总和为100%等)
|
||
- 合规性验证(风险分析完整性)
|
||
- 文本质量检查(专业术语使用)
|
||
|
||
**参考文档**: 详见 `docs/数据资产盘点报告-大模型接口设计文档.md`
|
||
|
||
---
|
||
|
||
## 📈 工作量汇总表
|
||
|
||
| 模块 | 功能 | 工作量(人日) | 优先级 | 备注 |
|
||
|------|------|---------------|--------|------|
|
||
| **模块一:数据盘点智能分析** | | | | |
|
||
| 1.1 | 文档解析服务 | 5 | 中 | Excel/Word/PDF 解析 |
|
||
| 1.2 | SQL 结果解析服务 | 2 | 低 | Excel/CSV 解析 |
|
||
| 1.3 | 业务表导入解析服务 | 3 | 中 | 批量文件处理 |
|
||
| 1.4 | 数据资产智能识别服务 | 15 | **高** | **核心功能,大模型** |
|
||
| **小计** | | **25** | | |
|
||
| **模块二:场景挖掘智能推荐** | | | | |
|
||
| 2.1 | 潜在场景推荐服务 | 12 | **高** | **大模型** |
|
||
| 2.2 | 存量场景优化建议服务 | 8 | 中 | 大模型 + OCR |
|
||
| **小计** | | **20** | | |
|
||
| **模块三:报告生成服务** | | | | |
|
||
| 3.1 | 完整报告生成服务 | 20 | **高** | **核心功能,大模型** |
|
||
| **小计** | | **20** | | |
|
||
| **总计** | | **65 人日** | | |
|
||
|
||
---
|
||
|
||
## 🔧 技术架构建议
|
||
|
||
### 3.1 大模型选择建议
|
||
|
||
| 场景 | 推荐模型 | 理由 |
|
||
|------|---------|------|
|
||
| 数据资产识别 | 通义千问 / GPT-4 | 需要准确理解表结构和业务含义 |
|
||
| 场景推荐 | 通义千问 / 文心一言 | 需要理解业务场景和价值 |
|
||
| 报告生成 | GPT-4 / 通义千问 Max | 需要生成长文本,质量要求高 |
|
||
|
||
### 3.2 技术栈建议
|
||
|
||
```python
|
||
# 核心依赖
|
||
fastapi>=0.104.0 # Web 框架
|
||
pydantic>=2.0.0 # 数据验证
|
||
openai>=1.0.0 # OpenAI API (如果使用 GPT)
|
||
dashscope>=1.14.0 # 通义千问 API
|
||
qianfan>=0.1.0 # 文心一言 API
|
||
|
||
# 文档处理
|
||
pandas>=2.0.0 # 数据处理
|
||
openpyxl>=3.1.0 # Excel 处理
|
||
python-docx>=1.1.0 # Word 处理
|
||
pdfplumber>=0.10.0 # PDF 处理(如需要)
|
||
|
||
# 图片处理(OCR)
|
||
paddlepaddle>=2.5.0 # PaddleOCR
|
||
paddleocr>=2.7.0 # OCR 库(如需要)
|
||
|
||
# 工具库
|
||
python-dotenv>=1.0.0 # 环境变量管理
|
||
loguru>=0.7.0 # 日志管理
|
||
redis>=5.0.0 # 缓存(可选)
|
||
celery>=5.3.0 # 异步任务(可选)
|
||
```
|
||
|
||
### 3.3 接口设计规范
|
||
|
||
- **RESTful API 设计**: 遵循 REST 规范
|
||
- **统一响应格式**: 所有接口返回统一格式
|
||
- **错误处理**: 完善的错误码和错误信息
|
||
- **日志记录**: 记录所有 API 调用和异常
|
||
- **限流和熔断**: 防止大模型 API 调用过多导致成本过高
|
||
|
||
---
|
||
|
||
## ⚠️ 注意事项和风险
|
||
|
||
### 4.1 大模型 API 调用成本
|
||
|
||
- **Token 消耗**: 长文本生成会消耗大量 Token,需要优化提示词
|
||
- **API 限流**: 注意各大模型 API 的调用频率限制
|
||
- **成本控制**: 建议实现缓存机制,相同输入复用结果
|
||
|
||
### 4.2 数据隐私和安全
|
||
|
||
- **敏感信息处理**: 确保输入数据中的敏感信息不会泄露
|
||
- **数据脱敏**: 在调用大模型 API 前,对敏感数据进行脱敏处理
|
||
- **API 密钥管理**: 使用安全的密钥管理方案
|
||
|
||
### 4.3 质量保证
|
||
|
||
- **提示词优化**: 需要反复测试和优化提示词,提升生成质量
|
||
- **数据验证**: 对 AI 生成的内容进行验证,确保准确性
|
||
- **人工审核**: 对于重要内容(如合规风险分析),建议加入人工审核环节
|
||
|
||
### 4.4 性能优化
|
||
|
||
- **异步处理**: 对于耗时的 AI 分析任务,使用异步处理
|
||
- **流式输出**: 对于长文本生成,考虑实现流式输出,提升用户体验
|
||
- **缓存策略**: 对相同输入进行缓存,避免重复调用
|
||
|
||
---
|
||
|
||
## 📅 开发计划建议
|
||
|
||
### 阶段一:MVP 版本(4 周)
|
||
|
||
**目标**: 实现核心功能,支持基本的数据盘点和报告生成
|
||
|
||
**任务清单**:
|
||
1. ✅ 文档解析服务(1.1, 1.2, 1.3)- 10 人日
|
||
2. ✅ 数据资产智能识别服务(1.4)- 15 人日
|
||
3. ✅ 完整报告生成服务(3.1)- 20 人日(简化版)
|
||
|
||
**交付物**: 可用的数据盘点和报告生成功能
|
||
|
||
### 阶段二:完善版本(3 周)
|
||
|
||
**目标**: 完善场景推荐功能,优化 AI 生成质量
|
||
|
||
**任务清单**:
|
||
1. ✅ 潜在场景推荐服务(2.1)- 12 人日
|
||
2. ✅ 存量场景优化建议服务(2.2)- 8 人日
|
||
3. ✅ 报告生成质量优化 - 5 人日
|
||
|
||
**交付物**: 完整的场景推荐和优化建议功能
|
||
|
||
### 阶段三:优化版本(2 周)
|
||
|
||
**目标**: 性能优化、质量提升、用户体验优化
|
||
|
||
**任务清单**:
|
||
1. ✅ 提示词优化和 A/B 测试
|
||
2. ✅ 缓存机制实现
|
||
3. ✅ 异步处理和流式输出
|
||
4. ✅ 单元测试和集成测试
|
||
|
||
**交付物**: 高性能、高质量的完整系统
|
||
|
||
---
|
||
|
||
## 📝 接口文档模板
|
||
|
||
### 示例:数据资产智能识别接口
|
||
|
||
```python
|
||
from fastapi import FastAPI, UploadFile, File
|
||
from pydantic import BaseModel
|
||
from typing import List, Optional
|
||
|
||
app = FastAPI()
|
||
|
||
class FieldInfo(BaseModel):
|
||
raw_name: str
|
||
type: str
|
||
comment: Optional[str] = ""
|
||
|
||
class TableInfo(BaseModel):
|
||
raw_name: str
|
||
fields: List[FieldInfo]
|
||
|
||
class AnalyzeRequest(BaseModel):
|
||
tables: List[TableInfo]
|
||
project_id: str
|
||
industry: Optional[str] = None
|
||
context: Optional[str] = None
|
||
|
||
class AnalyzeResponse(BaseModel):
|
||
success: bool
|
||
data: Optional[dict] = None
|
||
error: Optional[dict] = None
|
||
|
||
@app.post("/api/v1/inventory/ai-analyze", response_model=AnalyzeResponse)
|
||
async def ai_analyze(request: AnalyzeRequest):
|
||
"""
|
||
数据资产智能识别接口
|
||
|
||
使用大模型识别数据资产的中文名称、业务含义、PII 敏感信息、重要数据特征
|
||
"""
|
||
try:
|
||
# 1. 构建提示词
|
||
prompt = build_analyze_prompt(request.tables, request.industry, request.context)
|
||
|
||
# 2. 调用大模型 API
|
||
result = await call_llm_api(prompt)
|
||
|
||
# 3. 解析和验证结果
|
||
analyzed_data = parse_llm_response(result)
|
||
validated_data = validate_analysis_result(analyzed_data)
|
||
|
||
return AnalyzeResponse(success=True, data=validated_data)
|
||
except Exception as e:
|
||
return AnalyzeResponse(
|
||
success=False,
|
||
error={"code": "ANALYZE_ERROR", "message": str(e)}
|
||
)
|
||
```
|
||
|
||
---
|
||
|
||
## 🔗 相关文档
|
||
|
||
- [数据资产盘点报告-大模型接口设计文档](./数据资产盘点报告-大模型接口设计文档.md)
|
||
- [前端开发规范](./前端开发规范.md)
|
||
- [Vue 迁移完整方案](./Vue迁移完整方案.md)
|
||
|
||
---
|
||
|
||
## 📞 联系方式
|
||
|
||
如有疑问或需要技术支持,请联系:
|
||
- **Python 技术负责人**: [待填写]
|
||
- **大模型技术顾问**: [待填写]
|
||
- **项目负责人**: [待填写]
|
||
|
||
---
|
||
|
||
## 📅 更新记录
|
||
|
||
| 版本 | 日期 | 更新内容 | 作者 |
|
||
|------|------|---------|------|
|
||
| v1.0 | 2025-01-XX | 初始版本创建 | AI Assistant |
|
||
|
||
---
|
||
|
||
## ✅ 待办事项
|
||
|
||
- [ ] 确认大模型 API 选择(通义千问 / 文心一言 / GPT-4)
|
||
- [ ] 设计详细的提示词模板
|
||
- [ ] 确认数据格式和接口规范
|
||
- [ ] 搭建开发环境和测试环境
|
||
- [ ] 制定详细的开发计划和时间表
|
||
- [ ] 确定成本预算(大模型 API 调用费用)
|