---
我用豆包 Seed-2.1-pro-0915 做了个「今天吃啥」
2026 年 9 月 22 日 | 作者:程序员晓凡
场景
每天上午快到十一点四十,办公室里就会冒出一句"今天中午吃啥"。来来回回就是那几家店,菜点得越来越窄。连着四天点了青椒土豆丝,第五天再报这个菜名的时候,同事的眼神已经不太对了。[citation:75.46]
难处不是没得选——附近几家馆子的菜单加起来上百道菜——而是谁都不想花脑子想。
那就做个东西,把这事一次性解决掉。
---
最终成品
功能一句话讲完:把常去餐馆的菜单拍成照片丢进去,它认出菜名和价格建成菜单库;中午打开点菜,点完自动汇总成一张订单卡片发到群里,吃完给每道菜打分,难吃的以后自动少出现。[citation:75.46]
四个页面,底部导航跟 App 一样:菜单库、点菜、汇总、评分。暖橙棕配米白配色——中午看菜单,暖色比冷色下饭。
成品:https://xiezhr.github.io/lunch-decider/
源码:https://github.com/xiezhr/lunch-decider
---
技术选型:为什么选 Seed-2.1-pro-0915
全程在豆包工作里跑,模型选的 Seed-2.1-pro-0915,0915 是版本号。[citation:75.46]
选它有三条理由,正好压在这个项目的三个关键环节上:
| 环节 | 需求 | Seed-2.1-pro-0915 的优势 |
|:----|:-----|:--------------------------|
| 菜单识别 | 密集图片→结构化 JSON | 多模态理解,菜名+价格+分类 |
| 草图→界面 | 手绘草图→完整网页 | 多模态 Coding,图直接驱动代码 |
| 自验证 | 写完后自己跑一遍 | Agent 能力,能自己检查结果 |
---
搭建过程:五个值得说的坑和细节
坑 1:登录要用手机号
豆包工作用手机号登录才能领到新用户的 30 天会员。用飞书账号登录,等半天也没见到权益——飞书账号对应的是企业身份,个人权益走不到那边去。[citation:75.46]
坑 2:运行环境选"本地电脑",别选云电脑
选云电脑它读不到你本机的文件。本地模式才能直接往你的目录里写东西。[citation:75.46]
关键操作:先画一张草图
花十几分钟手绘了一张 UI 草图——按钮放哪、卡片多大、底部几个 Tab。光用文字描述需求,模型只能猜你想要什么样;给张图,它全对得上。 后来第一版界面出来,跟画的几乎一模一样。[citation:75.46]
喂给它的两样东西
一张手画的 UI 草图
两张拍下来的菜单照片
项目结构:拆成五个文件
不要一个大 HTML 装全部。拆开之后每次迭代只用改其中的一两个文件,输出短,也不容易改崩别处:[citation:75.46]
index.html # 页面骨架
styles.css # 暖橙棕主题
app.js # 全部逻辑
data.js # 菜单数据
README.md # 项目说明
---
五轮对话,两轮值得展开
第一轮:照片里的菜单变成结构化数据
Prompt 的设计很讲究,一次把两件事说清楚:[citation:75.46]
请帮我做两件事:
> 第一步,识别这些菜单,输出结构化的 JSON 数据,字段包括餐馆代号、菜名、价格、分类(热菜/凉菜/汤/主食/其他)。要求:价格只保留数字,单位统一为元;识别不准的标注 "uncertain": true,不要瞎编。
> 第二步,基于这个 JSON,帮我写一个网页应用。界面严格参照手绘草图,拆成 4 个文件,零外部依赖,双击 index.html 就能跑。
菜单照片是典型的信息密集图片——菜名后面跟价格,还要按凉菜热菜汤归堆。模型读明白了,输出了一个完整的 JSON。
第五轮:修一个真正的逻辑漏洞
用了一段时间后,作者发现一个 bug:一个人点了菜,另一个人再打开页面时,已经点的菜根本不显示。这不是 UI 问题,是数据流的逻辑没闭环——点到的人没把这个变化告诉数据库。
把问题描述清楚丢回去,模型自己定位到了 data.js 的同步逻辑,改了一轮就修好了。[citation:75.46]
---
一件值得说的体验:让模型自己验证
代码写完以后,作者"懒得自己调",让模型自己跑起来验证。Seed-2.1-pro-0915 的 Agent 能力能直接检查结果——这在传统开发流程里通常是开发者的活。[citation:75.46]
---
避坑清单
| 坑 | 解法 |
|:---|:------|
| 飞书账号登录没有会员权益 | 换成手机号登录 |
| 选云电脑模式读不到本地文件 | 改成本地电脑模式 |
| 纯文字描述界面不够准 | 先画一张草图喂给它 |
| 一个大 HTML 很难迭代 | 拆成 5 个独立文件 |
| 点菜数据不共享 | 在第五轮对话中让模型自己修复 |
---
一句话总结
用 Seed-2.1-pro-0915 做一个小工具,关键不是模型有多强,而是想清楚怎么把"拍菜单→认菜品→建页面→点菜→评分"这条链路拆成模型擅长的几个步骤。 草图比文字更能对齐界面预期,结构化 prompt 比自由对话更能拿到干净数据,让模型自己验证比肉眼检查更能发现隐藏 bug。[citation:75.46]
发布评论