掘金 人工智能 10月08日 12:48
CodeBuddy与腾讯混元AI助力“AI识菜通”应用开发
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文介绍了如何利用腾讯新发布的CodeBuddy CLI工具,结合腾讯混元大模型,开发一款名为“AI识菜通”的智能点菜应用。该应用能够识别多语言菜单图片,将其翻译成中文,并生成包含AI生成菜品图片的点餐界面。文章详细阐述了CodeBuddy的安装、登录、开发文档生成及代码开发流程,并展示了腾讯混元API的接入指南和“AI识菜通”项目的技术栈、功能模块、开发规划及最终的成果展示,包括部署在Vercel上的应用效果。

💡 **CodeBuddy CLI的引入与愿景**: 腾讯新发布的CodeBuddy CLI旨在通过“氛围式编码”自动化99%的编程工作,用户仅需1%的精力撰写提示词。它与插件、IDE共同构成了腾讯开发者生态的三足鼎立格局,提供了命令行操作方式,方便开发者快速集成AI能力。

🤖 **腾讯混元大模型赋能AI识菜通**: “AI识菜通”项目深度集成了腾讯混元大模型,利用其图片理解能力识别多语言菜单,文本大模型进行翻译和菜品介绍生成,以及图片生成模型为菜品创建视觉呈现。用户需通过腾讯云控制台开通混元大模型并获取API密钥,以实现这些AI驱动的功能。

🚀 **敏捷开发流程与成果展示**: 文章详细展示了使用CodeBuddy进行“AI识菜通”开发的流程,包括生成开发文档(CodeBuddy.md)并进行编辑,然后让CodeBuddy对照文档进行全速开发。最终成果展示了应用的首页、API密钥安全存储、多语言菜单识别、中文菜单生成、菜品添加到购物车以及最终订单汇总的生成,并成功部署在Vercel上,提供了可访问的演示链接。

🌐 **技术选型与部署**: “AI识菜通”应用采用React作为前端框架,并集成了shadcn/ui和Radix UI组件库。项目支持API密钥的本地存储以保障用户安全。最终,应用被部署在Vercel平台上,利用其便捷的部署流程、持续集成能力和全球CDN分发,确保了应用的快速加载和稳定交付,为用户提供了流畅的AI点餐体验。

CodeBuddy Code + 腾讯混元打造"AI识菜通"

CodeBuddy Code使用指南

背景信息

9月9日,腾讯正式重磅推出了 CodeBuddy CLI 🚀!之所以选在9月9号发布,是因为腾讯怀揣着一个美好愿景:未来99%的编程工作都能通过“vibe coding”(氛围式编码)自动完成,人类只需花1%的精力撰写提示词即可 💡。和 Cloudbase AI CLI 类似,CodeBuddy CLI 也采用终端命令行的操作方式。它的上线,标志着腾讯在开发者生态中已形成插件、IDE 与 CLI 三足鼎立的格局 ⚖️。今天在发布会上收获颇丰,结合自己的理解稍作梳理,与大家分享~ 🎯

下载安装

跟大多数的命令行AI工具一样,CodeBuddy Code的下载方式也是如出一辙
npm install -g @tencent-ai/codebuddy-code

命令行输入就可以自动下载

下载完毕之后直接输入CodeBuddy即可唤醒

登录

这里提供了三种不同的登录方式

选择好登录的方式回车之后会直接进入登录网页,这里我们选择用GitHub登录

跳转到网页之后,要是之前登录过就会自动登录

这时候再来看CodeBuddy Code就会发现已经进入到当前的目录下准备运行了~

测试

安装登录完毕之后,我们这里来做一个简单的测试看看CodeBuddy是否可用。

完美运行,并且右侧有显示当前小号的tokens总数,用GitHub登录的话是有免费额度送的。

腾讯混元API接入指南

开通腾讯混元大模型

