背景: 在阅读这篇文章:mp.weixin.qq.com/s/6sP3rHIfF…
里边提到关键实践:建立"AI代码审查清单",每次使用AI生成代码后都要过一遍这个清单。
然后我想了下,确实不错,按照《清单革命》里的思路,确实需要搞一个清单。
以下是一份AI代码审查清单(AI Code Review Checklist) ,分为通用部分 + 针对 AI 应用的特定部分,适用于前后端、算法、模型、Prompt 工程等类型项目。
🧩 一、通用工程质量
✅ 1. 可读性
- 命名语义清晰(变量、函数、类、文件)
- 函数/类职责单一,不超过必要复杂度
- 有必要的注释、docstring、类型标注
- 模块结构合理(分层、分包、依赖清晰)
✅ 2. 代码风格
- 符合语言规范(PEP8 / ESLint / Prettier / Rustfmt等)
- 缩进、空格、行宽、引号统一
- Magic number、硬编码是否清理
- 日志等级合适(debug/info/warn/error)
✅ 3. 健壮性与异常处理
- 错误捕获完整,避免程序崩溃
- 使用自定义异常类型而非通配符异常
- 网络/文件/数据库操作有重试或超时机制
- 边界输入、空值、异常路径均有测试
✅ 4. 安全性
- 用户输入是否经过校验/过滤
- 敏感信息(key/token/password)未硬编码
- 外部API调用有速率限制与安全存储
- 日志中未输出隐私或模型参数
✅ 5. 性能
- 主要循环/IO/模型推理路径有profiling数据
- 数据结构选择合理(避免 O(n²))
- 缓存、批处理、异步机制使用恰当
- 模型调用/推理延迟可控
🤖 二、AI特定部分
✅ 6. 模型调用与推理
- 模型输入输出格式定义明确
- 有错误重试与超时机制(尤其是API调用)
- 版本号与模型ID固定,避免隐式漂移
- 模型权重或调用参数未泄露
✅ 7. Prompt 与指令设计(LLM类项目)
- Prompt 有版本与注释说明
- 指令边界清晰,防止越权或注入
- 输出结果有验证或后处理
- 用户上下文安全(不暴露隐私、不带入系统提示)
✅ 8. 数据处理与训练逻辑
- 训练/推理数据来源合法且文档化
- 数据预处理逻辑可复现
- 标签/样本分布平衡合理
- 随机性受控(随机种子固定)
✅ 9. 评测与验证
- 评测指标明确(准确率、BLEU、MSE、F1等)
- 有对照实验或基线
- 自动化测试覆盖核心路径(例如inference、API封装)
- 有错误示例与回归检查机制
✅ 10. 合规与伦理
- 模型输出内容合规(避免歧视、虚假信息)
- 明确声明AI参与生成或决策
- 数据与模型遵循许可证要求
- 用户可追溯来源与决策解释(Explainability)
🧠 三、AI工程项目附加建议
🧾 文档与版本
- README包含运行方式、依赖、环境、模型说明
- requirements/conda文件锁定版本
- 模型配置与Prompt配置分离
- CI/CD中有lint + test + deploy检查
🧮 测试专项
- Unit test:核心算法逻辑
- Integration test:数据流 & 模型调用
- Regression test:输出变化检测
- 负面测试:Prompt注入、防越权输入
是否希望我帮你生成一个 可复用模板(Markdown / Excel 格式) ?
比如:
- ✅ Markdown:用于代码审查文档或GitHub PR模板
- ✅ Excel:每行一项,可打勾评分(适合团队用)