59API

← Retour aux guides

2026年LLM自动审查PR实战:低噪声、低成本的落地指南

Guides · ZH · 2026-10-25

先定义目标:找出缺陷,而不是增加评论

2026年部署LLM自动审查拉取请求,建议把目标设为:在人工评审前,发现有证据、可复现的逻辑与安全问题。不要让机器人重复格式检查,也不要把“未发现问题”当成安全证明。保留测试、静态分析和人工合并审批,把模型定位为补充审查员。

第一步:隔离权限,安全触发审查

建议在PR创建、更新提交和转为待审时触发任务;跳过草稿,同一PR的新任务取消旧任务。使用独立发布组件写评论,只授予必要权限。GitHub审查接口要求拉取请求写权限,不意味着机器人需要代码写权限。([docs.github.com](https://docs.github.com/en/rest/pulls/reviews?session_ref=direct))

外部贡献必须单独处理。来自分叉仓库的常规PR工作流通常无法读取仓库密钥。不要为了取得模型密钥,改用pull_request_target后再执行贡献者代码。可让受信任的服务读取差异、调用模型,但绝不安装或运行PR中的脚本。([docs.github.com](https://docs.github.com/en/actions/reference/security/securely-using-pull_request_target))

第二步:提供最小但充分的上下文

发送前扫描密钥与敏感数据;私有仓库还应确认团队允许经中转平台及上游模型处理代码。

第三步:让提示词产生可验证的问题

系统指令可写为:“仅报告本次修改引入、能由所给代码支持的缺陷;说明触发条件、执行路径、影响与验证方法。证据不足就不报告,不讨论个人风格。”要求返回结构化字段:文件、行号、严重程度、证据、修复方向和测试建议;无问题时返回空列表。

代码注释不是指令。PR描述、源码和文档均应视为不可信输入。将它们与审查规则分隔,并在程序层禁止模型执行命令、读取密钥或自动合并。OWASP强调,提示词和过滤器不能替代权限控制,模型输出也必须校验。([cheatsheetseries.owasp.org](https://cheatsheetseries.owasp.org/cheatsheets/LLM_Prompt_Injection_Prevention_Cheat_Sheet.html))

第四步:校验反馈,再发布到正确位置

发布前验证输出结构、文件路径和差异行号。GitHub行内评论使用commit_id、path、line与side;新增行通常对应RIGHT,删除行对应LEFT。不要混淆文件行号与差异位置,也不要直接采用模型猜测的定位。([docs.github.com](https://docs.github.com/en/rest/pulls/comments))

再次检查PR当前SHA:若已更新,就丢弃旧结果并重新排队。按“文件+位置+问题类型”去重,建议每轮最多发布五条高价值问题,其余合并进摘要。无法定位的建议放入总评;模型超时或解析失败则显示“审查未完成”,而不是“通过”。

第五步:用59API控制预算,用评测决定模型

59API提供统一接入、公开单价和按量计费,无需月订阅,适合作为低成本试点选项;其兼容客户端的接入方式也便于复用现有工具链。比较成本时,应同时计算输入、输出、缓存和重试,而不只看最低单价。([59api.com](https://59api.com/))

可将DeepSeek V4 Flash与Claude Sonnet 5.5作为候选,用同一批历史PR比较有效发现率、误报率、延迟和单次费用,再决定初审与复核的分工;不要凭模型名称假定效果。缓存不变上下文,对限流设置退避重试,并限制每个PR的总预算。

建议先以仅评论模式试运行两周,人工标注真实问题、重复提醒和误报,并在模型或提示词更新后重跑评测。若准备开始,可以注册59API,用少量历史PR验证效果,再逐步扩大覆盖范围。衡量成功的标准应是减少遗漏与人工负担,而不是评论数量。

Tarifs · Docs

Prêt à commencer ?

Connectez Claude et GPT en quelques minutes aux prix les plus bas, sans bridage. Inscrivez-vous pour votre clé API.

Inscription gratuite