访问腾讯云控制台中的腾讯混元大模型[https://console.cloud.tencent.com/hunyuan/start](https://console.cloud.tencent.com/hunyuan/start),点击立即开通,开通之后就如下图所示:

获取腾讯云密钥

进入到腾讯云控制台中的API密钥管理界面[https://console.cloud.tencent.com/cam/capi](https://console.cloud.tencent.com/cam/capi),如下图所示开通腾讯原API密钥

腾讯混元API文档

我这里开发主要是采用的腾讯混元API方式接入的,参考的是官方文的API文档,有兴趣的小伙伴也可以去尝试一下[https://cloud.tencent.com/document/product/1729/101848](https://cloud.tencent.com/document/product/1729/101848):

这里是一个调用示例

POST / HTTP/1.1Host: hunyuan.tencentcloudapi.comContent-Type: application/jsonX-TC-Action: ImageQuestion<公共请求参数>{    "Model": "hunyuan-vision-image-question",    "Messages": [        {            "Role": "user",            "Contents": [                {                    "Type": "text",                    "Text": "解答图片中的问题"                },                {                    "Type": "image_url",                    "ImageUrl": {                        "Url": "https://qidian-qbot-1251316161.cos.ap-guangzhou.tencentcos.cn/public/0/0/image/hy/2c4dda9e032a477a6572866de2419ecd9e59076a-6145-46a0-9f47-1048f65cf4f8.png"                    }                }            ]        }    ],    "Stream": false}

AI识菜通开发指南

上方的准备工作准备好之后,接下来就是开发时间:

开发提示词

准备好下方的开发提示词
我要做一个"AI识菜通"APP。它的输入是一张菜单图片,它可能是任何语言的。我需要调用腾讯混元模型,使用腾讯混元图片模型的 API去理解图片,然后在网页上用户来上传这张图片,上传之后调用 腾讯混元文本大模型理解图片之后进入第二个页面就是点菜的页面,点菜的页面会包含,会把整个单变成中文的,用户可以点菜。每一道菜都包含它的名字、它的介绍和一张图片,图片也调用 腾讯混元 的生成图片的模型来生成,腾讯混元API放在UI中让用户输入并且存在local storage里,然后用户点加号可以把这道菜加入他的购物车,最后点提交生成一个一串字符,上面写他想要点哪些菜,方便他跟服务员说他要点哪些。这个字符应该包合中文名和他元语言的名字。项目需要使用|react 实现 U,使用 shadcn、redix 组件库。

CodeBuddy.md开发文档

输入到CodeBuddy中,并且先别让他直接开始开发,先让他生成CodeBuddy.md。

这里是CodeBuddy的分析过程,询问我们是否保存,这里选择yes

这里已经保存到了本地的CodeBuddy.md中

这是刚刚CodeBuddy生成的文档,这里我们发现有不对的地方可以随意编辑,如果确认无误的话就可以让CodeBuddy对着文档开始开发项目了。

# AI识菜通 APP 项目文档## 项目概述"AI识菜通"是一个基于AI的智能点菜应用,用户可以上传任何语言的菜单图片,系统会自动识别并翻译成中文,生成带有图片和介绍的点菜界面,最终生成订单字符串方便用户与服务员沟通。## 技术栈- **前端框架**: React- **UI组件库**: shadcn/ui + Radix UI- **AI服务**: 腾讯混元大模型  - 图片理解模型 (识别菜单)  - 文本大模型 (翻译和生成介绍)  - 图片生成模型 (生成菜品图片)- **状态管理**: React Context + useState- **本地存储**: localStorage (存储API密钥和购物车)## 功能模块### 1. 首页 - 图片上传页面- **功能**:  - API密钥输入框 (存储到localStorage)  - 菜单图片上传组件  - 上传按钮触发图片识别- **API调用**: 腾讯混元图片理解模型- **页面跳转**: 识别成功后跳转到点菜页面### 2. 点菜页面- **功能**:  - 显示识别出的菜品列表  - 每个菜品包含:    - 中文名称    - 原语言名称    - AI生成的菜品图片    - 菜品介绍    - 添加到购物车按钮 (+)  - 购物车侧边栏/底部栏  - 提交订单按钮- **API调用**:   - 腾讯混元文本模型 (翻译和生成介绍)  - 腾讯混元图片生成模型 (生成菜品图片)### 3. 订单确认- **功能**:  - 生成包含中文名和原语言名的订单字符串  - 方便用户与服务员沟通## 数据结构### 菜品对象 (Dish)```typescriptinterface Dish {  id: string;  originalName: string;    // 原语言名称  chineseName: string;     // 中文名称  description: string;     // 菜品介绍  imageUrl: string;        // AI生成的图片URL  price?: string;          // 价格 (如果能识别出来)  quantity: number;        // 购物车中的数量}

购物车项目 (CartItem)

interface CartItem {  dish: Dish;  quantity: number;}

API集成

腾讯混元API配置

页面路由结构

/                    # 首页 - 图片上传/menu               # 点菜页面/order-summary      # 订单确认页面 (可选)

组件结构

src/├── components/│   ├── ui/              # shadcn/ui组件│   ├── ImageUpload.tsx  # 图片上传组件│   ├── DishCard.tsx     # 菜品卡片组件│   ├── Cart.tsx         # 购物车组件│   ├── ApiKeyInput.tsx  # API密钥输入组件│   └── OrderSummary.tsx # 订单摘要组件├── pages/│   ├── HomePage.tsx     # 首页│   ├── MenuPage.tsx     # 点菜页面│   └── OrderPage.tsx    # 订单页面├── hooks/│   ├── useApi.ts        # 腾讯混元API调用hooks│   ├── useCart.ts       # 购物车管理hooks│   └── useLocalStorage.ts # localStorage管理hooks├── services/│   └── tencentApi.ts    # 腾讯混元API服务├── types/│   └── index.ts         # TypeScript类型定义└── utils/    └── helpers.ts       # 工具函数

开发阶段规划

阶段1: 项目初始化

阶段2: 基础组件开发

阶段3: API集成

阶段4: 页面开发

阶段5: 功能完善

阶段6: 测试和优化

注意事项

    API密钥安全: 密钥存储在localStorage中,提醒用户不要在公共设备上使用图片处理: 需要处理不同格式和大小的图片多语言支持: 确保能正确识别和处理各种语言的菜单错误处理: 完善的API调用失败处理机制加载状态: 为AI处理过程添加适当的加载指示器响应式设计: 确保在移动设备上的良好体验

预期挑战

    菜单图片质量和格式的多样性不同语言菜名的准确翻译AI生成图片的质量和相关性API调用的稳定性和错误处理用户体验的流畅性

此文档将在开发过程中持续更新和完善

<h3 id="oCFCR">全速开发</h3>可以看到CodeBuddy已经开始分析并且对照文档进行开发了,并且CodeBuddy的每一步操作都会询问,这里如果不想一直被询问的话可以选择第二个选项,这里我就直接让CodeBuddy全速开发了,接下来就是等待即可,由于篇幅原因我就直接跳到最后一步看成果了。![](https://cdn.nlark.com/yuque/0/2025/png/27326384/1759261371345-a8eb9dce-3014-4a2b-8077-d79a7e42818e.png)<h2 id="OZbFv">成果展示</h2><h3 id="VGqsF">部署阶段</h3>在项目“AI识菜通”的最终部署阶段,我选择了 Vercel 作为前端应用的托管平台。Vercel 以其卓越的开发者体验和对现代前端框架的深度支持,极大简化了部署流程。本项目基于 React 构建,并使用了 shadcn/ui 和 Radix UI 组件库,Vercel 能自动识别项目结构,实现一键部署和持续集成。每次代码推送至 GitHub 仓库,Vercel 都会自动构建并生成预览链接,方便快速测试与迭代。更重要的是,Vercel 提供全球边缘网络分发,确保用户无论身处何地,都能快速加载应用页面。整个“AI识菜通”从前端交互、图片上传,到调用腾讯混元大模型进行多语言菜单识别与菜品图像生成,最终生成点餐字符串,全部通过 Vercel 高效、稳定地交付给用户。借助 Vercel 的免费计划和无缝 DevOps 能力,我得以将精力聚焦在核心 AI 功能开发上,而无需担心服务器运维,真正实现了“开发即部署”的现代 Web 开发体验。[https://ai-menu-a92k3hb78-pickstar-2002s-projects.vercel.app/](https://ai-menu-a92k3hb78-pickstar-2002s-projects.vercel.app/)<h3 id="Z2StW">首页</h3>![](https://cdn.nlark.com/yuque/0/2025/png/27326384/1759832975457-c335c652-d232-4df4-9b2b-75125600fcbe.png)<h3 id="V2NF9">设置API密钥</h3>本项目的API密钥存放在本地的storage中,并不会上传到云端,确保用户的密钥安全。![](https://cdn.nlark.com/yuque/0/2025/png/27326384/1759833023448-98079643-54f6-4191-9b29-29f4d1a61f35.png)<h3 id="O6aUa">识别菜单</h3>这里准备了国外的菜单进行测试:![](https://cdn.nlark.com/yuque/0/2025/jpeg/27326384/1759833227123-a3486a5c-1394-4fd1-aa11-b23e411d32a6.jpeg)上传图片之后AI开始分析![](https://cdn.nlark.com/yuque/0/2025/png/27326384/1759833174101-a5cff136-4b2e-4593-b69f-7929b9f109f9.png)识别完毕之后点击去点菜即可看到生成的中文菜单![](https://cdn.nlark.com/yuque/0/2025/png/27326384/1759833195968-1280b673-95a0-4db2-b3fe-9897bd21cab1.png)以下是生成后的结果,这样就可以顺利点菜了:![](https://cdn.nlark.com/yuque/0/2025/png/27326384/1759833266160-f76fb6e8-88cf-4593-b0c1-6f68b8f2eb33.png)<h3 id="OG3b1">点餐进入购物车</h3>![](https://cdn.nlark.com/yuque/0/2025/png/27326384/1759833307416-7854896e-2e9f-4fa1-992b-832e9a5397da.png)点击生成订单汇总,会生成一份刚刚的点菜TXT格式的清单:![](https://cdn.nlark.com/yuque/0/2025/png/27326384/1759833377307-9faa346d-ca7e-476a-aaa2-7d4d4481df47.png)

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

CodeBuddy 腾讯混元 AI识菜通 AI应用开发 前端开发 React shadcn/ui Radix UI Vercel Tencent Hunyuan AI Menu Master AI Application Development Frontend Development
相关文章