尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

用Grok Build构建火星模拟游戏:自然语言驱动的交互原型开发

用Grok Build构建火星模拟游戏:自然语言驱动的交互原型开发 如果你第一次听说“Grok Build”可能会以为它又是一个“AI 能写代码”的营销概念。但当你真的用它把一个火星基地从概念变成可点击、可交互的网页游戏时你会发现真正有价值的不是“自动生成代码”这个噱头而是它把从想法到原型这条路径压缩到了分钟级。这篇文章把 Grok Build 放到一个具体任务里讲用自然语言打造一款“火星模拟游戏”。我会先拆解这个工具适合解决什么问题、不适合解决什么问题然后从环境准备、提示词设计、交互模块实现、运行验证到常见坑完整走一遍。整个过程不依赖你提前精通 React 或 Three.js但如果你懂一点前端基础会更容易判断它生成的代码质量。这里先给出一个明确判断Grok Build 很适合快速验证交互想法和搭建可展示的前端原型尤其适合独立开发者、产品原型验证者和 AI 编程工具的尝鲜用户。但它目前并不适合直接交付生产级复杂应用你需要自己补齐状态管理、数据校验、后端接口和安全边界。1. 这篇文章真正要解决的问题在开始写代码之前先回答一个更实际的问题为什么选择“火星模拟游戏”作为示例因为火星模拟游戏涵盖了很典型的网页交互要素多个系统模块氧气、能源、水源、温度。状态随时间变化资源增减、环境恶化。用户操作影响系统状态点击建造、分配任务、切换视图。可视化反馈状态条、日志、按钮状态。这四个要素几乎出现在所有管理模拟类项目中不只是游戏。做监控大屏、智能工厂看板、实验室设备管理面板都会遇到同样的交互逻辑。所以你跟着这篇文章跑通一个火星模拟游戏实际上就掌握了用 Grok Build 构建“实时状态面板 用户操作 动态反馈”这类应用的通用方法。很多人刚接触这类工具时最困惑的问题通常是这几个Grok Build 到底是画画界面的还是能处理逻辑我需要会哪些前置技能才能用起来它生成的代码能不能改改起来会不会很痛苦如果项目变复杂了它会不会崩这篇文章会逐一回答。尤其需要强调一点**Grok Build 的核心产出物是“可运行的网页应用代码”不是简单的静态图片生成。**它本质上是一个能根据自然语言指令生成前端项目的编程助手你可以在生成之后继续让它修改功能、调整样式、修复 bug。因此这篇文章最值得阅读的读者包括想快速做交互原型的独立开发者或产品经理。刚开始接触 AI 编程工具想系统了解工作流的新手。已经用过其他 AI 编程工具想知道 Grok Build 在“完整应用生成”场景下表现如何的开发者。希望用自然语言把“一个游戏点子”变成“一个能打开玩的网页”的创造者。如果你属于以上任意一类这篇文章可以直接收藏按步骤操作。2. Grok Build 是什么它解决的是哪一类开发成本2.1 技术定位从“单文件生成”到“项目生成”Grok Build 的定位不是“帮你补全一行代码”的自动补全工具而是“听需求、出项目”的生成式编程助手。你输入一个需求描述它生成一个包含 HTML、CSS、JavaScript 的完整前端项目并且这些文件之间是关联的可以作为一个整体运行。从架构来看它的输出物更接近一个由多个代码文件组成的浏览器端应用。你可以把它理解成一个“前端项目生成器”而不是简单的代码片段推荐工具。它可以生成一个完整的交互页面包括按钮点击事件、定时器、DOM 更新、Canvas 绘制等逻辑而这些逻辑之间是互相联动的。这与传统开发流程有一个关键区别。传统流程里你至少要经过画原型图 → 搭建项目脚手架 → 写业务代码 → 调样式 → 本地调试。Grok Build 把第一步到第三步压缩成了一次自然语言对话。你不需要自己创建package.json、index.html、style.css这些文件它会直接生成一套能打开运行的项目文件。2.2 它真正降低的开发成本如果只看表面很多人会误以为 Grok Build 的卖点是“不用学前端了”。这个理解是危险的。它真正降低的是从想法到可运行原型之间的时间成本而不是理解程序逻辑的必要性。举个例子如果你想在游戏里加一个“火星沙尘暴”事件传统开发需要你找到状态管理代码、找到事件触发逻辑、找到 UI 显示组件然后分别修改。Grok Build 的交互方式则允许你直接说“增加一个沙尘暴事件每 60 秒触发一次持续 10 秒期间太阳能效率下降 50%”它会尝试在各处代码中同步修改。这个能力很有吸引力但也意味着你必须能验证它改得对不对。如果完全不懂代码你无法判断沙尘暴事件是否只在界面层生效还是真的影响了能源系统的计算逻辑。所以我的判断是Grok Build 更适合“懂一点代码但不想把时间花在重复搭建上”的人。2.3 和传统前端开发相比变化发生在哪一层这里用一个表格来说明传统方式和使用 Grok Build 的差异对比维度传统前端开发使用 Grok Build项目创建手动初始化项目结构自然语言生成项目文件界面调整修改 CSS、调整 DOM 结构描述效果等待重新生成交互逻辑手动绑定事件、维护状态提示词描述触发条件和结果调试方式浏览器开发者工具逐行排查先看运行结果再局部修复出错概率取决于开发经验取决于提示词精确度适合阶段中大型复杂项目原型验证、小型应用、学习实验从这张表可以看出变化主要集中在开发效率和上手门槛这两层并没有改变“程序需要逻辑正确”这一本质。它不会替你判断需求是否合理也不会自动保证安全性和边界条件。2.4 用一句话概括它的适用边界Grok Build 是一款适合“快速把想法变成可运行前端原型”的 AI 编程工具适合单人或小团队在项目早期用于验证交互和界面但不适合在没有人工审核的情况下直接用于生产环境。3. 环境准备与前置条件在开始搭火星游戏之前先把运行环境说清楚。Grok Build 的核心能力依赖网络服务和浏览器端运行整体前置条件并不复杂。3.1 你需要准备什么操作系统Windows、macOS、Linux 均可因为主要操作发生在浏览器中。浏览器推荐 Chrome、Edge 或 Firefox 最新版本。需要启用 JavaScript。网络环境可以正常访问 Grok Build 服务的网络环境。由于该工具依赖云端模型推理本地无法离线运行。账号需要可用的账号体系完成登录。具体注册方式以官方页面提示为准。基本前端常识不强制要求但如果你能看懂 HTML 结构、CSS 规则和 JavaScript 函数的基本含义使用效率会高很多。3.2 版本说明从目前公开信息看Grok Build 已经迭代到 v1.0.9中间经历了 1.0.7、1.0.8 等版本更新。“教程”相关的搜索热度也在持续上升说明越来越多开发者开始把它用于实际项目原型搭建。需要注意本文的重点是演示“用自然语言构建火星模拟游戏”的完整思路而不是锁定某一个具体版本的操作路径。如果你打开工具时发现界面布局或按钮名称略有不同那是正常的迭代差异核心思路仍然适用。3.3 学习 Grok Build 之前建议先掌握的技术能力虽然这个工具降低了很多门槛但我还是建议你把以下三件事提前搞清楚HTML 的基本文档结构div、canvas、button、span分别是什么用于什么地方。CSS 的选择器和 flex/grid 布局当你需要调整卡片位置、对齐状态条时能读懂代码。JavaScript 的变量、函数、定时器和事件监听游戏中的资源更新、按钮点击、状态变化都会用到。不需要精通但至少能“读懂”和“能提出准确修改需求”。4. 用自然语言定义火星模拟游戏的需求前面铺垫了这么多现在进入实际环节怎么用 Grok Build 打造一款火星模拟游戏。这一步是整个流程中最关键的一步。很多人在 AI 编程工具上得不到理想效果不是因为工具不够强而是因为需求描述太空泛。比如你只说“帮我做一个火星游戏”它大概率只能生成一个画面好看但没有玩法的静态页面。你需要的是结构化的需求描述。4.1 先拆解游戏系统在输入提示词之前先在纸上把火星模拟游戏拆成几个核心系统资源系统氧气、水、能源、食物。这是游戏的基础资源需要维持在一定数值以上。建筑系统水培舱、太阳能板、氧气发生器、居住舱。每个建筑有建造条件和效果。环境系统火星温度、沙尘暴频率、太阳辐射强度。事件系统随机事件影响资源比如沙尘暴降低太阳能效率。胜利/失败条件人口存活天数超过目标天数或者资源归零导致失败。这五大系统不是 Grok Build 自动帮你决策的而是需要你在提示词中明确定义。你越早把系统边界想清楚后续生成的代码就越接近你想要的效果。4.2 写第一版提示词我建议把提示词组织成“项目目标 界面布局 核心机制 限制条件”四个部分。下面是一个可以直接使用的示例请帮我用 HTML CSS JavaScript 构建一个火星模拟游戏具体要求如下 项目目标玩家需要管理火星基地的人口生存目标是让 10 名殖民者存活 30 天。 界面布局 - 顶部显示“天数”和“人口数量”。 - 左侧显示资源面板包括氧气、水、能源、食物四项。 - 中间是基地状态区域显示当前温度和沙尘暴状态。 - 右侧是操作区域包含“建造水培舱”“建造太阳能板”“派出勘探队”三个按钮。 核心机制 - 每过 5 秒氧气、水、食物各减少 2 点能源减少 3 点。 - 水培舱每 5 秒增加食物 3 点。 - 太阳能板每 5 秒增加能源 4 点但沙尘暴期间只有 50% 效率。 - 每 30 秒有 30% 概率发生沙尘暴沙尘暴持续 10 秒。 - 当氧气、水、食物、能源任意一项低于 0游戏失败。 - 玩家存活达到 30 天游戏胜利。这段提示词看起来简单但它已经包含了足够的信息让模型知道输出文件类型HTML、CSS、JavaScript。界面分区顶部、左侧、中间、右侧。核心数值规则增减速率、条件判断、随机事件。游戏结束条件。4.3 提示词设计的三个坑结合经验这里提醒三个新手最常踩的坑。第一个坑是只给功能不给界面约束。如果你只说“做一个有氧气、水、能源的游戏”生成的界面很可能是随意排列的几个数字没有信息层级。解决方式是像上面示例一样明确说明“顶部显示什么左侧显示什么右侧操作区放什么按钮”。第二个坑是数值逻辑不闭环。很多人只说了资源会减少没说要怎么增加结果游戏在 30 秒内必死根本没法玩。这其实是开发者没想清楚游戏机制。建议在写提示词之前先在表格里列一下每种资源的增减规则。第三个坑是一次需求提得太大。不要试图一句话让工具生成“带存档系统、多难度选择、科技树、成就系统”的完整游戏。第一版提示词只做核心循环跑通后再迭代增加功能。4.4 第一版生成后的预期效果如果你使用上面的提示词Grok Build 会生成一个由一个 HTML 文件或一组前端文件组成的项目。打开页面后你应当能看到一个清晰的信息面板显示当前的资源和天数。三个可以点击的按钮。每隔几秒资源数值自动更新。沙尘暴出现时有明显的视觉提示。资源归零时页面提示游戏失败。到这步你已经完成了“用 Grok Build 构建火星模拟游戏”的最小闭环。5. 完整示例与代码实现尽管 Grok Build 可以生成代码但为了帮助你理解它生成的代码逻辑也为了让你在生成后有能力修改和排错这里提供一套完整的手写参考实现。这套实现完全模拟上面提示词描述的游戏机制方便你对照理解。5.1 项目文件结构mars-game/ ├── index.html ├── style.css └── script.js5.2 index.html!DOCTYPE html html langzh-CN head meta charsetUTF-8 meta nameviewport contentwidthdevice-width, initial-scale1.0 title火星模拟游戏/title link relstylesheet hrefstyle.css /head body header classgame-header span第 span idday0/span 天/span span殖民者人数span idpopulation10/span/span /header main classgame-main section classresource-panel h2资源状态/h2 div classresource-item span氧气/span progress idoxygen-bar max100 value100/progress span idoxygen-value100/span /div div classresource-item span水/span progress idwater-bar max100 value100/progress span idwater-value100/span /div div classresource-item span能源/span progress idenergy-bar max100 value100/progress span idenergy-value100/span /div div classresource-item span食物/span progress idfood-bar max100 value100/progress span idfood-value100/span /div /section section classstatus-panel h2基地状态/h2 p温度span idtemperature-60/span°C/p p沙尘暴span idstorm-status无/span/p p idgame-message/p /section section classaction-panel h2行动指令/h2 button idbuild-farm建造水培舱/button button idbuild-solar建造太阳能板/button button idexplore派出勘探队/button /section /main script srcscript.js/script /body /html这个文件定义了页面的整体结构。需要注意的是所有需要动态变化的数值都通过id暴露给 JavaScript这样脚本才能更新它们。5.3 style.css* { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: Courier New, monospace; background: #1a1a2e; color: #e0e0e0; min-height: 100vh; padding: 20px; } .game-header { display: flex; justify-content: space-between; align-items: center; background: #16213e; padding: 16px 24px; border-radius: 8px; font-size: 18px; font-weight: bold; } .game-main { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 20px; margin-top: 20px; } .resource-panel, .status-panel, .action-panel { background: #0f3460; border-radius: 12px; padding: 20px; } .resource-item { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; } .resource-item span:first-child { width: 40px; } .resource-item progress { flex: 1; height: 16px; } button { display: block; width: 100%; padding: 14px; margin: 10px 0; background: #e94560; color: #fff; border: none; border-radius: 8px; font-size: 16px; cursor: pointer; transition: opacity 0.2s; } button:hover { opacity: 0.8; }这个样式文件定义了三个面板的布局左侧资源、中间状态、右侧操作。使用grid三栏布局在屏幕较小时可以改成单列但在原型阶段已经够用。5.4 script.jslet day 0; let population 10; let oxygen 100; let water 100; let energy 100; let food 100; let farmCount 0; let solarCount 0; let stormActive false; let stormTimeLeft 0; let gameOver false; const DAY_DURATION 5000; // 每 5 秒相当于 1 天 let dayInterval null; let stormInterval null; function updateUI() { document.getElementById(day).textContent day; document.getElementById(population).textContent population; document.getElementById(oxygen-value).textContent Math.floor(oxygen); document.getElementById(water-value).textContent Math.floor(water); document.getElementById(energy-value).textContent Math.floor(energy); document.getElementById(food-value).textContent Math.floor(food); document.getElementById(oxygen-bar).value oxygen; document.getElementById(water-bar).value water; document.getElementById(energy-bar).value energy; document.getElementById(food-bar).value food; document.getElementById(temperature).textContent stormActive ? -80 : -60; document.getElementById(storm-status).textContent stormActive ? 沙尘暴进行中 : 无; } function checkGameStatus() { if (gameOver) { return; } if (oxygen 0 || water 0 || energy 0 || food 0) { gameOver true; document.getElementById(game-message).textContent 游戏结束资源耗尽殖民队未能幸存。; clearInterval(dayInterval); clearInterval(stormInterval); } else if (day 30) { gameOver true; document.getElementById(game-message).textContent 胜利你成功在火星度过了 30 天; clearInterval(dayInterval); clearInterval(stormInterval); } } function consumeResources() { if (gameOver) { return; } oxygen - 2; water - 2; food - 2; energy - 3; if (farmCount 0) { food 3 * farmCount; } let energyGeneration 4 * solarCount; if (stormActive) { energyGeneration Math.floor(energyGeneration * 0.5); } energy energyGeneration; day 1; updateUI(); checkGameStatus(); } function triggerStorm() { if (gameOver) { return; } if (Math.random() 0.3) { stormActive true; stormTimeLeft 2; // 相当于 2 天即 10 秒 document.getElementById(game-message).textContent 沙尘暴来袭太阳能效率大幅下降。; updateUI(); } } function updateStorm() { if (!stormActive) { return; } stormTimeLeft - 1; if (stormTimeLeft 0) { stormActive false; document.getElementById(game-message).textContent ; } updateUI(); } document.getElementById(build-farm).addEventListener(click, function() { if (gameOver) { return; } farmCount 1; document.getElementById(game-message).textContent 水培舱建造完成。; }); document.getElementById(build-solar).addEventListener(click, function() { if (gameOver) { return; } solarCount 1; document.getElementById(game-message).textContent 太阳能板建造完成。; }); document.getElementById(explore).addEventListener(click, function() { if (gameOver) { return; } population 1; document.getElementById(game-message).textContent 勘探队发现新的幸存者; updateUI(); }); dayInterval setInterval(function() { consumeResources(); triggerStorm(); updateStorm(); }, DAY_DURATION); updateUI();这段代码是核心游戏循环。拆开看主要包含三件事资源消耗与生产每隔 5 秒基础资源消耗固定数值然后根据建筑数量增加产出。随机事件触发沙尘暴后太阳能产出减半温度降低到 -80°C。UI 同步每次资源变化后调用updateUI()更新页面显示。5.5 如何运行验证这套代码不需要安装任何依赖。直接在浏览器中打开index.html即可运行。cd mars-game # 在 macOS 上打开 open index.html # 在 Windows 上打开 start index.html # 在 Linux 上打开 xdg-open index.html如果使用 VS Code也可以安装 Live Server 插件然后右键index.html选择 “Open with Live Server”。这样每次修改代码后浏览器会自动刷新调试体验更好。6. 运行结果与效果验证在你把代码跑起来之后需要验证的不是“页面有没有显示”而是“游戏逻辑是否正确闭环”。下面提供一套验证清单。6.1 预期输出正常运行时你应该看到资源条初始均为 100人口为 10天数为 0。每 5 秒天数增加 1氧、水、食物减少 2能源减少 3。点击“建造水培舱”后食物消耗后会被补偿长期来看食物下降速度变慢。点击“建造太阳能板”后能源下降速度变慢甚至回升。点击“派出勘探队”后人口增加但不会额外消耗更多资源。偶尔出现沙尘暴提示能源下降速度明显加快。第 30 天到达时页面显示胜利消息。资源耗尽时页面显示失败消息。6.2 快速验证逻辑的调试技巧如果你发现资源下降速度不对或者游戏提前结束可以打开浏览器的开发者工具F12在 Console 面板中手动修改数值来测试// 在 Console 中手动设置数值观察游戏循环是否正常 oxygen 200; water 200; energy 200; food 200; updateUI();你也可以手动把天数改到 29然后等待下一个循环验证胜利逻辑day 29; updateUI();这种调试方式对理解 Grok Build 生成的代码同样有效。它生成的代码通常也是普通 JavaScript一样可以通过控制台动态修改状态。6.3 判定成功的标准当下面几个条件同时满足时基本可以认为你的火星模拟游戏已经完成页面没有报错Console 面板无红色错误。所有按钮点击后都有响应要么改变资源数值要么输出日志信息。资源系统能维持动态平衡不会在 10 天内必然死亡。沙尘暴事件出现时界面提示可见且能源计算同步变化。胜利和失败条件都能正常触发。7. 常见问题与排查思路用 Grok Build 生成和应用这种交互游戏时新手常遇到的问题主要集中在几个方向。这里列出最常见的情况和处理方式。7.1 Grok Build 生成的代码打不开如果你下载或复制出来的代码文件双击打开后是一片空白先检查文件后缀。Grok Build 可能生成的是几个分离文件也可能生成的是单个 HTML 文件。如果它生成的是index.html和script.js分离的形式你必须保持文件在同一目录下且script.js的引用路径正确。问题现象可能原因排查方式解决方案打开 HTML 后页面空白JavaScript 文件引用路径错误按 F12 查看 Console 报错确认script srcscript.js路径和文件名一致按钮没有反应事件监听代码未绑定成功检查 Console 是否报 null 错误确认script.js在/body之前引入浏览器阻止脚本运行安全策略拦截本地文件查看浏览器地址栏右侧警告换用本地开发服务器如 Live Server7.2 游戏资源消耗不正常资源消耗不正常通常是逻辑写错了而非工具生成 bug。常见情况有两种资源下降太快说明“消耗”和“产出”的数值比例失衡。资源保持满值不变说明定时器没有正确调用消耗函数或者你绑定的函数名写错了。排查优先级先看 Console 有没有报错再看定时器是否在运行最后看消耗函数里的数值操作。7.3 想让 Grok Build 增加新功能但不知道怎么说这是使用自然语言交互工具的核心痛点。当你想要增加一个“外星人入侵”事件时不要只说“加个外星人”而要说清楚触发条件、效果和 UI 反馈。推荐的提示词格式是在现有的火星模拟游戏基础上增加外星人入侵事件 - 触发条件当能源值低于 20 时有 10% 概率触发。 - 效果立即减少 5 点氧气和 5 点食物。 - UI 反馈在状态区域显示“外星人入侵资源受损”这种描述方式可以明显提高生成成功率。7.4 生成的代码后续要扩展结果一团乱当项目变得复杂Grok Build 生成的单个 HTML 文件会变得很长此时直接继续对话修改很容易出现“改一个地方另一个地方失效”的问题。推荐做法是把生成后的代码按文件拆分或者要求 Grok Build 按模块划分函数。在第一次生成时就明确要求“请把代码拆分为逻辑清晰的函数并添加注释”。这能给后期维护留出空间。8. 最佳实践与工程建议通过上面的实战你应该已经能体会到 Grok Build 的上手难度并不高。但要用好它尤其是想把它纳入真实工作流下面这些工程建议值得收藏。8.1 提示词才是关键资产同一个工具不同人用效果完全不同差距就在提示词。写提示词时不要把它当作“和 AI 聊天”而是当作“在写一份开发需求文档”。每次描述需求尽量包含项目目标。界面布局。核心机制。数值变化规则。成功/失败条件。掌握这个习惯后你不仅能更好地使用 Grok Build也能迁移到其他 AI 编程工具上。8.2 生成后先做小步验证不要一次性大改建议每次只验证一个核心功能点。第一轮跑通“资源消耗 界面显示”第二轮增加“建造按钮”第三轮增加“随机事件”。这样即使某一步出问题也能快速定位。8.3 版本管理很重要Grok Build 生成的代码也要纳入版本管理。你可以把生成的项目目录初始化为 Git 仓库每次让工具做较大改动前先提交一次快照。这样即使生成结果不理想也可以随时回滚。cd mars-game git init git add . git commit -m v1: 基础资源循环8.4 逻辑与界面解耦如果你打算长期维护这个项目建议尽早要求生成代码时把“核心游戏逻辑”和“页面 DOM 操作”分开。即使 Grok Build 一次生成的是单文件你也可以手动把script.js拆分成game.js和ui.js。逻辑层不直接操作 DOMUI 层只负责渲染状态这样后续维护会轻松很多。8.5 安全与生产环境边界如果只是原型演示、个人学习或内部展示Grok Build 生成的应用足够用。但如果要部署到公网建议注意几件事不要在生成的应用中硬编码任何敏感信息。如果游戏需要保存用户数据不要使用前端存储保存关键数据应增加后端服务。注意输入校验尤其是玩家可以输入内容的场景。这在游戏原型阶段可能用不上但一旦你想把原型变成真正的产品这些边界就必须补上。8.6 善用迭代而不是一次生成最后一条建议是心态层面的不要期待一次生成就是完美成品。更合理的预期是用第一轮生成确定整体框架第二轮生成修正功能点第三轮开始做细节优化。把 Grok Build 当作一个“可以无限快速出草稿”的搭档而不是“直接交付成品”的引擎。9. 总结与后续学习方向到这里你已经从零跑通了一个火星模拟游戏的完整构建流程。这里面其实藏着一个更深层的经验真正决定项目成败的不是 Grok Build 自动生成了多少代码而是你能否把一个模糊的“火星游戏”想法拆解成资源、建筑、事件、失败条件这些可描述的规则。如果你只是把 AI 工具当作“自动代码生成器”用它生成一堆代码后不知道如何修改那它的价值会大打折扣。但如果把它当作“交互式原型加速器”一边生成、一边修改、一边验证它就能在项目早期帮你节省大量时间。关于 Grok Build 的更多用法接下来可以从这几个方向继续深入多页面应用生成尝试让它搭建一个包含登录页、仪表盘、游戏页的多页面项目。与后端结合让生成的前端项目通过 Fetch 或 Axios 调用你自己的后端 API把静态模拟变成真实数据驱动。Canvas 与动画尝试用提示词要求它使用 Canvas 绘制火星场景让游戏从数据面板升级为视觉化场景。WebSocket 实时同步让多个浏览器同时打开同一个游戏体验多人连接的实时互动场景。实践时记住一个原则每增加一个功能就回归一次基础验证然后提交一次版本。你会发现用自然语言构建应用这件事真正难的不是让工具理解你而是你自己有没有把需求想清楚。
返回列表