尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

AI Agent成本治理实战:Uber如何实现70% PR参与与账单零增长

AI Agent成本治理实战:Uber如何实现70% PR参与与账单零增长 最近一年多AI 编程助手在企业里几乎成了标配。但很多技术负责人的感受是团队确实在用效率也确实提了一点可月底一看账单API 费用翻了几倍。更麻烦的是你很难说清楚这些钱到底换回了几个可用功能、修了多少 bug、省了多少人天。AI 编程这件事正在从“能不能跑通”变成“成本划不划算”。Uber 公开分享的一个数据因此变得很有分量内部通过 AI Agent 生成或协助的代码 PR 比例已经达到 70%但 AI 相关账单并没有同步失控。我理解很多人的第一反应是又一个大厂炫技案例离我们太远了。但仔细拆下来会发现Uber 这个案例真正值得借鉴的不是它用了多少个 Agent而是它把 Agent 当成一项可治理的工程来做。70% 的 PR 占比说明 Agent 已经嵌入了研发主流程而“AI 账单零增长”说明它没有把钱浪费在无意义的模型调用上。这个组合恰恰是很多团队最想要但是最做不到的。这篇文章会从 PR 审查这个场景切入讲清楚 Agent 和传统 AI 编程助手的本质区别、Uber Agent 平台的公共工程骨架、成本治理的关键机制最后给出一套中小团队可以低成本复刻的落地思路。全程会附上代码和配置示例帮助你从“看懂趋势”走到“能上手验证”。1. 为什么 Uber 的 70% PR 值得关注先说一个很多团队都遇到过的真实场景。公司决定引入 AI 编程助手最开始大家热情很高代码补全变快了、单元测试生成多了、重复性 CRUD 代码不需要手敲了。但运行一个季度后技术委员会复盘时发现几个问题第一AI 工具使用量很高但研发效能指标并没有明显改善第二模型 API 费用逐月上涨并且没有收敛趋势第三AI 生成的代码质量不稳定Reviewer 经常要花时间纠正风格、补测试、改边界条件。这不是个例而是企业级 AI 编程落地的三个典型困境效率虚高、成本失控、质量难评。Uber 的情况特殊在哪它是全球化的出行平台内部有海量微服务、多种编程语言、大量历史代码库还叠加了复杂的业务规则和合规要求。一句话它面对的工程复杂度比一般团队更高而不是更低。在这种环境下Uber 通过内部 Agent 平台 AIPAgentic Intelligence Platform让不同团队构建自己的 Agent其中代码生成、代码审查、测试建议、迁移重构等场景成为最活跃的用例。从公开分享的材料来看内部约 70% 的代码 PR 已经由 Agent 参与生成、审查或修改。那“账单零增长”又是什么意思不代表 Uber 没有为 AI 花钱而是说在 Agent 使用量大幅上涨的同时AI 相关成本并没有同样等比例上涨。这意味着什么意味着单位产出的边际成本在下降——以前生成一个 PR 可能消耗 10 元模型费用现在 Agent 使用量上涨之后单个 PR 的推理成本反而被压到很低。这里要做个区分70% 这个数字的具体统计口径比如是按 PR 数量、代码行数还是变更文件数来算公开材料没有完整展开。“零增长”的计算范围到底覆盖哪些账单也可能有不同版本。但即便如此这个案例仍然有一个清晰的管理学含义Agent 的使用规模可以扩大只要成本被设计成可控的。它不应被理解为“AI 便宜到随便用”而应被理解为“Uber 把 AI 成本变成了一项可预算、可追踪、可优化的工程指标”。所以这篇文章的核心判断是Agent 化是趋势但成本治理才是企业大规模使用 Agent 的前提。如果不理解后者单纯复制“让 Agent 写 70% PR”的做法只会得到一张失控的账单。2. PR 代码审查Agent 最容易落地的工程场景在讨论 Agent 的技术细节之前先统一一个基础概念PR 是什么PR 的全称是 Pull Request中文常译为“拉取请求”或“合并请求”。它的本质是一次代码变更的提交与评审单元。开发者把代码从自己的分支提交到目标分支之前通过 PR 把变更集中起来触发代码审查、CI 测试、人工讨论通过后再合并到主干。团队规模越大PR 审查流程越重要因为它直接决定代码质量、安全性和团队协作效率。传统的 Code Review 工作流有一个常见的低效场景开发者提交 PR然后开始等。等 Reviewer 有空等 CI 跑完等讨论和修改再等第二次 review。如果团队分布在多个时区这个周期会被拉得更长。代价不仅是开发者时间被碎片化更重要的是Reviewer 很难在短时间内对大规模 diff 保持足够高的注意力。很多时候真正的问题——比如这次改动会不会影响下游服务的超时配置、有没有遗漏一个权限校验——恰恰是在海量代码行数中被忽略的。为什么 PR 场景特别适合 Agent 先落地三个原因。第一任务边界清晰。一个 PR 就是一个独立的变更单元包含文件列表、diff、关联 issue、提交信息。Agent 不需要“漫无目的地理解整个系统”只需要围绕这次变更收集上下文。第二输入输出结构化。审查一个 PR 的产出可以是问题清单、风险等级、修改建议、测试补充方案。这些都可以被结构化定义便于自动解析和后续人工复核。第三效果好验证。历史 PR 就是天然的标注数据。过去 Reviewers 提出的问题、打回的修改意见、最终合并的版本都可以用来评估一个审查 Agent 的准确率和误报率。在 PR 工作流里Agent 有四个层面的作用生成 PR 描述、执行代码审查、生成单元测试与修改建议、辅助合并决策。你可以只做其中任意一层也可以像 Uber 一样逐步把多段流程串起来。这里还需要区分两种 Agent 的风险差异。代码生成型 Agent 直接产出代码写得快但一旦逻辑错误可能直接污染主干。代码审查型 Agent 只负责“发现问题”最终修改决定权仍然在开发者手里即使误报也只会多花一点人工确认时间不会直接破坏代码库。因此如果你的团队第一次尝试落地 Agent从审查型 Agent 开始收益和风险比会更健康。3. Agent 与 AI 编程助手的本质区别现在很多文章会把“AI 编程”和“Agent 编程”混在一起说但它们其实是两个层级的东西。我建议用一个递进关系来理解第一层是 Prompt最基础。你向模型提一个问题或贴一段代码模型给出一次回答。适合“这个函数是什么意思”“帮我生成一个 DTO 类”这类单次交互。第二层是 Copilot 式的侧边栏补全。它嵌在 IDE 里根据当前上下文和光标位置实时生成代码建议人类确认后接受。优点是不打断心流缺点是它不太具备“长期任务”意识交互单位还是“补全一次”。第三层是 Agent任务闭环。它不只是生成一段文字而是围绕一个目标自主执行多个步骤读取代码库、理解任务、规划改动、选择工具、运行测试、根据结果修正、输出最终产物。本质上它的交互单位从“一次请求”变成了“一个任务”。为了帮助理解可以把 Agent 闭环拆成五个阶段感知从外部获取输入比如 PR diff、issue 描述、代码库索引。规划把任务拆成子步骤决定先做什么、后做什么。执行调用模型或工具比如读取文件、修改代码、执行命令。验证用测试、静态检查或格式校验确认结果是否符合预期。反馈如果结果不合格回到执行或规划阶段调整直到通过或达到上限。对比维度AI 编程助手代码 Agent交互单位单次请求完整任务能否自主调用工具通常不能可以读取文件、执行命令、调用 API失败处理重新问一次自动调整策略有时会重试成本模式按请求计费容易预估按任务计费多轮调用需要控制治理难度较低较高需要权限、沙箱、评测、预算这个区别决定了成本属性和治理方式完全不同。AI 编程助手的成本是人驱动的一次次请求你用好用差成本差异不会特别大。Agent 的成本来自一个任务内部的多次模型调用和工具执行Agent 可能先读取了 10 个文件再生成 3 版修改每次修正都要重新调用模型。如果设计不好一个任务的成本可以是单个 Prompt 的几十倍。所以Agent 的成本不应该被理解成“一次调用多少钱”而应该被理解成“一个任务需要消耗多少模型预算”。这也是为什么 Uber “账单零增长”这个结果背后几乎是必然有一套工程化的成本控制机制在起作用。另外需要澄清一个常见的误解。很多人看到“70% PR 由 Agent 参与”时会脑补成“AI 独立写了 70% 的代码”。这不一定准确。实际情况更可能是多样化的一部分 PR 是 Agent 生成的初始版本再由工程师修改和审查一部分 PR 是 Agent 做了代码审查、补充测试和修复建议还有一部分是 Agent 完成了重构性改动人类只做了最终确认。这些类型的 PR 都可以被统计为“Agent 参与”但每一种的工程价值和质量风险都不一样。因此读这类数据时不可以只盯着比例还要理解 Agent 在哪个环节参与了。4. 从公开信息看 Uber Agent 平台的工程骨架Uber 内部把 Agent 平台称为 AIP即 Agentic Intelligence Platform。它并不只是一个“聊天机器人框架”而是一个面向内部团队和员工的自助式 Agent 构建平台。它的设计目标很简单让不同业务的团队能够基于自己的数据和系统构建和运行自己的 Agent而不是每个团队都重复搭建模型调用、权限控制、工具接入等底层模块。这种“平台化”的做法是 Uber 能够在规模化使用 Agent 的同时控制成本的关键前提。可以想象一下如果每个团队各自接入不同的模型 API、自己写调用代码、自己管理密钥和日志那么成本数据会散落在各个团队的账单里无法被统一治理。而通过平台统一接入模型网关、统一计量 token 消耗、统一设置预算配额成本才能变成一个全局可见的指标。代码类 Agent 在 Uber 这样的平台上通常需要这几类基础能力能力模块作用对成本的影响代码库索引把代码结构、函数关系、历史变更建立索引供 Agent 检索减少无效的全文读取降低输入 token模型网关统一路由到不同模型支持按任务分配模型把轻量任务路由到便宜模型降低成本权限与沙箱限制 Agent 能读写的文件、能否执行命令减少误操作导致的多轮重试工具集成接入 Git、CI、测试框架、Issue 系统让 Agent 在真实工具链中闭环减少人工返工评估与可观测统计成功率、成本、耗时、人工复核结果形成成本与质量的反馈闭环需要说明以上是结合公开信息推导出的通用工程抽象不一定等于 Uber 内部实现的具体细节。但方向是明确的规模化 Agent 的前提是先有共享的工程底座。没有统一的治理和计量Agent 数量越多成本越混乱质量也越难评估。对中小团队来说这个底座不代表要自研一套平台而是要在引入 Agent 之前先想清楚模型接口、成本日志、权限边界、结果评估分别由谁负责。哪怕只是用一个脚本统一封装模型调用也比每个开发者各调各的 API 要可控得多。5. 关键机制一Agent 任务建模与 PR 流程编排Agent 落地最容易犯的一个错误是把所有审查逻辑塞进一个巨大的 Prompt。表面看起来简单但实际上很难控制质量和成本。Uber 这类案例里的做法通常是把一个复杂任务分解成多个子任务再针对每个子任务选择不同粒度的模型和处理方式。拿 PR 审查来说一个完整流程通常可以拆成六个子任务变更总结根据 diff 生成变更摘要包括改了什么、为什么改。风险识别识别可能导致线上故障、安全漏洞或业务行为改变的改动。测试建议检查测试覆盖是否充分生成缺失场景的测试建议。风格检查检查命名、格式、代码结构是否符合团队规范。依赖检查分析依赖变更是否引入安全或兼容性问题。整合报告把子任务结果汇总成最终 review 意见供人工决策。每个子任务都有明确的输入和输出。变更总结只读 diff 和提交信息风格检查只查命名和格式风险识别需要更广的代码库上下文。这种拆分的价值在于你可以让便宜的小模型处理格式检查让更强的模型专注于风险和测试分析整个流程中每个子任务单独计费、单独失败重试不会因为某一步失败就浪费所有步骤的成本。下面我提供一个简化的 Python 示例演示 PR 审查 Agent 的骨架。它用伪代码方式呈现任务规划与调用逻辑call_llm是示意函数实际项目里需要替换成模型厂商的 SDK。# 文件路径pr_review_agent.py from dataclasses import dataclass, field from typing import List, Dict dataclass class ReviewTask: name: str prompt_template: str model: str fast-model max_tokens: int 1000 dataclass class PRContext: title: str description: str diff_text: str changed_files: List[str] class PRReviewAgent: def __init__(self): self.tasks [ ReviewTask( namesummary, prompt_templateSummarize this PR change in 3 sentences.\nTitle: {title}\nDiff:\n{diff}, modelfast-model ), ReviewTask( namerisk, prompt_templateIdentify potential risks in this PR: 1. Security issues 2. Behavior changes 3. Missing error handling Title: {title} Diff: {diff} Output as a numbered list., modelstrong-model, max_tokens1500 ), ReviewTask( nametest_suggestions, prompt_templateBased on the diff, list test cases to add.\nDiff:\n{diff}, modelstrong-model ) ] def run(self, pr: PRContext) - Dict[str, str]: results {} for task in self.tasks: prompt task.prompt_template.format( titlepr.title, diffpr.diff_text[:3000], descriptionpr.description ) # call_llm 为示意函数实际使用需要替换为模型 SDK 调用 result call_llm(prompt, modeltask.model, max_tokenstask.max_tokens) results[task.name] result print(f[{task.name}] model{task.model} done) return results def format_review(self, results: Dict[str, str]) - str: lines [## PR Review Result] for task_name in [summary, risk, test_suggestions]: lines.append(f### {task_name}) lines.append(results.get(task_name, )) return \n.join(lines)核心逻辑就是把 PR 审查拆成多个 ReviewTask每个任务指定不同的模型和 prompt。这样做有三个直接好处第一简单任务可以使用便宜的小模型第二某个子任务失败时不需要整个 Agent 重跑第三每个子任务的输入输出可以被记录和评估方便后续优化。在这个骨架基础上你还需要接入 Git 平台 API获取 PR 的 title、description、diff 和 changed_files。把call_llm替换成你实际使用的模型 SDK同时记录每次调用的 token 使用量。把格式化后的 review 结果发回 PR 评论区或生成 Markdown 文件供人工查看。这一步的核心思路是不要认为 Agent 是“一个模型解决所有问题”而要把任务当作流程来设计让模型在流程中承担不同角色。6. 关键机制二成本治理与“账单零增长”如果说任务建模决定了 Agent 做得好不好那成本治理就决定了你能不能让 Agent 长期跑下去。很多团队最初用 Agent 时是不计成本的所有任务都用最强模型一个提示词不够就多试几次最后账单自然就失控了。先拆一下成本来源。一个 Agent 任务的成本通常来自四个方面输入 token包括系统提示词、代码库上下文、PR diff、历史对话等。输出 token模型生成的总结、建议、代码。多轮推理Agent 自身循环迭代时每一次重复调用的累积成本。失败重试任务校验失败后重新执行的成本往往容易被忽视。Uber “账单零增长”的背后基本可以断定做了三个层面的成本控制。第一是模型路由。不是所有任务都需要最强模型。PR 描述总结、风格检查、注释生成用便宜的小模型完全够用只有风险分析、设计评审这类复杂度高、判定结果影响大的任务才调用更强模型。模型网关的价值就在这里它把“该用哪个模型”变成一个可以根据任务类型动态调整的配置而不是写死在代码里。第二是缓存与复用。代码 Agent 经常要读取代码库上下文如果同一个仓库、同一个文件的索引结果可以被缓存就不需要每次任务都重新把大量代码塞进上下文。此外历史 Agent 任务的处理结果也可以复用同一个 PR 重新审查时只处理增量 diff而不是从头再来。第三是预算与配额。在平台层面对每个团队、每个 Agent、每个任务的 token 消耗设置上限配合告警和自动降级。一旦某个任务开始失控比如进入死循环或上下文膨胀系统可以在预算耗尽前自动终止。下面给出一份 YAML 配置示例展示模型路由和预算控制的示意方式# 文件路径agent-config.yaml agent: name: pr-review-agent budget: per_task_token_limit: 20000 daily_token_limit: 500000 alert_threshold_percent: 80 model_routing: - task_type: summary model: fast-model max_tokens: 500 - task_type: style_check model: fast-model max_tokens: 500 - task_type: risk_analysis model: strong-model max_tokens: 2000 - task_type: integration_report model: strong-model max_tokens: 1500 cache: enabled: true code_index_ttl: 3600 review_result_ttl: 86400 retry: max_retries: 2 backoff_seconds: 5这个配置里最关键的是budget和model_routing两部分。budget 定义了单次任务、单日上限超过阈值时触发告警或终止。model_routing 决定了哪些任务用便宜模型、哪些用强模型。cache 的作用是减少重复上下文消耗。再看一个 Python 成本统计的简化示例。它演示了如何在 Agent 调用模型时记录 token 和成本并把成本归因到具体任务# 文件路径cost_tracker.py class CostTracker: def __init__(self, price_map): # price_map: {fast-model: 0.0001, strong-model: 0.001} # 单位元/千 token这里仅为示意 self.price_map price_map self.total_cost 0.0 self.records [] def record(self, task_name: str, model: str, prompt_tokens: int, completion_tokens: int): cost (prompt_tokens completion_tokens) / 1000 * self.price_map.get(model, 0) self.total_cost cost record { task: task_name, model: model, prompt_tokens: prompt_tokens, completion_tokens: completion_tokens, cost: round(cost, 4) } self.records.append(record) print(f{task_name}: {model} cost {cost:.4f}) def summary(self): print(ftotal_cost{self.total_cost:.4f}) return self.total_cost # 使用示例 tracker CostTracker({fast-model: 0.0001, strong-model: 0.001}) tracker.record(summary, fast-model, 2000, 300) tracker.record(risk, strong-model, 8000, 1200)这里需要强调一点具体价格每家模型厂商都不一样且价格调整频繁不建议把实际单价写死在代码里。更合适的做法是从模型网关或计费服务动态读取单价成本统计模块只负责累加和展示。最后要说的是“结果回填”这个容易被忽略的环节。Agent 每次的输出并不能保证准确所以最好的成本治理不是省着不用而是把每一次人工复核的结果存下来形成评测集。下一次 Agent 再遇到类似问题时就有历史案例可以参考或者直接复用之前的确认结果。这样成本会随着时间越来越低而不是越用越贵。7. 复刻思路中小团队如何低成本落地很多人会觉得Uber 的案例有平台团队支撑和我们中小团队不是一个量级。但仔细拆下来看真正值得复制的不是平台本身而是它背后的治理思路。中小团队完全可以在不增加太多成本的情况下先把最小闭环跑起来。第一步选择一个低风险场景。不要一开始就要求 Agent 自动改代码、自动合并 PR。推荐从“PR 描述生成”或“基础代码审查”开始。这两个场景的产出以建议为主即使 Agent 判断错误影响也可控。第二步构建一个小型评测集。从历史 PR 中挑选 50 到 100 条人工标注这批 PR 曾经出现的典型问题比如安全配置错误、空指针隐患、并发问题、测试缺失。评测集的目的是在调整 Agent 时有一个稳定的对错标准而不是每次凭感觉判断“这次回答好像还可以”。第三步接入统一的模型调用入口。不管是写一个简单的 Python 函数封装模型 API还是使用第三方 Agent 框架都要确保所有调用经过同一个入口并且记录 token 消耗、成本、耗时和结果。这是后面做成本分析和质量分析的原始数据来源。第四步小流量试运行并人工复核。让 Agent 在真实 PR 上执行审查输出结构化意见但合并前必须由工程师确认。人工确认的结果要回流到评测集形成反馈闭环。实际操作时可以把 Agent 审查命令接入 CI在 PR 创建后自动触发。下面是一个示意脚本# 在 CI 中运行 pip install -r requirements.txt python pr_review_agent.py --repo-path . --pr-number $PR_NUMBER \ --output pr_review.md \ --max-json-tokens 20000 cat pr_review.md这个脚本会在 CI 里拉取当前 PR 的 diff运行审查生成pr_review.md打印到日志中。你可以在 CI 配置后面追加一步把pr_review.md的部分内容发布到 PR 评论区。具体 API 调用取决于你使用的 Git 托管平台这里不展开。运行后需要关注的指标有三个单位 PR 成本每个 PR 平均消耗多少模型费用这是成本控制的风向标。问题拦截率Agent 发现的问题里有多少被工程师确认是真实问题。误报率Agent 报告的问题里有多少是无效建议。只有这三个指标同时被追踪Agent 才不是实验室玩具。如果单位 PR 成本高说明模型路由或上下文策略有问题如果拦截率低说明 Prompts 和评测集口径不一致如果误报率高说明规则定义太宽泛需要缩小范围。很多团队会把第一步做得太重比如一开始就接入复杂框架、配置多个 Agent、引入向量数据库。我的建议是先做最简单的手动调用版本跑通评测集和成本记录再逐步叠加工程化能力。技术栈很简单核心是过程要被记录下来。8. 常见问题与排查思路在 Agent 落地过程中下面这些问题是比较常见的。我整理成了一个排查表方便遇到问题时快速定位。问题现象可能原因排查方式解决方案Agent 生成的 PR 描述失真缺少代码库上下文只给了零散 diff查看提示词检查输入是否包含文件路径、变更意图增加变更文件列表和关联 issue 描述必要时补充代码库索引审查 Agent 误报率太高评测集口径与实际规则不匹配规则定义过宽对比 Agent 输出与历史 Review 意见缩小规则范围只覆盖明确的技术风险成本突然飙升模型路由失效或进入了重试死循环查看调用日志、token 统计和重试次数设置单任务 token 上限限制重试次数模型上下文超长把整个仓库或过多文件塞进一次调用查看提示词 token 统计缩小文件范围用检索增强只取相关函数和定义Agent 意外修改了文件权限边界设置不足沙箱未生效检查 Agent 运行日志和文件变更记录对审查类 Agent 使用只读模式禁止写操作PR 合并时出现冲突Agent 基于旧分支生成改动检查 Agent 使用的基线版本刷新到最新主干分支或先 rebase 再执行同样的 PR 每次审查结果不同模型输出存在随机性缺少稳定评测固定温度和种子记录版本号对同一评测集多次运行统计正确率和稳定性这里特别要提醒两个易错点。第一个是模型输出随机性。很多团队在评测 Agent 时只跑一次结果好就觉得没问题下一次运行结果不一样就认为系统不稳定。正确的做法是固定 sampling 参数并对同一评测集多次运行观察输出是否稳定。遇到随机性较大的任务可以把温度调低或者改用结构化输出模式。第二个是 Agent 的安全边界。代码审查 Agent 在设计上应该是只读的它只能读代码、读 diff、生成建议不应当有修改文件或合并分支的权限。在实际部署时使用独立 CI 账号或服务账号只授予只读 token避免 Agent 因提示词注入或意外逻辑错误造成不可逆变更。9. 最佳实践与工程建议基于前面几节的内容最后给出十点工程建议。这些建议并不只针对 Uber 这类大厂也适用于从 0 到 1 开始落地 Agent 的中小团队。第一治理先行Agent 数量其次。在引入任何 Agent 之前先确定 Model 调用入口、成本记录方式、权限边界、评测标准。没有治理前提Agent 越多越危险。第二最小权限原则。给 Agent 的凭据和权限不要超过任务所需。审查类 Agent 用只读权限生成类 Agent 用独立沙箱禁止直接对主干分支写操作。所有高危操作必须人工确认。第三按任务难度分配模型。简单任务用便宜模型复杂任务用强模型。模型网关里要配置默认路由和降级策略当强模型不可用时服务不能直接崩溃。第四评测集必须持续更新。每次人工复核后的真实结果都要流入评测集。这样 Agent 的质量评估才会越来越接近团队真实场景。第五严格控制单任务成本。为每个 Agent 设置 token 上限和重试次数上限。宁可任务失败一次重新运行也不允许一次任务消耗数十倍的预期 token。第六上下文裁剪要精细。不要为了“让模型理解更多”就把整个代码库塞进上下文。通过代码库索引、行号定位、函数签名提取等方式只把与本次变更相关的局部上下文传给模型既能降本又能提升准确性。第七关注可观测性。每个 Agent 任务都需要记录开始时间、结束时间、模型、输入 token、输出 token、成本、成功失败标记、人工复核结果。没有可观测性成本优化和质量排障都无从谈起。第八风险分级灰度上量。新 Agent 先跑在 10% 的流量上人工复核后再逐步扩量。不要在没有任何评估的情况下直接把 Agent 生成的建议自动合并到代码库。第九命名与版本管理。Agent 也有版本建议和代码一样纳入版本管理。prompt 的任何调整都要记录变更人和变更时间方便回滚。第十安全合规意识。在使用外部模型处理代码时注意是否涉及企业内部敏感信息。大规模场景下应优先选择支持私有化部署或企业合规方案并在模型调用前后做好日志脱敏。这些建议里最容易被忽视的是第四点和第九点。评测集和版本管理听起来很繁琐但它们是让 Agent 质量“可迭代”的根本保障。没有它们你只能靠感觉调 Prompt越调越玄学最终整个项目不了了之。回到 Uber 这个案例。70% 的 PR 参与度确实是重要信号它说明 Agent 已经从“新鲜玩具”变成了研发基础设施的一部分。但更值得学习的是“账单零增长”背后的工程能力把复杂的 AI 任务拆成可治理的工程流程把成本变成可观测、可控制、可优化的指标。对大多数团队来说下一步不是急着复刻一个庞大的 Agent 平台而是从一个低风险场景开始把评测集、成本记录、人工复核这三件事先跑通。AI 写代码很容易AI 的成本被工程化地治理起来才真正考验团队的水平。把这套闭环跑通之后再考虑把 Agent 覆盖到更多研发环节方向就对了。
返回列表