生成式 AI

AI 写代码这件事,收益主要在「重复劳动」上

复杂业务逻辑还是靠人。但样板代码、单元测试、接口文档、代码评审的初筛,AI 做得又快又便宜。

场景与实测收益

场景做法实测效果
样板代码生成CRUD、DTO、配置类由 AI 生成该类工作耗时降 50%-70%
单元测试补齐对存量代码批量生成测试用例覆盖率从 40% 提到 70%+
代码评审初筛PR 自动检查规范、空指针、SQL 注入等人工评审时间降约 40%
接口文档同步从代码注解生成并校验 OpenAPI文档过期问题基本消除
日志与错误分析把异常栈丢给 AI 做初步归因排障定位速度明显提升
遗留代码理解让 AI 解释老代码并生成注释新人接手周期缩短
SQL 优化建议结合执行计划给出索引建议作为初筛,仍需 DBA 确认

CI 里接入 AI 代码评审

yaml .github/workflows/ai-review.yml
name: AI Code Review

on:
  pull_request:
    types: [opened, synchronize]

permissions:
  contents: read
  pull-requests: write
  id-token: write            # 用 OIDC 换 AWS 凭证,不放长期密钥

jobs:
  review:
    runs-on: ubuntu-latest
    timeout-minutes: 10
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - name: Configure AWS credentials
        uses: aws-actions/configure-aws-credentials@v4
        with:
          role-to-assume: ${{ secrets.AWS_REVIEW_ROLE_ARN }}
          aws-region: ap-northeast-1

      - name: Collect changed files
        id: diff
        run: |
          # 只审查代码文件,跳过锁文件与生成物
          git diff --name-only origin/${{ github.base_ref }}...HEAD \
            | grep -E '\.(py|ts|tsx|js|java|go)$' \
            | grep -vE '(package-lock|yarn\.lock|\.generated\.)' > changed.txt || true
          echo "count=$(wc -l < changed.txt)" >> "$GITHUB_OUTPUT"

      - name: Run AI review
        if: steps.diff.outputs.count != '0'
        env:
          PR_NUMBER: ${{ github.event.pull_request.number }}
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: python scripts/ai_review.py --files changed.txt --pr "$PR_NUMBER"

      - name: Skip notice
        if: steps.diff.outputs.count == '0'
        run: echo "本次改动无需 AI 评审"

关键是限定范围:只审查改动的代码文件,跳过锁文件和生成代码,否则 token 消耗会很夸张。

别让 AI 评审变成阻塞

AI 评审的定位是「初筛助手」,给建议而不是卡门禁。我们的实践是让它以评论形式提出建议,人工评审时参考。如果设成必须通过才能合并,团队很快就会因为误报而反感这套工具。

下一步

把云的复杂度交给我们,你只管做业务

留下需求,沐杉云的解决方案架构师会在一个工作日内联系你,提供免费的现状评估、迁移方案草案与 TCO 测算表。