Kaifeng S

AI智能体实习

实习期间开发的工具集,分两条主线:数据分析与工程图表工具集(DEMO1/2/3 + UML),以及多模态 AI 模型部署实践(Demo5)。前者围绕结构化数据分析、文档处理和工程图表渲染展开,各模块在同一条数据流上衔接;后者把多个开源多模态模型以 Docker 容器化方式部署起来,覆盖语音、图像、音视频和分割等任务。

项目组成

  • DEMO1 数据分析工具箱:数据预处理、描述性统计、推断统计、机器学习、空间插值、统计方法推荐。
  • DEMO2 GIF 压缩工具:针对 GIF 的多档压缩实现。
  • DEMO3 文档处理工具箱:Word、Excel、PDF 的读取、脱敏、加密、水印、格式转换,以及 Word 拆分、合并和模板填充。
  • UML 图表渲染器:把结构化 JSON 配置转成 UML、流程图、架构图等图表,导出 SVG/PNG。
  • Demo5 多模态 AI 模型部署实践:TTS、ASR、图像生成与 OCR、音视频与音效生成、SAM3 分割,均容器化部署。

整体数据流大致是:原始文档经 DEMO3 读取或转换,进入 DEMO1 的统一 JSON 结构,再走统计与机器学习分析;分析结果由可视化层产出 PNG/HTML 报表;UML 渲染器则独立服务于工程文档的图表生成。

DEMO1 数据分析工具箱

面向结构化表格数据的分析工具箱,从原始表格到分析结果一条龙打通,并配套函数级 input/output 测试用例。所有统计和机器学习函数都基于一套统一的 JSON 数据结构运行(包含 header 字段顺序、fields 字段类型与角色、data 行数据),字段类型涵盖 continuous、binary、categorical、ordinal、date,字段角色涵盖 predictor、outcome、identifier、none。

主要模块:

  • 数据预处理:表格转统一 JSON、清洗、字段标注、降维判断、Bootstrap 判断、降维执行。
  • 文档预处理:Word/Excel/PDF 的脱敏、加密、格式转换、读取、水印、拆分合并与模板填充。
  • 描述性统计:连续变量统计、分类变量频数、正态性检验、Bootstrap 置信区间。
  • 推断统计:t 检验、z 检验、单/双因素方差分析、卡方检验、Fisher 精确检验、相关性分析、点估计与区间估计。
  • 机器学习:决策树、随机森林、SVM、XGBoost、Lasso 回归、多元线性回归、二元/多分类/有序 Logistic 回归、K-Means 与层次聚类。
  • 方法推荐:根据字段类型和角色推荐适合的分析方法。
  • 空间插值:载荷校验、区域分类、插值计算。
  • 可视化:统一消费上游各模块的结果 JSON,批量产出三线表 PNG 和指标图。

DEMO2 GIF 压缩工具

针对 GIF 的压缩实现,提供多档压缩策略,包含三组实现和对应的压缩产物样例,便于对比压缩率与画质损失。

DEMO3 文档处理工具箱

面向 Word、Excel、PDF 的文档处理工具,功能按处理类型分目录组织:

  • 脱敏:Word、Excel、PDF 敏感信息处理,共用一份脱敏规则。
  • 加密:Word、Excel、PDF 加密。
  • 格式转换:Word/Excel/PDF 互转。
  • 读取:Excel 工作簿解析、Word 文档解析、Word 字段索引。
  • 水印:文字水印和图片水印,支持 Word/Excel/PDF。
  • Word 拆分合并填充:按标题拆分、多文档合并、按字段模板填充表格。

其中 Word/Excel 的加密、转换和前景水印依赖 Microsoft Office + pywin32,其余走纯 Python 路径。测试数据按”模块/子模块/函数/case 文件”组织,输入输出一一对应。

UML 图表渲染器

