AI 大佬 Andrej Karpathy 提出的 Vibe Coding,最近特别火,这是一种全新的编程理念,强调 “写代码像聊天一样自然”。
开发人员不再需要从零写代码,用自然语言描述功能或界面,AI 就能理解意图并自动生成代码。V0 正是这一理念的实践,它让从设计到开发的过程更高效,只需一句提示或一张设计图,就能生成高质量的 React 代码,大幅降低前端开发门槛。
V0 是由 Vercel Labs 开发的,最近,他们创始人兼 CEO Guillermo Rauch 做了一期播客。他在播客中深入探讨了 AI 时代产品开发会发生什么变化,解释了为什么未来开发应用将更多依赖提示而非代码,以及我们现在应重点培养哪些关键技能。
我们团队对播客内容进行了精编翻译。
我先摘了一些有趣的内容:
下面是译文。
主持人:今天我的嘉宾是 Guillermo Rauch。他是 Vercel 创始人兼 CEO,Vercel 推出了一款叫 V0 的产品,现在已经成为全球最受欢迎的 AI 建站工具之一。
他本身也是一位传奇工程师和开源贡献者,创建过一些全球最流行的 JavaScript 框架,比如 Next.js 和 Socket.IO。他既是一个 “创造者”,也在打造一款将会改变我们未来构建产品方式的工具。
如果你想真正了解 AI 崛起之后,产品开发会发生怎样的变化,以及你现在应该重点培养哪些技能,我强烈建议你听下去。现在让我们欢迎 Guillermo Rauch。
Guillermo Rauch:是的,在某种意义上说,这其实也是我这十年来,甚至可以说是我一生都在做的事,因为我作为开发者的优势,其实有点 “元开发” 的意味——我擅长的是创造开发工具。
我做过很多受欢迎的开源框架,Next.js 是其中一个。但在那之前,在我职业生涯的早期,我还做过另一个工具,叫 Socket.IO,这是一种实时通信机制。比如说你用 Notion 时,我记得你也采访过 Notion 的 Ivan,当 Notion 需要将信息实时广播给协作者时,他们所使用的实时引擎就是我为 Socket.IO 构建的系统。
因此,为什么很多创业公司和企业愿意使用我开发的产品?是因为它们让一些原本很难实现、但非常有吸引力的功能变得简单了。过去是实时应用,现在则是通过 Next.js 构建前沿的 Web 应用。我尽量把这些过程变得简单——尽管你还是需要具备一定的开发技能。
现在的机会在于:假设全球有 500 万 React 开发者(这是我们使用的库引擎),JavaScript 开发者大概有 2000 万,那有多少人想要构建产品,或者有产品构建愿望的人呢?
我随手算过一个最低估值,大概是 1 亿人。我是怎么得出这个数字的?Slack 的月活跃用户大概就是 1 亿左右。在 Slack 里,你会看到人们在里面聊天,其中很多人其实都在构建数字产品——他们讨论他们想在这个世界上看到什么,或者通过共享频道和客户对话。
我很喜欢这个场景。
我们也和很多 Vercel 的客户聊过,他们会告诉我们:“我想做这个功能”、“我想看到那个东西”、“我想要这个设计”、“我希望有那个能力”。
所以,V0 的机会点在于,它并不是让你停止和他人交流,而是——如果你能直接对着电脑说话,然后马上就能看到结果,比如构建一个原型、一个产品的初版、一个 Demo、一个完整的全栈应用,并且能上线——那将会多么强大。
所以这个灵感其实是非常契合 Vercel 的使命的。而它最初的起点,其实是在 ChatGPT 出现的时候,我们注意到它很擅长编写我们的工具所使用的代码。
换句话说,从一开始,ChatGPT 就已经很擅长写 JavaScript,擅长 Tailwind(CSS 样式工具),擅长 Next.js。而这背后的关键,其实是开源的力量——我们的工具已经成为了互联网训练数据的一部分。多年来对开源的投入和愿景,如今得到了回报。
也正因为这些模型在这类代码生成上表现这么好,所以 V0 的想法自然地就出现了:我们能不能造一个 “用于构建 Web 产品的 ChatGPT”?
主持人:说到这个,我其实之前并不知道。我采访 Bolt 的 CEO 时,他提到 Claude 解锁了他们的业务能力。那你们这边,是主要跑在 ChatGPT 和 OpenAI 上吗?
Guillermo Rauch:我们最初是从 OpenAI 开始的,而且我们一直使用的是多个模型的组合。现在你在 Twitter 上可以看到很多人试图反向推理我们用的提示词和模型,有些视频的播放量甚至过百万。
主持人:Reddit 上也有不少人研究这个。
Guillermo Rauch:对,他们发现其实有很多不同的模型在各自擅长的任务中发挥作用,它们会组成一个模型流程,彼此交接任务。所以我们用过 OpenAI、Gemini、Claude。
我们其实比 Anthropic(Claude 的公司)更早开始探索这些方向。我必须承认,是 ChatGPT 的泛用性给了我们极大的启发。甚至可以说,V0 的第一个原型可能还早于 ChatGPT 的正式发布,至少是在 GPT-3.5 上运行的。
所以我们从一开始就抱着一个愿景——借助大语言模型,为 Web 世界释放出更强的力量。
而且语言模型恰好在 Web 设计和开发这类任务中特别擅长,其中还有很多非常有趣的技术细节可以深挖。对我们来说,一切都刚刚好。
主持人:这个我待会儿还想再问。但我们先来聊聊 V0 的规模吧。我们现在听到行业里各种各样的数据,那你能分享一下 V0 到目前为止的使用情况吗?
Guillermo Rauch:我可以告诉你,它现在处于指数级增长状态,已经有超过 130 万用户与 V0 互动过。就在昨天,我们创下了历史最高单日使用量。今天又是历史新高。目前,我们已经成为几乎所有云服务提供商中最大的客户之一。可以说,我们正在逼近全球每一家 GPU 和大语言模型基础设施的使用极限。
而让我最兴奋的事情,是看到人们用 V0 构建的各种东西。我们大约一个月前上线了一个叫 “V0 社区” 的功能,甚至可能还不到一个月,现在已经有两万个提交。
你可能用过 Figma,我特别喜欢 Figma 的一点是,它有很多现成的文件,比如 logo、菜单等等,你可以直接拿来作为起点。
在 V0 社区中,我们也有这种开放共享的精神,有点像开源的方式。在不到一个月的时间里,我们收到了超过两万个社区贡献,我们从中学到了很多关于构建 AI 产品的经验,也持续在开源和分享我们的最佳实践。
不过我也学到了一件事——“提示词输入” 这个界面看起来简单,因为它就是个输入框,但其实人们有时候会遇到写作卡壳的情况。所以我最喜欢的一个社区场景就是:你现在去 V0 的首页,可以看到一堆随机的社区提交,有的被分叉了 100 次,有的被分叉了 1500 次,甚至 6000 次。
每一次分叉,都是有人说:“我不想从零开始做,我就从这个别人做的应用开始,然后用提示词修改一下,变成我自己的。”
主持人:所以这些社区提交,其实是用户在 V0 上做的应用,然后把它们分享出来,别人可以查看源码,也可以分叉使用?
Guillermo Rauch:对,而且这变成了一个复利效应的投资过程。一个人分享了一个项目,另一个人接着优化它,或许你也会用上它。某种意义上讲,我认为这像是 GitHub 的下一阶段进化。
GitHub 是软件开发的奇迹,它实现了“社交编程”(你可能还记得 GitHub 当年 Logo 下方的口号),带来了软件开发的民主化。但你还是得会写代码。而我们现在追求的,是“社交化的产品构建”。我们希望,每一个人都能参与构建、共享自己做的产品。
主持人:我很喜欢你这样理解这件事。这让我更能感受到你对开源的热爱——在 V0 上,大家可以构建并分享,然后别人再在此基础上继续构建。这种体验就像是开源的 AI 产品构建平台。
Guillermo Rauch:确实很有意思。你想想看,git commit 本身其实是个非常有意思的动作。如果你观察一个工程师怎么工作,他会先研究问题,在代码编辑器里折腾半天,最后终于说:“我搞定了。” 然后他提交一个 git commit,总结他的意图和完成的工作。这是一个 “先干活,再总结” 的流程。
但在 V0 里,这个过程被彻底颠倒了——你一开始就去和 AI 说:“请把这个按钮的颜色改一改,点击后把表单内容保存到数据库。”你从 “意图” 开始,而代码是结果,作为副产品我们甚至还能为你生成一个 git commit。
这个功能现在还没上线,但会在未来几天内推出。算是提前剧透一下。
我喜欢这个理念:我们可以用这个平台,把所有构建软件的方式整合在一起,变成一个通用的统一工具。
这其实也呼应了我当初创办 Vercel 的初衷。我们的使命是 “让全世界都能构建和发布最棒的产品”,而现在我们正让更多人具备这个能力。对我来说,这是最令人激动的事情。
主持人:我们来正面谈谈一个大家心里都有疑问、但一直没说出口的问题:很多产品从业者过去一直用某种方式在构建产品,但现在这些工具出现了——你只要输入一句话,它就能帮你把东西做出来,还做得很漂亮。你觉得产品经理、产品团队将会迎来怎样的变化?你觉得最大的变化会发生在哪里?未来几年里,产品会以什么方式被构建?
Guillermo Rauch:我觉得最深刻的一个变化,其实我刚才已经稍微提到过了,那就是:未来产品构建者与客户之间的对话,会被类似 “V0 链接” 这样的产物所中介。
我觉得 Claude 给这些叫 “Artifacts”(人工制品)这个名字,真的非常妙。我们这些人,尤其是这个圈子里的人,来到这个世界就是为了打造很棒的东西,并把它们分享出去。Steve Jobs 曾经在一次演讲里说过:我们回馈世界的方式,就是尽可能地把事情做到最好,然后拿出来与全世界分享。
所以,如果我们在讨论一个想法时,却没有把它变为现实的能力——那对我来说就是一种损失。我希望人们可以始终处于产品之中,沉浸在设计里,反复调整、实验新的想法。我理想中的未来工作方式就是这样,而不是那种抽象、疏离的状态。
有时候,当公司内部多个部门协作时,你会发现很多人其实对产品是 “无能为力” 的。比如市场部希望设计部做一些改动,市场部也希望工程师去实现一些功能,而工程师又要依赖设计部……这种协作总是受限的,对吧?
我们在 Vercel 的博客上发过一篇关于 “设计工程” 的文章,引发了大家很大兴趣。因为我们发现,在 Vercel 上用得最成功的一些人,其实是同时具备设计和工程能力的。这也是我们当初做 V0 的一个重要启发:我们意识到人们是可以变得更“全能”的。
我们不应该设限,不该设限自己能构建什么、能发布什么,也不该设限我们可以梦想哪些 Web 体验变成现实。
想象一下,如果这些限制都被消除了——设计师可以发布一个完整可用的产品;产品经理可以从原型直接上线;而很多用 V0 的人其实是后端工程师,他们过去只能做 API 或基础架构,但现在他们终于可以把自己的完整产品愿景实现出来了,因为我们为他们 “补全了最后一公里”。
主持人:那我就接着工程师这个话题问了——很多人都在想,以后还需要工程师吗?工程师的未来会怎样?我到底还要不要学写代码?你自己是个长期做工程的人,你会怎么建议那些正在思考职业方向的人?
Guillermo Rauch:我认为,理解事物的工作原理,是这个世界上最重要的技能。
我预见,会有越来越多的人在构建和发布产品这件事上表现得极其出色,他们可以一个人做 100 个专业岗位的工作,甚至能构建出一家巨大的公司,涵盖你能想象的一切。
举个例子,要构建一个前端产品,其中一个关键技能是——你得会用 CSS 或 Tailwind 来做样式。从前,我会专门雇一些人,他们在这方面就是专家。他们的工作是把 Figma 或设计稿 “翻译” 为现实界面,因为他们非常熟练地掌握了布局、盒模型、边框、间距、Flexbox 等等这些技术。
你有没有发现我用了 “翻译” 这个词?我是特意这样说的。因为大语言模型的起源,或者说 Transformer 架构的起点,其实就可以追溯到谷歌翻译这类系统。它们本质上就是生成式语言模型技术。所以你可以理解为什么 “翻译” 这个问题,后来突然之间就被 AI 解掉了。
我认为,现在很多 “程序员的任务”,其实也都是 “翻译” 任务。你从截图、想法、设计稿,翻译成 React 和 Tailwind 的代码。而目前 V0 在这方面的表现,已经非常非常优秀。
它现在已经强大到什么程度呢?我每次发布一个新版本的模型时,都会亲自做测试:试着用 V0 把我自己的网站重建一遍。
上一次测试时,我大概用了十个提示词就把它搭出来了。要知道,我可是一个前端专家,从十岁就开始写前端,现在已经三十五岁了。我做这个测试,其实也是一种 “自我谦逊测试” 吧——因为我还记得当初是怎么用我自己创建的 Next.js 框架,从零把网站一步步做出来的,那花了不少时间。
而用最新一代的模型,我只用了两个提示词。
从 “设计意图” 到 “工作代码” 的这个翻译过程,现在几乎是无缝的。我给你举个例子——V0 会内嵌我们对 Web 最佳实践的理解。它生成的代码,比我自己写的还符合无障碍标准(accessibility guidelines),也比我更好地遵守了 W3C 的网页标准。
因为它真的 “什么都知道”。
所以,那些你可以 “建模为翻译任务” 的工作,确实正在消失。但这也进一步说明:你理解底层原理的能力,仍然非常关键。
注意我这整场谈话中不断使用一些 “特定术语”——比如 CSS、布局、样式属性。这些术语就像一种“符号系统”。你能不能理解这些术语,将决定你是否能引导模型更准确地执行你的意图。
所以说得直白点:你必须知道系统是怎么运作的,理解这些符号系统。你可能不再需要深入掌握每个领域的全部细节,但你必须知道它们的基本原理。
我在 Vercel 有一些工程师,他们能把每一个 CSS 属性倒背如流,甚至知道哪个属性是什么时候在某个浏览器里被引入的。他们把 CSS 规范研究得比什么都透彻。
但在未来,你可能不再需要掌握得这么深。这样反而能把大脑空间腾出来,去想更宏大的事情。
主持人:真是太有意思了。所以我听下来,你的意思是:无论 AI 未来发展到什么程度,有一个始终会有价值的能力,就是 “理解软件的基本运作方式”——比如后端系统、数据库、CSS 等这些基本构件。
主持人:那假设你有孩子(不管你现在有没有),如果他们来问你:“我该学些什么,未来才会过得好?” 你会怎么建议他们?你觉得他们应该学多少 “软件工程” 的内容才合适?
Guillermo Rauch:这个问题问得很好——我有五个孩子,我现在就已经开始 “亲自培养” 他们了(笑)。我在有意识地引导他们学习我认为未来特别有用的东西。
理解事物运作的方式,我认为是最宝贵的能力。这种理解力的基础是什么?我推他们特别用力去学数学。你要是数学不好,嘿嘿,不许住我家(笑)。说笑的啦,但我真的觉得数学是必须掌握的基本功。
还有一个是 “表达能力”。有个好玩的网络梗你听说过吗?叫 “词语型细胞 vs 形状型旋转者”(word cells vs shape rotators)。
“形状旋转者” 是指那种纯逻辑、纯数学脑子的人。你可以说,硅谷历史上的“王者”大多都是这类人,因为他们的工作往往代表着最高的地位、尊重、财富。
而 “词语型细胞” 则更擅长沟通、表达、具有人文学科的气质。
Apple 曾经展示过一张很棒的幻灯片,说他们站在 “人文艺术与科技的交汇处”。我一直对这两种 “脑子类型” 都非常尊重。
所以我觉得,培养表达能力、语言能力是非常重要的。你要能掌握我刚才说的那些 “符号”,能用正确的词去指代一个概念,构建起你头脑中的 “全球语言地图”——这会变得越来越有价值。
我们当然也有一些提示词优化工具,能帮助用户提升提示质量。但我想强调的是,提示优化不能替代真正的思考,也不能替代你注入到世界中的创造力。
V0 所做的一件事,就是努力默认生成美观的设计。我们在模型中融入了我们对 “什么是好设计” 的理解,指导它往那个方向生成。
但与此同时,我们也不希望整个互联网最终长得一模一样。所以,你能否用自己的语言去引导模型,告诉它你想参考什么风格、你想表达什么灵感,这将会变得非常关键。
我这里有个很棒的例子可以分享:昨晚我们在旧金山的 Vercel 总部举办了一场设计演示之夜,现场展示了我们是如何用 V0 构建 V0 和 Vercel 自身的。其中一个设计师展示了两段非常惊艳的动画。
其中一个,是一个三角形的动画效果,复杂到我一开始都没想到可以做出来——完全是用 V0 实现的。他用 “turbulence(扰动)” 这个词来描述他想要的那种视觉感觉。
我特意提这个词,就是想提醒大家:知道这个词和不知道这个词,结果可能是天壤之别。正是因为他用了这个词,才生成出了那个美到令人惊叹的、可交互的三角形动画——很有可能你在不久的将来就会在某个网页上看到它了。
所以我认为,表达能力、语言能力会变得极其重要。我希望我的孩子们都能掌握它。
我还做了一件事,就是带我孩子去参加黑客马拉松。我们刚去了一个很棒的黑客马拉松,是在旧金山大学(USF)举办的,叫 Bloom Hackathon。我带了两个孩子一起去。
我就是想看看大家是怎么展示自己作品的。我们玩得很开心,还吃了华夫饼和烤三明治——额外的加分项(笑)。
在我看来,“展示” 和 “把自己展示给世界” 是非常重要的技能。
我一开始在播客里也提到过,我其实从你和你的嘉宾身上学到了很多,因为你会把一些很棒的内容片段发在 X(原推特)上,分享视频和访谈节选。
所以,能把你做的东西展示出来、分享出去,这是未来非常关键的技能,尤其是在一个 “边际成本几乎为零” 的世界里——软件和新产品的生产门槛越来越低。
你必须学会打造自己的 “观众”。你必须学会如何与人交流。你必须建立你自己的“风格”和“品牌标识”。
当然,也许我的孩子们现在还太小,还不太懂这些。但我想,带他们参加黑客马拉松这件事,已经在潜移默化地影响他们的 “神经网络”,为将来的训练数据打下基础(笑)。
主持人:他们以后一定会跟同学说:“我爸带我去黑客马拉松了。” 别人都一脸震惊(笑)。那你真的是在鼓励他们学编程吗?因为我注意到你前面提到数学、表达、展示这些技能,那编程呢?
Guillermo Rauch:我会让他们学一些,但我的重点是——让他们学会怎么 “使用提示词”、怎么用 V0 编程。我们在构建东西的时候,会展示生成的代码,这样他们就可以逐渐建立起 “输入提示词” 和 “输出代码” 之间的映射。
也就是说,他们不一定要抽象地去学 “什么是编程”,除非他们本身对这个很感兴趣。我的五个孩子性格各异,兴趣也完全不同,我也不想强迫他们去做他们不喜欢的事情。
所以学不学编程,这件事因人而异,有些人会喜欢,有些人可能觉得那太无聊了。
但我推荐大家至少去理解一下这些东西是怎么运作的。比如你给 V0 或其他工具下一个提示词,生成出一段代码,那你至少要大概知道它做了什么。这个过程,其实是 “表达能力” 的一种延伸。
我在 Vercel 很早期就做过一个决定,后来被证明非常正确。我们可以把 Vercel 当作是 “简化版的 AWS”。
我们拥有一大批用户群体,这些人如果自己去配置云服务中的各种细节,可能根本搞不定。但他们又确实需要像 AWS 那样的扩展能力、灵活性、速度等等,因为他们想打造真正高质量的产品和服务。
我喜欢用超级碗的例子来说明这一点:我们的一位客户叫 Ramp,他们在超级碗期间投放了一支广告,网站流量瞬间暴涨了 43 倍。
而负责这个项目的工程师,只需要学会 Next.js 就够了——这是我们开发的框架。他把代码推送到 Vercel,然后就能触达上亿用户,系统依然 100% 正常运行,没有任何崩溃或延迟。
这种 “超级能力” 来自于一件事:我们把 “入门门槛” 降到了极致。而我们选择的编程语言——JavaScript——在这个故事中也非常关键。
在我看来,JavaScript 就像是 “编程语言里的英语”。
你只要学会了它,就能覆盖全球数十亿的设备。所以并不奇怪,当你让 ChatGPT、Anthropic 或 Gemini 去生成一个 Web 应用时,它们最终都会选择 JavaScript、React,这些已经成了 Web 开发的 “通用语言”。
所以如果你真的想深入学习编程,那就从 JavaScript 开始吧。因为它可以让你接触到海量用户。
如果你有兴趣深耕工程领域,我认为未来几十年甚至上百年内,都会有一个 “核心技能” 始终保持价值,那就是:构建 “基础性基础设施”。
你可以把 LLM 理解为一种 “神谕者”(oracle),它们可以帮你生成软件,但它们还是有很多限制的。
比如上下文窗口、计算资源等等。现在的 AI 代理还很难做到从零开始写一个 “完整的云平台”,写出所有基础服务,自己从头造一个框架、编译器。它们并不是在“重新创造宇宙”,而是基于已有的技术生态在运行。
否则就会陷入牛顿那句经典名言:“想要从头开始做一个苹果派,你必须先创造宇宙。”
换句话说,大模型是在与现有的世界协作,而不是从无到有。所以那些掌握 “底层基础设施构建能力” 的工程师,在未来仍然会极具竞争力。
主持人:我们也听到过一种说法:或许未来某一天,ChatGPT 会自己生成下一个版本的 ChatGPT。但你刚才的意思是——如果真的会实现,那也还早着呢,对吧?
Guillermo Rauch:完全同意。要不然你去看这些 AI 公司官网的招聘页面,全是 “招聘工程师”、“招聘工程师”——几乎所有岗位都是工程岗(笑)。
当然,也有例外。比如在 Vercel,我们本来有 150 位能写代码的工程师,总人数是 600。但现在,你可以说我们有 “600 位工程师”。
为什么?因为我看到的最棒的一些 V0 应用,根本不是技术团队做出来的,而是市场团队、销售团队、产品团队做的!
产品团队,没错——现在他们真的可以 “亲自构建产品” 了!
就在昨晚,我看到我们在 V0 上写了一份新功能的产品文档,关于如何把 V0 项目部署到 Vercel——可以把它看作是一个 “实时在线的产品需求文档”(Live PRD)。其中的细节丰富到令人震惊!
我们大家看完都说:“这还能不直接上线?这不就是完整产品了?”
它是可视化的、可交互的,展示了出错状态、成功状态、加载缓慢状态……一应俱全。
它不仅赋能了有技术背景的人,更赋能了产品构建者去拓展自己的思路——甚至包括那些他们原本都没考虑过的产品状态和细节。
主持人:V0 这个名字听起来像是 “V1 的前一版”,给人的感觉是它是一个用来做原型、初版尝试的工具。现在很多 AI 工具确实也都在这个方向找到了产品市场契合点——用来做原型、MVP、演示稿,把想法变成可以“跑起来”的东西。
那你觉得 V0 或其他类似工具,未来是否能发展到构建像 Salesforce 那样的大型企业级应用,甚至支撑数十亿美元的业务?
Guillermo Rauch:其实我们已经有一个企业级客户,他们的全部产品、全部功能、所有客户沟通内容,全部都是基于 V0 构建的。
就在两天前,有人在 X 上跟我讲了一个有趣的故事。他说他的兄弟刚刚把用 V0 做的网站卖给了第一个客户——这是他们第一次真正靠 V0 实现了商业变现。
昨天我在一次投资人大会上,有位投资人走过来对我说:“我有两个朋友刚刚在 V0 上订婚了。” 我说:“等等……V0 现在成婚恋平台了吗?”原来他们是用 V0 做了订婚网站、求婚网站、甚至婚礼页面,全是 V0 原生构建的!
我们之所以能支持这些 “从头到尾” 的使用场景,是因为我们把 V0 和 Vercel 的基础架构做了深度集成。
所以我前面讲的那个故事——“我有个网站要上线,我希望它能被一亿人看到”——现在对所有人都成立了。我们可以让每个人都拥有这种能力。
从前端到后端、从原型到产品,完全 V0 原生构建,运行在强大而灵活的无服务器架构上,支持亿级访问量——你只需要输入提示词,或者上传截图,甚至直接把产品需求文档粘贴进去就行了。
主持人:那我们来帮大家提升一下使用 V0 的成功率吧,等等也可以做个演示。
但在此之前,假设你可以“悄悄坐在一个第一次使用 V0 的人旁边”,对着他耳边说一句建议,让他更容易成功使用这个工具,你会说什么?有没有什么特别的使用小技巧?
Guillermo Rauch:首先,我会说:你可以尽可能大胆地设想你想要构建的东西,然后大胆地告诉这个工具。
如果你能提供一些 “灵感参考”,你得到的结果通常会更好。
如果你实在不知道要做什么、要怎么写提示词,那我建议你可以先去 V0 社区看看,挑一个项目分叉一下当起点。
还有一个建议特别适合有技术背景的人:保持 “暂时的怀疑中止”(suspension of disbelief)。
就像我之前说的,V0 的代码生成让我很震惊——比如它生成的代码在可访问性方面比我写得还好。所以你需要保持开放心态:这个工具可能真的知道一些你不知道的东西。
所以,与其去纠结它用不用了某个框架或写法,不如把注意力更多放在产品描述本身——你希望最终用户体验到什么?你希望这个产品做什么?
用开放的心态去引导它试试。还有一点是:你要有 “迭代意识”。
你可以把它想象成你在和一家设计公司合作,或者你雇了一家外包开发团队。你一定会来来回回交流很多次,对吧?你会说“换个试试”、“再想个版本”……
而这恰恰就是我在 V0 上经常做的事情。很多时候我只是随口说一句:“换一个版本吧”,它就能把我卡住的地方顺利解决掉。
主持人:你是直接就用 “换一个版本” 当提示词吗?
Guillermo Rauch:也不一定非得这么说,就是在对话框里随便说点人话:“V0,我们得聊聊了,这个不太行啊……” 就像你在做一次一对一的绩效评估(笑):“兄弟,咱得换个方案。”
我自己现在也把这当作一种 “寻找突破点” 的训练。我一直在试图找到 V0 做不到的东西。我在 V0 社区也有自己的个人主页,到时候可以把链接发给大家。上面有六七个我自己亲手做的项目,我觉得都挺有代表性的。
比如说,有一次我从东京飞回旧金山,飞机上的网络特别差。我在飞行过程中有个习惯,就是喜欢随时监控自己所乘坐的航班。我通常会打开 FlightRadar 或类似的工具。
那次飞行实在太无聊了,我发现那些航班追踪网站,不知道是 FlightRadar 还是其他几个,我有好几个 app,它们界面都特别臃肿,不符合我心中理想的样子。
所以我决定:那就自己做一个吧!就在飞机上,我用世界上最差的网络连接,直接做了一个我自己的航班雷达应用。
我调用了一个叫 AviationStack 的航班数据 API,然后告诉 V0:“我们要来做一款地球上最棒的航班雷达。”
我没有具体告诉它怎么做。它自己选用了一个叫 Mapbox 的地图工具,以及一个叫 Leaflet 的 JavaScript 库。这些都不是我指定的。
你知道接下来发生了什么吗?
我们先做出了一个初版设计,而且非常漂亮。然后我开始更进一步地要求:“现在我们来让它变成真的吧。”
说实话,这就是我一贯的工作方式,也是 Vercel 当初的开发流程——我们总是从用户体验出发,从界面开始构建。
我先让飞机图标能在屏幕上跑起来,接下来再处理更复杂的细节。比如:你知道吗?天空中同时存在的航班数量非常多,多到一个屏幕根本显示不下。
所以我开始和 V0 一起优化性能。但我依然没有给它具体的技术实现方式。我只是说:“我们现在飞机太多了,得想办法搞定它。”
我还开玩笑地称呼它为 “chief”,比如:“chief,我们得想想办法了。”
后来我把这个项目分享到 X 上,很多工程师看了之后都震惊了——因为它最终生成了一个基于 Canvas 的渲染方案。
Canvas 是那种像 Figma 这样高级产品才会用到的底层渲染技术。而 V0 不但做到了,还在地图上叠加了一个超强的可视化层,能在任意时刻渲染上万架飞机。
然后我继续跟它说:“好吧,现在我们让它变成一个全栈应用吧,把它接上航班 API。”
这个例子说明了一点:整个过程中,我们并没有设限。它能一直构建下去,没有天花板。
而我自己现在在 V0 社区中扮演的角色之一,就是不断尝试 “挑战极限”——看看它有没有什么做不到的。
哪怕它能做出来,我们也会非常关注质量和性能。我们的目标始终是:这些东西必须是真实可用的。这是我们对用户的承诺。
主持人:那你做这个航班雷达花了多少钱?用了多少时间?
Guillermo Rauch:你说这个航班雷达项目?大概不到两个小时吧——而且是在世界上最烂的网络环境下做的。对不起日本航空,我还是很爱你们的(笑),但你们的 Wi-Fi 真不行。
主持人:那成本呢?比如你用了 V0 付费版,大概花了多少钱?你估计一下?
Guillermo Rauch:我用的是 V0 的 $20 月费套餐。
主持人:也就是说,你只用了两个小时,成本大概就 20 美元?但如果让工程师来做,要花多少时间?多少钱?
Guillermo Rauch:要是让工程师做?少说几周,毫无疑问。
主持人:那至少得几万美元吧?
Guillermo Rauch:差不多。也许你能找到一个 “超级能干” 的工程师,不用 AI,纯手写代码,两三天能做出来。但别忘了:那设计谁来做?而我本人又成了瓶颈——我是工程师。
而这也正是这种“人机协作”的神奇之处。我是产品经理,我给它提供产品方向,比如说:“在两个机场之间画一条虚线。”
然后 V0 居然回答我说:“我需要考虑地球的曲率,所以得画一条伪正弦路径。”
我当时的反应是:“好吧,V0 你真是个超天才。”
所以我才说,这个工具简直就像一个 “产品副驾驶”,它是个 “全知的存在”。
我们昨天还有一位用户提交了正面反馈。他非常满意,说:“V0 就像是一个超级聪明、但有点注意力缺陷的五岁博士。”
我不是想把它神化,说它什么都完美、什么都能做,但它真的会时不时迸发出那种令人惊叹的聪明才智。
我一直认为,“AGI” 这个说法其实低估了我们现在这些工具的能力。我们已经拥有很多“超级智能的火花”。
我不认为 V0 是 AGI,但如果它能知道怎么根据地球曲率去画一条高性能的航线图,还能在地图上展示上万架飞机的实时位置……
那已经是超人级别了。而且——它真的很好用。
主持人:你在讲的时候我突然意识到,其实 AI 构建应用时代有三项核心技能:
Guillermo Rauch:没错。
主持人:而且很有意思的是,你刚刚讲的内容已经很像是 AI 工具的 “教练术” 了。比如你会说,“这里是数据库的问题”、“我们卡住了”、“这地方想不出来”……这些本来是工程师的责任,现在变成了人和 AI 之间的沟通过程。你认同这个观点吗?
Guillermo Rauch:完全认同。我可以讲个我自己的小故事。
我们回到很久以前。Next.js 是构建在 React 基础上的框架。React 是 Facebook 开发的 UI 组件库,它的初衷其实就是:让一大堆工程师能更高效地协作开发超大型产品。
于是他们发明(或者说推广)了“组件”这个概念,把它变成一种可复用的构建单元——就像“乐高积木”一样。你用组件来拼接页面。而语言模型特别喜欢 React 组件,这并不是巧合。
React 有个非常厉害的设计原则,就是所谓的 “逃逸口”(Escape Hatch):当你发现它的组件系统无法完美解决你的问题时,它会允许你跳出框架限制,自己决定下一步该怎么做。
比如说,它有个叫 dangerouslySetInnerHTML 的 API,专门让你“跳出安全边界”——告诉你,“你现在进入了未知领域,自己看着办吧。”
这个思路是一种非常深刻的系统设计理念。而我一直也在思考,“逃逸口” 这个概念可以怎么用在 V0 上。
V0 的一个强大 “逃逸口” 就是:你随时可以看到它生成的代码,而且可以自己编辑,也可以交给其他专家继续处理。
我们昨天在演示时展示了一个案例,是来自一家很棒的公司叫 Luma Labs。他们正在开发全球最先进的视频生成模型之一,他们在构建产品、网站时,大量使用了 V0。
他们的设计工程师讲述了一个例子:他说,他当时正在使用一个在 V0 上迭代了大约 120 次的项目。他已经深入“潜入了模型的潜意识空间”,完全沉浸其中了,结果遇到了卡壳。你知道他怎么做的吗?
他复制了我们生成的代码,贴到了 ChatGPT 里面,然后让 ChatGPT 帮他解题!
听到这个我真是太震惊了。我自己都没想到这个办法。这就呼应了你说的第三个点:“学会如何走出卡壳状态”,这简直是一个深刻的人生课题。
Facebook 以前有个原则叫 “Don't get blocked”(不要卡壳),意思是你要主动去找方法解决问题、找人帮忙。
现在厉害的是:你甚至可以 “找另一个 AI” 来帮你解卡。
我们还提供了其他 “逃逸口”——比如你可以看到它背后的源码,甚至把项目转成 Git 版本管理的形式,变成 “提示词驱动 + 传统工程”的混合项目。
而这个 “门” 是对你永远敞开的,这一点太重要了。
那我们来点实操吧,直接演示一下 V0 实际操作是怎样的。你来共享屏幕,我们边聊边看。一边展示,一边讲讲你的使用习惯。这个过程我觉得既直观又有趣——大家会更容易理解。
当然,我们一向主打 “交付”(Shipping)!
所以你看到的这个界面,我们的设计理念是:你用英语说出想法,直接 “对着工具说话”。
比如,我输入一个提示词:“帮我创建一个 Contact Sales 表单,风格参考 Supreme(我打错了,写成 lbs get),用于一个在线商店。”
有时候用户会遇到 “写不出提示词” 的情况,我们加了一个功能叫 “提示增强器(enhanced prompt)”,它可以激发模型中隐藏的创意空间,增加随机性。
当然,刚才我说的 “表达能力” 和 “了解术语” 依然是最重要的——你得知道自己想要什么。
你会注意到:当模型开始生成时,它会先让你“窥探”它的思考过程。
这是我们最近新加的功能,主要受 DeepSeek 革命性 “思维 token” 功能的启发。
比如你让它生成一个 “联系销售” 表单,它就会展示它的思路:它决定用什么组件库(比如 shadcn/ui),用 Tailwind CSS,还是用 React。
这时候如果它做得不符合你预期,你就可以立刻干预、修正、给出反馈。
接下来你会看到,它会生成一堆文件,并输出我想要的内容。
我把页面缩小一点,你可以看得更清楚。
这里有几个亮点我特别想提一下,尤其是作为一个资深工程师的视角。
它使用的底层组件系统,和现在全球最先进的一些产品用的是一样的。这套系统叫 shadcn/ui。
你今天去 grok.com 看一下,他们的 UI 就是用这套系统构建的;他们也用了 Next.js。所以你现在在 V0 得到的代码,其实和他们的开发级别是一个水平的。
还有一点,很多人在社交媒体上也常常说起:当你在使用全球通用的组件系统时,你当然不希望 “所有网站都长得一样”。而它现在已经能理解像 Supreme 这样的品牌风格,并自动应用在设计上,这点也很酷。
不过我现在要对它说:“其实我是做金融服务的,把风格改得更严肃一点,参考 Charles Schwab。”
这就是典型的迭代流程:你先生成一个初稿,再给它反馈、让它调整。
而且这个流程完全可以扩展到非常大的项目——你一开始就可以生成一个大型系统,再通过提示词不断微调。
趁这个过程中我们在等待,我顺便展示一下 V0 社区的一个厉害作品,是 Luma Labs 分享的。
你只要点击 V0 侧边栏里的 “Community” 就能找到。我现在 fork 它一下。
你看这里的动画,真的非常惊艳。他们用这个页面来吸引并招聘设计师。我强烈推荐这个公司——如果你是品牌设计师,真的值得考虑他们。
注意哦——这些都是 AI 生成的。
他们用自研的 AI 图像生成工具生成这些美术画面,而且是可交互的。
比如自动播放的功能、复杂的页面布局、动画系统,完全是用 V0 构建的。我刚才提到,他们有一次甚至把我们生成的代码贴到 GPT-4 里寻求帮助——谢谢 OpenAI(笑)。
现在我说一句:“请把它改成棕褐色调(sepia)。”
这就是一个典型的二次创作例子:我 fork 了别人做的项目,然后根据自己的需求进行修改。
同时,我那边的企业风格 contact 表单也准备好了。
还有一个很好玩的方式是从截图开始。我用 Fortune.com 这个网站举个例子——他们是 Next.js 用户,网站很炫酷。
假设我也想进军新闻行业,那我就直接贴一个截图。当然我也可以上传 Figma 文件。然后我还可以让 V0 回答知识性问题,比如:“什么是 newsletter?请用图解方式说明,并以 Lenny 为例。”
所以 V0 也是一个知识型工具,但我们更强调它是 “生成型” 的。也就是说,我们在产品设计上会引导它倾向于 “创造新东西”。
你可以看到它正在生成一个新的新闻网站页面。与此同时,它还在根据我刚才的请求生成一张关于 newsletter 的图解。
你看,它还真识别出你是 Airbnb 前产品负责人。可能我其实该用 Airbnb 做案例(笑)。
我们来看一下它刚才生成的页面。我现在注意到导航条有点偏了,应该居中。
我来用 refinement 工具,把它居中。这也是我很喜欢 V0 的一个功能点。
我经常说:“网页开发中最难的问题之一就是——让一个 div 居中。”(笑)
现在它果然也识别出了这是个 div。你可以看到我在提示词中精确地说出要求。和很多工具不同的是,V0 不仅让你看得到代码,更关键的是:你是“以产品为中心”在工作的,而不是一开始就陷入代码细节。
我称这种方式为 “code-last”(以产品为主),而不是 “code-first”。你真的就是 “生活在产品里”。
我们再来看看 Semaphore 的网站——我很喜欢它的视觉风格。我现在说一句:“使用这个风格,并应用在我当前项目上。”
主持人:所以你现在在共享屏幕,一边用一个截图来生成网站,一边再用另一个截图告诉它:“把样式变得像这个。”
Guillermo Rauch:对,它现在具备的能力就是能理解不同截图代表的视觉语言。
它可以理解功能性、也能理解布局风格。还有一点非常重要的是,我们会在模型层面加引导——让用户省去很多本来需要手动输入的提示词。
比如 “响应式设计” 这个点,我们就默认加上了。你看我把页面窗口缩小,它就会自动变成适配移动端的样子,导航条变成了折叠菜单。
我还可以说:“把这个风格应用在整个网站上。” 这让我非常惊艳。
不知道今天我为什么这么执着于 “棕褐色调”,但你看,它不光改了背景颜色,还把勾选框都改成了 sepia 风格。它还自动使用了 CSS 的滤镜属性。
我查了一下,还真的是 CSS 的 filter: sepia()。说实话,我都不知道原来 CSS 有这个功能。
当然你也可以用 Canvas 写算法去做这个效果,但它选了一个更优雅的方式。
主持人:而且它比你自己写得还优雅(笑)。
Guillermo Rauch:对,所以你用这个工具的时候,真的不能太固执。它可能比你更懂设计。
我虽然喜欢用别人的网站截图做示范,但我想提醒一下大家:V0 并不是为了 “克隆别人的网站” 而设计的。
主持人:对,这只是个演示场景,用来说明工具的能力。
Guillermo Rauch:完全没错。你完全可以截自己的画板,或者 Slack 里别人发的设计图,来做出你自己的版本。也不要犹豫去加功能——V0 是真的可以做出完整产品的。
主持人:太棒了,感谢你做这个演示。
我在看的时候就在想:如果我是让一个工程师来实现这些需求——比如“给我弄成 sepia 风格”、“仿照这个页面”——那需要多少沟通时间、多少天、多少周才能搞定?而你现在现场几分钟就做完了。
Guillermo Rauch:没错,传统方法可能得花几个月,甚至可能永远上线不了(笑)。
主持人:我特别喜欢你前面提到的 “提示优化器” 这个功能——它能把你的原始提示变成更优雅、更符合设计规范的版本。这个机制其实就是在“把最佳实践注入生成过程”。
另外我觉得这里还有个更有意思的机会点,就是:AI 能不能帮你判断,你做的东西 “是不是一个好主意”?
比如它能问你:“你要解决的问题是什么?”、“用户有没有真的向你提出这个需求?”、“多少人说过这件事?”……
这让我感觉,未来应该会出现一个类似 “一页纸产品需求文档” 的辅助工具。
Guillermo Rauch:完全同意。其实我们正在越来越深入地 “窥探 AI 的思维过程”,而这本身已经变成了一个杀手级功能。DeepSeek 推出的“思考 token”功能就是一次行业大事件。
虽然 OpenAI 其实早就具备这项技术,但出于竞争策略,一开始他们没有开放。而 DeepSeek 一出手,立刻验证了这个方向是对的——用户非常喜欢看到 AI 在 “思考” 什么,并引导它思考。
我们从用户那收到了很多惊人的反馈、甚至是 Bug 报告,有些人会指出:“你看,AI 就是在这里想错了,请帮我修复。”
所以我们越多用户加入 V0,就越多反馈、越多点赞和点踩,就能让我们把产品打磨得更好。我也特别想给其他产品创始人一个建议:让用户在产品内留下反馈的机会越多越好。
Stripe 给了我很大启发——我们在 Vercel 最初也是这样做的:页面上有一个小小的反馈按钮,点开就是四个 emoji,用户可以瞬间表达他们对当前功能或页面的感受。
这些反馈会直接进入我们的 Slack 频道。我们就是靠着每天不断地 “接收用户的思维”,一点点把产品打磨出来的。也许早期只有每天几条、几十条,但它是持续不断的。
而当你在构建 AI 产品时,这种 “用户反馈流” 会更加密集。如果你今天不是在构建 AI 产品,那你很可能没法和那些能把用户反馈融入模型训练的人竞争。这就是我们构建 V0 的基本理念之一。
因为我们有这个反馈回路,我们现在已经把很多构建 V0 的核心技术开源了。
比如你想做一个 “给医生用的 V0”,那你可以访问 vercel.com/templates,我们提供了一个开源的 ChatGPT 模板,里头已经集成了目前全球范围内最优的 UI 最佳实践。
你现在可以直接基于它,去构建你自己的垂直 AI 产品了。
我们还开源了一个叫 AI SDK 的工具,它是 V0 背后的 “基础管线”。它允许你接入任何模型,并不仅仅生成文本,而是可以生成完整的用户界面(UI)。
既然我这么喜欢演示,那我最后再快速展示一个。你访问 chat.vercel.ai,这就是我们开源的 ChatGPT Demo。你可以像传统 LLM 一样问它问题,比如 “旧金山今天的天气怎样?”
你会看到它不是回一段文字,而是直接生成了一个组件,这是我们称之为“生成式 UI”(Generative UI)。最后我们再玩一个小彩蛋:“帮我写一篇关于硅谷的文章。”
它马上就会为你生成一个画布页面,这种风格我们叫做 “artifact style” 体验。一切都是生成的,但用户可以编辑、修改、润色、继续延伸……
主持人:这其实让我想起了一直在思考的一个问题。现在有很多创业公司在打造垂直领域的 AI 工具。这有点像跑题了,但你总会看到各种面向律师的 AI,面向医生、护士的 AI 工具,这些项目的宣传点是,创始人们对这个特定领域的问题非常了解,他们会构建非常针对性的工具。
Guillermo Rauch:是的,我完全相信专家级 AI 工具才是未来。
在 Vercel 上就有一个非常棒的产品叫 chatprd.com,它是用来撰写 PRD 的 V0 工具,未来会和 V0 集成。你可以用 AI 写 PRD,然后将它部署出去,这就是一个很典型的垂直方向。还有一个叫 Open Evidence 的项目,它就像是医生专用的 ChatGPT。另外还有一家很棒的初创公司正在构建 X 光 AI 工具。我认为想法是无限的。
我们 Vercel 的一些 AI 用户,比如我们的法务团队,就非常喜欢一个叫 GG.CD.AI 的工具。理论上他们可以直接去用 ChatGPT 提问法律问题,但有人就决定要打造一个全世界最好的法律 AI 工具,要保持实时更新,要对这个问题着迷——而且这个工具的 CEO 本身就是律师。要想跟这种项目竞争,可不容易。
主持人:但我在想的问题恰好相反。我想听听你的看法,但我们不用花太多时间探讨这个方向,因为它完全跑题了——
Guillermo Rauch:没关系,我喜欢跑题!
主持人:你刚刚演示的那个天气小部件,基本上就是一个由 AI 在对话过程中创建的迷你应用。那么设想一下,当 AGI 足够强大、接近超级智能的时候,它是不是可以实时为你构建出一个 Harvey?一个面向律师的最佳体验产品,它可以即刻出现。
没错,我们已经能做到这一点了。完全可以。我相信最终是可以的,但人类总归会希望有一些“护栏”。
现实是,GG.CD.AI 在做两件事:一是构建出最好的法律工具,二是把自己的信誉放在上面,他们会说“我们自己也在用这个工具,我们认为这就是未来应该的样子”。这种方式带有明确的方向感和观点。
而如果你把这些事完全交给 AI,那就会进入一个很微妙的状态——比如提示词的修饰。AI 并不总是知道我们真正想要或真正需要的东西。它更像是一个副驾驶、伙伴、助手,而不是掌控我们生活的主角。我甚至不确定我们是否真的希望它那样。
主持人:好,那我来换个完全不同的话题,聊聊 “品味”。我们常听人说“品味”这个词,好像每个人都在强调它是非常重要的能力——知道什么是好的,知道人们会喜欢什么、有价值的东西。而你显然是一个非常有品味的人,你构建的产品非常美观,V0 是我们见过的默认界面最漂亮的构建工具之一。
那怎么培养品味?很多人说 “我就是有品味”,但也有人完全不知道怎么提升。你怎么看?有没有什么建议给想要提升自己品味的人?
Guillermo Rauch:我认为非常重要的一点是——要多尝试各种产品。你必须去接触它们。我觉得很重要的一点是回到现实世界中去、发布产品。不要害怕展示自己。
你要对自己诚实:做一个产品,发布它,看看人们的反馈,然后回去修改。
在我们公司,我们有一个内部运营原则叫“增加曝光时长”(exposure hours),就是量化你花了多少时间去观察别人使用你的产品,甚至是使用别人的产品。这能帮你培养“品味”这个肌肉。
很多人把品味当作一种天赋,但我把它当作一种可以培养的技能。AI 在这方面也能帮很多忙,它可以提炼出一些通用的设计原则。
但也别忘了世界上总是有流行趋势在变,比如我不是特别懂高定时装,但你会看到巴黎时装周每年都会有一个主题,也总会有一些创新或突破。
你也可以尝试站在不同的高度,甚至定义新的高度,这其实非常令人兴奋。
主持人:我特别喜欢 “增加曝光时长” 这个方法。听起来就是:多使用优秀的应用。
Guillermo Rauch:没错。
主持人:这还带有一个反馈循环的特点,比如……
Guillermo Rauch:对,而且里面有很多微妙之处。比如我最近用 AI 创建了一个新工具,并发布到了我的 Pro V0 上。
我创建了一个像 ChatGPT 一样的界面,灵感来自 Grok。我模仿了 Grok 在移动端网页上一些非常聪明的细节设计——比如用户在输入框按下回车时,它默认是换行,因为它知道人们在移动设备上更习惯点击图标来发送信息,而不是按回车。
但在桌面端,它又反过来:按回车就是发送。如果在桌面端按了回车却换行了,很多用户会觉得挫败,因为他们不知道还可以按 Cmd+Enter 来提交。这会降低整体体验效率。
当然这些也可以通过提示词解决,但你必须关注细节。你得决定你想在世界上看到什么样的产品。
有时候这意味着要定义最佳实践,有时候是去学习他人的最佳实践。
“曝光时长”的另一个好处是:它可以帮你避免高估你自己的产品。你得把你的产品交给别人试用,看看他们是怎么操作的——直面现实的痛苦。你越能沉浸在这种“接地气”的使用环境中,你就越能变得强大,更脚踏实地,也更谦逊。
主持人:但我们不喜欢痛苦啊。不过我喜欢你提到的这个建议——多制造一些“痛苦”,比如让用户体验你正在构建的产品。你有没有一个经验法则或者数字,比如每周或者每月你的团队应该有多少 “曝光时长”?还是说,多多益善?
Guillermo Rauch:对我来说,永远是“多多益善”。因为惯性会让你只活在自己的脑子里,让你以为你知道一切、一切都很顺利。当然,它在我的电脑上运行得很好嘛。但我觉得我们需要持续推动“更多曝光”。
我有时候会做一些小事,比如我会让团队成员把我的日程安排上色。我会说:我必须有一定数量的一对一交流会议,在我的日历里体现出来,以便我能和大家同步,了解公司的现状。
然后我也会安排客户会议。在这些会议上,我会逼迫自己亲自去使用产品。特别是在与企业客户的会议中,我会故意“忘掉”我们是怎么构建这些功能的,忘掉 Next.js 支持了哪些特性,就直接像普通用户那样去使用我们的产品。因为我想确保我们的产品真的好用。
这也是一种“曝光时长”——通过观察客户在现实中是否成功地使用我们的产品来反推。而这只是个经验法则,比如说我这周三分之一的会议是客户会议,我就会观察他们的使用情况。
我们还会频繁邀请用户现场演示他们是如何使用产品的,有时候是向高管团队展示,有时候是向整个公司演示。每一次我们都会从客户那儿发现一些有趣的事情——可能是他们在某个地方遇到的痛点我们之前根本不知道,或者某些地方并不像我们以为的那么直观。
主持人:我发现做这种事的时候,比如去和客户交流、让他们展示如何使用产品,每次都会让我有种“我怎么不早点做这事”的感觉。每次都很震撼人心。
Guillermo Rauch:确实如此。
主持人:那我想聊聊 V0 目前的限制。人们需要了解哪些事情,比如它目前还不能做什么?如果我有一个已有的代码库,我能接入 V0 开始操作吗?还是这个功能还在开发中?还有其他哪些“它现在还不行”的点需要大家知道?
Guillermo Rauch:目前你可以通过 zip 文件导入代码库,Git 集成功能也快上线了。它支持全栈开发,也能连接 API。在接下来的几天里,可能在这个播客上线之前,我们就会完成非常紧密的集成。如果你需要数据库、AI 模型,或者 AI 决定它需要这些资源,它就会自动从 Vercel 市场中安装所需的内容。
Vercel 市场已经汇集了世界上一些最优秀的基础设施产品,比如数据存储、数据搜索等等,这会让 V0 的功能更强大。
我每天都会做一件事,就是尝试把一个疯狂的想法变成现实。到目前为止,这种体验非常强大。当然,AI 目前仍然是一个不断进化的过程,它可能会出错。我们在输入框下方设置了一个小的免责声明:“你可能会遇到错误”。
我们的“适应度函数”发现一个强烈的关联——用户喜爱度和留存度之间有高度正相关。V0 是我们过去所有 AI 产品中用户粘性最高的。用户每天都在用,一旦发现 bug,他们就会非常紧张,因为他们每天都在依赖它。
当然,我也要强调:错误是可能发生的。偶尔你可能会遇到运行时错误,但我们加入了很多机制,使得 V0 拥有很强的“代理性”(agentic),也就是说它具备一定的自我解决问题的能力。
最后,我想补充一点——当产品变得非常庞大时,目前的 AI 仍然不太擅长处理大型代码库。但回到 React 组件的思路,因为我们把项目拆分成了文件和组件,所以在这方面我们做得还不错。
事实上,Next.js 最出名的一个特点就是——你只需要创建一个文件,Next.js 就能自动路由到这个页面。如果你熟悉 PHP,这就像 PHP 的工作方式。所以现在的语言模型擅长处理文件,这与我们的开发模式非常契合。
当项目变得很大时,你只需要把任务限定在一个小的组件或文件上,就能降低语言模型在超长上下文窗口中无法推理的概率。
主持人:我想回到设计这个话题。我们说过 V0 默认设计就很好,颜值极高。如果有人想让产品看起来更漂亮一点——大多数人并不是设计师,不知道怎么让产品看起来好看,也不知道该怎么描述。你有没有什么建议或最佳实践,能让他们的应用视觉效果更上一层楼?
Guillermo Rauch:我最近见到一家大银行的 CIO,他业余时间会自己写代码、尝试各种新技术。我给他演示了 V0,他瞬间变成了 V0 的“重度用户”。他现在每天都给我发反馈。
他把自己原来用另一个网站构建平台建的两个网站迁移到了 V0,并用 Vercel 部署,设置域名,直接上线了。然后他告诉我说:“我现在面临一个挑战——我跟几个朋友一起办了一个音乐节,这是我们请设计师做的宣传册。”那个设计稿非常像传统的平面设计。
他把设计图给 V0 了,第一版生成结果出来之后,他还吐槽我说:“这设计不太好看。” 但因为我对这个工具比较熟悉,我就跟他说:“你直接把这个反馈告诉 V0 就好。”
你昨天问我,有哪些我从产品中学到的经验,或者说我坐在你旁边会怎么推荐用法?我的建议是:千万不要犹豫,把你的反馈直接告诉 AI。
很多人会点那个“反馈按钮”来告诉我们他们想让 V0 做什么,但其实很多时候我们只需要告诉他们:“你直接告诉 V0 就好了。”
他给我发了信息说:“我不喜欢这个设计。” 我就回他一个提示词:“那就告诉它:‘让它更有爵士感’、‘更抓人眼球’、‘更有视觉冲击力’之类的。”
你可以从 AI 已知的各种风格中汲取灵感,我们几次提示词之后,就做出了一个他认为比原来的设计稿更好的版本。
这时候我自己也在学习:原来 V0 可以做到这些,而最好的使用方式,是大胆释放它的创意,勇于尝试和反馈。
主持人:所以你刚才说的一个重点是:直接告诉它“让它更好看”,让它更有视觉冲击力。
Guillermo Rauch:没错。而且如果你能使用一些更具描述力的风格关键词,那就更好了。比如 neo-brutalist(新野蛮主义)、minimalist(极简主义)、newspaper-like(报刊风)、vintage(复古风)、让它看起来像一份电报……你可以尝试那些你自己可能都没想到的风格词汇,你会惊讶于 AI 能把这些概念转化为实际设计的能力有多强。
主持人:太不可思议了,甚至有点“太简单了”。也许这正好可以作为我们对话的结尾。我很喜欢你发过的一条推文,也非常有共鸣:产品质量的秘密是血、汗与泪。
我完全认同,我觉得这也是为什么我的 newsletter 能获得一些成功。我每一期 newsletter 的投入时间都非常长,可能比任何人写 newsletter 都花得久,10 小时、20 小时、30 小时,这就是它奏效的原因。你在那条推文背后还有其他想法吗?或者说,你从中学到了什么?是不是就是要非常努力地投入,才能做出好产品?
Guillermo Rauch:是的,我之前提到的“曝光时长”就是个很好的例子。它真的可能很痛苦——看到你亲手做的“孩子”在别人面前崩溃,那种感觉很难受。
另外一点是:一个优秀的产品,是由无数个细节组成的。你永远做不完它。这个过程中会带来一种谦卑感。
而这也解释了为什么最优秀的产品经理通常都会说 “九个不、一个行”——因为一旦你说了 “好”,你就像是 “领养了一只小狗”。一个功能就是一只小狗,它会成长为一只你必须照顾的“猛兽”,它会很粘人、很可爱,但也非常麻烦,会 “到处乱拉”。
所以你要有创造性的克制力,同时你又必须懂得取舍。你必须对现实世界中不断浮现出来的复杂性保持尊重——这是我自己非常在意的一个小细节。
我想表扬一下 Midjourney 团队。我非常喜欢 Midjourney 的移动端网页版本,我不知道他们有没有原生 App,但他们的移动网页体验非常棒。
而要把移动网页做到这种程度,其实是可以实现的,但前提是你要投入爱、克制、执念、大量测试,而且自己要大量使用自己的产品。
我们自己也在“狗粮式使用”:我们用 Vercel 和 V0 来打造 Vercel 和 V0。希望这种方式也能帮助我们把产品做得更好。但确实要流很多汗,也会有惊喜。
主持人:是的,你说话时完全能感受到你对这个产品的使用程度,这一点很打动我。那我再问一个问题——你提到过你们有 600 名工程师?
Guillermo Rauch:不,是我们一共有 600 人,其中工程师大概有 150 个。
主持人:哦,明白了。那么 AI 正在如何改变他们的工作方式?我很好奇,因为我觉得你们现在站在最前沿,正在重新定义 “产品是如何被构建出来的”。到底发生了什么?是每个人都在用 Cursor 和 V0 开发吗?
Guillermo Rauch:是的,是的。甚至比这还要深刻。我觉得是“每个人都可以”——我们是从 AI 原则出发来构建产品的。
我还想特别提一下 Luma Labs 的一位工程师,他说:“我会用 AI 来完成所有事情,我甚至用 AI 生成网站上的图像。”我们现在的设计师正在为下一场大会做设计,他们也在用视频模型生成所有动画。
我们市场团队也在用 V0 做出各种演示,展示我们的基础设施是如何运行的——比我见过的任何静态图示或落地页都要好。
我在 X 上最火的一条帖子,就是我们一位设计师做的,解释我们的计算基础设施如何工作的交互式演示。而在他做出这个演示之前——他一手设计、开发、发布了整个作品——这件事原本并不属于他日常的职责范围。
但 V0 让他拥有了足够强大的能力,可以跳出“我只做这类事”的舒适区,去自由创造。
我们每周五都有一个仪式,叫 “Demo Friday”,我们今天早上就刚做过。它的意义是:创造一个空间,让大家跳出职责边界,去使用 AI。
我们让大家拥有构建和发布的“权限”,这是我们文化底层的一部分,也正是它让这些事成为可能。
今天的 Demo Friday 上,我们的销售工程负责人展示了他做的一个很棒的工具,这个工具能帮助潜在客户理解 Vercel 和 V0。
我也听 DevOps 和基础设施工程师说,他们在处理 Vercel 的底层架构时,非常依赖像 Cursor 这样的工具。
所以我觉得,AI 正在以极快的速度,深入到我们工作的方方面面。
今天我还听到一个客户提的新需求,他们说:“Vercel 不是可以卖域名吗?那让我用 AI 帮我想一些新域名的点子吧!”
所以我真的能看到一个未来——AI 和软件成为同义词。我真的很期待那个未来。
我们迟早会停止谈论 “AI” 这件事。虽然我知道这可能不太现实,但我仍然觉得有必要提醒大家:AI 就是软件了。
而我们是一家软件公司。我们构建软件,也用软件来构建软件。就这样。
主持人:AI 就只是其中的一部分。Guillermo,这真是一个完美的收尾方式。你还有什么想说的吗?有没有什么想留给听众的话?
Guillermo Rauch:我想分享我对未来的愿景:我们在旧金山有一个广告牌,上面写着:“人人都能做饭。”
这是《料理鼠王》(Ratatouille)里的经典台词,也是我最喜欢的电影之一。
我期待一个未来:每个人都能把自己的想法变成现实。只要你敢想,就能实现。
我也希望,当你在使用产品、看到别人创造的东西时,能意识到我们正在共同让这个世界变得更好。
你所体验的一切,应该都在变得更快、更高质量、更少 Bug。我们每一个人都在推动这个进程。
我对此充满期待,也期待大家对 Vercel 的反馈——看看我们还能为这个未来做些什么。
主持人:说得太好了。
文章来自于“AI产品阿颖”,作者“阿颖”。
【开源免费】AutoGPT是一个允许用户创建和运行智能体的(AI Agents)项目。用户创建的智能体能够自动执行各种任务,从而让AI有步骤的去解决实际问题。
项目地址:https://github.com/Significant-Gravitas/AutoGPT
【开源免费】MetaGPT是一个“软件开发公司”的智能体项目,只需要输入一句话的老板需求,MetaGPT即可输出用户故事 / 竞品分析 / 需求 / 数据结构 / APIs / 文件等软件开发的相关内容。MetaGPT内置了各种AI角色,包括产品经理 / 架构师 / 项目经理 / 工程师,MetaGPT提供了一个精心调配的软件公司研发全过程的SOP。
项目地址:https://github.com/geekan/MetaGPT/blob/main/docs/README_CN.md
【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。
项目地址:https://github.com/InternLM/xtuner
【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。
项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md
在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0