Experience

实习经历

海康威视(Hikvision)

2026.07 – 2026.09

EBG 软件产品部 · 安全生产开发组 · 软件开发实习生(Java 后端 + AI 智能体应用方向)

负责安全生产管理平台中 AI 智能体能力包开发,打通「自然语言 → 意图路由 → 工具调用 → 后端 API → 前端卡片」全链路。

项目一:企业安全生产智能体能力包开发

用 Go 写 CLI 作为「智能体的手」,用声明式配置(manifest / tools / cards / skills)实现路由、编排、调用与渲染;负责声明层与 CLI 层。

  • 南海海缆安全智能体告警分析资源包(核心 / 独立负责):用 Go + Cobra 实现 6 大数据分析命令族——区域安全总结、近 1 周 TOP、跨区域风险排序、近 N 周趋势、闭环率与责任人、全厂未整改 / 逾期统计,面向一线员工 / 班组长 / 生产经理 / 安环经理输出差异化结论。
  • 通过平台元数据驱动路由(配置即代码)+ 动态 SQL 基于告警事件表做条件化统计;封装 Cookie / Token 双认证与 CAS / CASTGC 单点登录,支持递归解析用户权限区域树、双周窗口环比、逾期时长精确计算。
  • 智能巡检能力资源包:设计 manifest.json / tools.json / cards.json / skills/*.md 四类声明文件实现意图路由与 AI 工作流编排;开发巡检计划创建与远程巡检任务执行等 CLI 命令,跨平台交叉编译 Windows / Linux 二进制随包分发;编写 Skill 编排实现「多步确认链 + 关键词互斥分流 + 防 AI 臆造」。
  • SQL 能力包:补 SQL 安全校验器,仅放行 SELECT,拦截写操作与 UNION / JOIN / 子查询,tokenizer 词法分析 + 关键字 / 函数 / 表 / 列白名单 + 单表单语句 + LIMIT 封顶;用 go:embed 内嵌 schema / caliber 兜底配置,解决平台工作目录非能力包目录导致配置找不到的问题。
  • 统一 JSON 信封:{ok, command, data, meta} 无条件输出、日志走 stderr,避免 stdout 混入人类可读文本导致大模型解析失败、静默返回空结果。
  • 联调方法论:平台接口文档不全,靠浏览器 HAR 抓包 + Postman 复现拿到真实入参出参再固化进 CLI;路由冲突用 strongRule / keywords / priority 三层规则消歧,复测 route-samples 的编译非法 / 真冲突 / 关键词兜底偏移三项归零。

项目二:企业安全生产管理平台一体机定制 · 安全监测预警中心(Java 方向)

基于 iMOWSA 组件开发告警事件订阅与事件类型查询模块(alertcenter),Spring Boot 三层单向调用,本模块不落本地库、读写全走平台服务 HTTP 接口。

  • 事件类型查询接口:把上游返回的四层嵌套事件类型树(能力集 → 资源类型 → 事件类型组 → 具体事件)拍扁为数组,用 indexCode(@ 拼接完整路径)与 parentCode 表达层级,前端可懒加载子树;按业务只放行视频 / AI / 人脸识别三类能力集。
  • 单参数双语义:订阅接口用单个 leaf 参数同时承载「查类型组本身」(endsWith)与「查该组下所有叶子」(startsWith)两种语义,参数复杂度留在服务端。
  • 危险源告警事件订阅(查询 / 保存 / 删除):alertcenter 模块共 12 个接口、10 个 Service 方法,本人负责事件类型与订阅两块(4 个接口、4 个 Service 方法 + 2 个私有工具方法)。
  • 一致性与幂等:订阅写入为「全量覆盖」语义,天然幂等;写入顺序「先插新再删旧」,把最坏情况从「丢数据」降到「残留重复」;插入失败抛异常、删除失败仅记日志,残留重复由下次保存自愈。
  • 明确不依赖 @Transactional:PDMS 是走 HTTP 的远端服务,Spring 本地事务管不了远端写入,属分布式一致性问题,更彻底的做法是推动对端提供原子批量替换接口。
Go 1.23CobraJavaSpring BootRESTful APICAS / CASTGC 认证JSON 信封协议大模型 Agent工具调用Skill 编排声明式路由动态 SQLGit

联通数据智能

2026.04 – 2026.06

后端组 · 后端开发实习

参与纪检监察案件智能辅助系统后端,负责大模型提示词优化、阅卷笔录状态检查接口与 Word 报告生成,打通「卷宗上传 → OCR → 要素抽取 → 文书生成」链路。

项目:纪检监察案件智能辅助系统

双服务职责切分:Java(Spring Boot 3.5)是对外唯一入口(业务管理、结果落库、文书生成、任务调度),Python(Flask)专注模型能力(OCR、要素抽取、定性量纪),两者 HTTP / SSE 交互、共用同一个 PostgreSQL。

  • 大模型提示词优化与结构化输出:用 Pydantic 定义输出结构、model_validate_json 一步完成解析与校验,把模型自由文本约束成固定字段;提示词补上角色说明、3–5 组少样本示例与思维链引导,易错字段用自洽性技术(多次采样、多数投票)兜底,提升办案要素抽取准确率。
  • 阅卷笔录运行状态检查接口(AIOps 方向):开发一组检查接口,按案件统计各环节生成结果是否成功,失败时回查库中是否有审查调查报告,以区分「材料缺失」与「模型出错」,并判断是否属于卷宗打标错误;在 test1 环境按实际数据联调,记录影响生成成功率的几类原因供后续排查。
  • Word 报告生成改造:修复审理报告一级标题写死的问题,改为按 review_trial_report 表「标题|内容」结构动态提取;在阅卷笔录中新增涉案人员履历表,把模型给出的时间段归一化后按时间排序填表;按公文规范调整 Word 模板的字体、缩进与标题层级。
  • 卷宗打标规则排查:修复 file_slices 表 subject / category_id 打标错误导致报告缺项的问题,修改 file_categories 打标规则,减少因文件分类错误引起的报告内容缺失。
  • OCR 接口与报告问题排查:参与 OCR 相关接口的部分开发;梳理谈话笔录生成不规范的改造方案(Python 侧把修正结果落新表、Java 侧生成时读修正内容,使两侧解耦,该改造在实习结束时未实施)。
Java 21Spring Boot 3.5Spring Data JPAQueryDSLPythonFlaskPydanticOpenAI 兼容接口PostgreSQLRedisRabbitMQWebClient / SSEApache POI