上周,我正面对一个庞大的重构项目——大概有 40 个文件需要更新某个特定的 API 端点,另外还有一份 12 页的产品规格说明书需要转换成结构化的 Jira 需求池。一开始我手动搞,复制粘贴了一个小时后,我意识到这进度肯定要爆工期了。
之前我一直在用那些更重量级的模型来写代码和处理知识型工作,但我总是撞上同一堵墙:经常下午干到一半就触发了速率限制(rate limit),或者明明我只需要一段 JSON 代码,模型却给我洋洋洒洒生成 2000 字的解说。一气之下,我换到了 Gemini 3.5 Flash,想看看牺牲点质量换速度到底值不值。
42 分钟后,我彻底被折服了。它的速度、质量,还有那超强的续航能力,彻底改变了我日常的工作效率。下面我就来聊聊我平时到底是怎么用它的,以及那些让我效率起飞的工作流。
为什么 3.5 Flash 改变了我的工作流
工程界有句老话:“好、快、省,三者只能选其二”。但在深度体验了 3.5 Flash 之后,我感觉谷歌完全无视了这条规矩。你既能得到前沿级别的性能,速度又快得离谱,而且还极其省 token。
对我来说,最大的实际收益就是速率限制的问题。用重量级模型的时候,我经常下午干到一半工作流就断了,因为达到了用量上限。而 Gemini 3.5 Flash 能让你在触发速率限制前进行更长时间的连续工作,这就让它真的能扛得住日常的高强度使用。我一下午都可以保持同一个会话不断。
第二大收益是 token 效率。我以前用的模型往往很啰嗦——明明只需要代码,非要给我来几段解释。3.5 Flash 的 token 效率明显更高,废话少了很多。它给我想要的东西然后就打住,这意味着我花在解析回复上的时间少了,也不再把 token 预算浪费在凑字数的废话上。
工作流 1:批量重构引擎
先说我为啥一开始会被迫尝试 3.5 Flash 吧。我需要更新几十个文件里的 API 端点。
我没有一个文件一个文件地改,而是写了个简单的 shell 脚本,把需要的文件全抓出来,然后批量喂给 API:
# 抓取所有包含旧端点的文件
grep -rl "api.v1.example.com" ./src > files_to_update.txt
# 批量喂给 Gemini
while read -r file; do
echo "Updating $file..."
cat "$file" | gemini-cli \
--model gemini-3.5-flash \
--prompt "Replace all instances of 'api.v1.example.com' with 'api.v2.example.com'. Update the authentication headers to use Bearer tokens instead of API keys. Return ONLY the updated file contents, no explanations."
> "$file.updated"
done < files_to_update.txt
这里的关键在于提示词:“Return ONLY the updated file contents, no explanations.”(仅返回更新后的文件内容,不要解释)。因为 3.5 Flash 太省 token 了,它真的会乖乖听话。我大概 15 分钟就跑完了 40 个文件。要是按我以前的工作流,这得花 3 个小时。
我踩过的坑: 一开始我没加“不要解释”这句,结果模型非常“热心”地把每个文件都用 markdown 代码块包起来,还附带了修改摘要。这直接搞崩了我的自动化流程。所以,对输出格式一定要指令明确。
工作流 2:文档转结构化数据
我手头的第二个任务,是把那份 12 页的产品规格说明书转成 Jira 需求池。我把文档贴进 Gemini 网页版,用了这样的提示词:
Take this product specification and convert it into a structured JSON array of Jira tickets. Each ticket should have:
- summary: a concise ticket title
- description: the relevant requirements from the spec
- story_points: estimate based on complexity (1, 2, 3, 5, 8, or 13)
- epic: which epic this belongs to
- dependencies: array of ticket summaries this depends on
Output valid JSON only, no markdown formatting.
大概 8 秒钟,它就解析完了整个文档,吐出了 27 个结构完美的 Jira 任务 JSON。故事点(story points)的估算很合理,而且它还准确识别出了认证模块和用户资料功能之间的依赖关系。
确实有两个任务因为原始文档有歧义,我手动调整了一下,但这也就花 10 分钟,比起手动拆解 3 小时,简直不要太爽。
工作流 3:用 Computer Use 实现浏览器自动化
这个功能是真的惊到我了。Gemini 3.5 Flash 有个原生的 computer use(计算机使用)工具,真的能操控浏览器——读取屏幕、决定点哪里、执行多步骤的网页操作。
当时我需要从一个没有 API 的内部数据看板上拉取季度营收数据。平时,这意味着我要花 20 分钟点各种筛选器、导出 CSV、再调格式。我设置好 computer use 工具,给了它一个简单的指令:
Navigate to the revenue dashboard. Set the date filter to Q3 2024.
Select the "By Region" view. Export the data as CSV.
Save it to /reports/q3_revenue.csv.
我就往椅背上一靠,看着它操作界面:点日期选择器、选季度、切换视图、点导出。它不是完美无缺——中间点错了一次又退了回去——但大概 3 分钟就搞定了。在有人监督的情况下,它执行这种多步骤工作流是很靠谱的。
重要提醒: 我说了“在有人监督的情况下”。你必须盯着它在干嘛。它点错了一次,如果我没发现,它就会导出错误的数据集。把它当成一个动作很快的实习生:执行指令很利索,但你得核实它的产出。
工作流 4:长时间编程会话
在实际写代码时,除了最复杂的架构决策,我已经开始把 3.5 Flash 当作我的默认模型了。这是我典型的设置:
- 我开一个终端跑着 Gemini CLI
- 描述我要构建或修复的功能
- 根据输出的结果不断迭代
让这变得可行的是会话的长度。我可以连续工作好几个小时不卡壳。上周五,我连续四个小时都在写一个新的微服务——生成脚手架代码、写测试、调试错误——全在一个会话里搞定。
专门针对写代码,我发现这种提示词结构效果最好:
I'm building a [description]. Here's what I have so far:
[paste relevant code]
I need to [specific task]. Follow these rules:
- Use the existing code style
- Include error handling
- Write tests for the new functionality
- Don't add dependencies without asking first
“不要擅自添加依赖”这条规则至关重要。放任不管的话,模型为了少写 20 行代码,能开开心心地给你引入三个新库。
一线实战经验
经过几周的高强度使用,这是我总结出的经验:
1. 对输出格式必须极其明确。 如果你想要 JSON,就说“仅输出合法的 JSON”。如果你想要代码,就说“仅输出代码,不要解释”。模型很听话,但你得明确告诉它你要什么。
2. 用它搞定 80%,而不是 100%。 3.5 Flash 能极快地帮你搞定 80% 的工作,但剩下的 20%——边缘情况、微妙的业务逻辑、棘手的 bug——还是得靠你自己的脑子。别指望它包揽一切。
3. 批量发送请求。 因为它速度快、速率限制宽松,你可以连续发 10 个请求,而不是苦思冥想写一个完美的超长提示词。反正我用专注单一任务的提示词效果更好。
4. 密切监视 computer use 功能。 它很强,但并非万无一失。我遇到过它点错按钮、选错下拉菜单项,还有一次本来该点链接,它却把一个书签给删了。一定要盯着。
5. 复杂的架构决策还是留给重量级模型。 当我需要思考系统设计、数据建模或安全架构时,我还是会去用更重的模型。3.5 Flash 擅长执行;让大模型去搞战略。
实话实说的局限性
它也不是完美无缺。computer use 功能虽然惊艳,但依然需要监督。遇到有嵌套菜单的复杂 UI,它也会犯晕。我还注意到,当提示词真的有歧义时,3.5 Flash 会自己猜一个合理的答案,而不是反问你澄清——有时候这正是你想要的,但有时候这会让你走弯路。
另外,虽然 token 效率高是好事,但偶尔它会过于简略。如果你需要它详细解释某段代码为什么能跑通,你得明确要求它才行。
但说到日常的生产力——重构、文档处理、浏览器自动化和长时间编程会话——Gemini 3.5 Flash 已经成了我的默认工具。它的速度和续航能力意味着我真的是一整天都在用它,而不是抠抠搜搜地省着提示词用。说到底,正是这一点,而不是任何单一的功能,真正提升了我的效率。