把结构化 JSON 配置转成 UML、流程图、架构图等工程图表,导出 SVG 和 PNG。支持活动图、用例图、时序图、类图、对象图、组件图、部署图、包图、协作图、状态图、甘特图、横向/纵向泳道图、流程图、系统架构图、鱼骨图等十余种图表。多数核心渲染逻辑为项目内自绘 SVG,不依赖外部图表库;导出 PNG 时借助 Playwright 截图。

测试约定

所有测试按 input/output 对账模式执行:读取输入 case,调用对应函数,再和同名期望输出比较。每个函数维护约 10 个 case,覆盖正常输入、边界数据和异常输入(异常场景用 expected_exception 记录期望异常)。源码模块目录只放可复用代码,测试脚本单独组织。

技术栈

数据分析与工程图表部分:

  • 语言:Python 3.10+
  • 数据与统计:pandas、numpy、scipy、scikit-learn、xgboost、statsmodels
  • 文档处理:python-docx、openpyxl、pypdf、pywin32(Office 依赖功能)
  • 图表渲染:Playwright、Graphviz(可选)
  • 测试:unittest,按模块和函数组织

多模态 AI 部署部分:

  • 容器化:Docker,每个模型项目带各自的 Dockerfile
  • 服务化:FastAPI、Gradio(提供 API 和 Web UI)
  • 模型推理:各开源模型原生推理代码(IndexTTS、Qwen3-TTS、FunASR、Qwen-Image-Layered、GLM-OCR、RMBG-2.0、ACE-Step、HunyuanVideo-Foley、SAM3)

项目收获

这个项目把数据分析、文档处理、工程可视化和多模态模型部署串成了两条主线。实习期间主要做了几件事:把杂乱的表格数据收敛成一套统一 JSON 结构,让统计和机器学习模块能共用输入;按函数粒度拆分测试并维护 input/output 对账用例,保证每个分析函数可单独验证、可复现;把文档处理能力从分析流程里剥离成独立模块,避免读写逻辑和分析逻辑耦合;用 JSON 配置驱动 UML 图表生成,让工程文档的图表可以程序化产出而不是手工绘制;在多模态模型侧,把多个开源大模型统一用 Docker 容器化部署,规范了模型权重、推理代码和服务的目录关系,让本地和团队复用都能直接拉起服务。

Demo5 多模态 AI 模型部署实践

一组开源多模态模型的本地部署实践,按任务类型分目录,每个项目都带 Dockerfile,以容器化方式提供 API 或 Web UI。顶层目录只做分类,项目内部结构保持原样,避免破坏各自相对路径。

01_TTS 语音合成

文本转语音、音色克隆相关。主工作目录基于 IndexTTS,含 checkpoints、webui 和 API 服务代码;另有 Qwen3-TTS 项目和 Qwen3-TTS-12Hz 模型。

02_ASR 语音识别

音频转文字。基于 FunASR,包含项目代码、示例和 Fun-ASR-Nano-2512 模型目录。

03_Image 图像

图像生成、OCR 识别、背景移除。

  • Qwen-Image-Layered:分层图像生成项目,含 transformer、text_encoder、vae、tokenizer。
  • GLM-OCR:OCR 服务。
  • RMBG-2.0:背景移除/抠图,FastAPI 服务;代码默认通过相对路径或 MODEL_PATH 加载权重。

04_AudioVideo 音视频

音频生成、音乐生成、视频配音效。

  • ACE-Step-1.5:音乐生成项目。
  • HunyuanVideo-Foley:给视频生成/匹配音效。

05_DockerEnv 通用 Docker 环境

不归属单一模型的通用部署辅助,放 Qwen 相关 Docker 环境文件。

06_SAM 分割

SAM3 分割模型的容器化部署,含推理代码、权重和构建上下文。

部署约定

  • 模型权重目录和推理代码目录分开存放,代码通过相对路径或环境变量加载权重。
  • 每个模型项目独立一个 Dockerfile,构建时按需把代码目录和权重目录一起复制进镜像。