Trae Plus 让没有编程基础的女朋友也用上了 AI Coding

转载请注明出处❤️

作者:测试蔡坨坨

原文链接:caituotuo.top/c61096b5.ht...


1 故事背景

你好,我是测试蔡坨坨。

最近看网上 Trae Solo 挺火,相比于普通的AI编程工具,它更像是一个完整的 AI 研发平台,集成了终端、编辑器、浏览器和文档等工具,能够从需求分析、原型设计、前后端开发、调试优化到最终部署,提供一条龙的解决方案。

更重要的是,Trae Solo 具备强大的上下文工程能力,能够理解和整合复杂的项目上下文、业务逻辑、技术栈信息,并在整个开发流程中保持上下文的连贯性。简单来说,一个人用 Trae Solo 就相当于拥有了一个完整的研发团队。不过现在刚开放,算力有限,想用的话得开国际版 Trae Plus 还得有邀请码,要么就去官网申请 Whitelist,然后等通知。

官网:www.trae.ai/solo

正好朋友有邀请码,我就马不停蹄地开了个 Trae 国际版 Plus,第一个月 3 <math xmlns="http://www.w3.org/1998/Math/MathML"> ,后面每月 10 ,后面每月 10 </math>,后面每月10。结果开完之后准备用,发现邀请码失效了(王德发!!!),原来是有人把 5 个邀请码全用光了......

算了,没邀请码就继续等呗......

结果今天看到女友大周六还在埋头苦干录数据,我就好奇过去看了看。原来她们幼儿园有个工作,每天采购的食材都有纸质配送单,得一条一条录到食品安全管理系统里,搞什么一品一码,方便追溯食材来源。

手搓大概分为以下几个步骤:

  1. 登录食品安全管理系统
  2. 进入食品溯源管理页面
  3. 点击新增验收记录
  4. 然后拿着纸质配送单,一个一个食材往系统里录。每录一个还得先搜索食材名字,再填数量,最后保存

我一看这操作,心想这不就是纯体力活嘛,完全可以自动化啊!无非就是:

  1. 拍个照识别配送单上的信息,弄成数据格式
  2. 自动获取系统的单号
  3. 根据食材名字自动查询系统里的食品信息
  4. 自动提交保存

正好 Trae Plus 的钱都花了,不能浪费啊,我就跟女友说:"来,咱们用 AI 写个自动化脚本,以后这活儿就不用你手工干了!"

2 Trae 实现过程:零基础也能写代码

2.1 前期准备:抓包和分析接口

女友一听要写代码,有点抗拒:"我不会编程,肯定搞不定。"

我说:"没事,AI 会写代码,但是我们得先搞清楚那个系统是怎么工作的。你先按平时的流程操作一遍,我教你抓包看看后台都调了什么接口。"

于是我让她打开 Chrome 浏览器,按 F12 打开开发者工具,切到 Network 标签页。然后让她按平时的流程操作一遍:

第一步:获取单号

点击"新增验收记录"的时候,我们在 Network 里看到了一个请求:

ini 复制代码
POST https://127.0.0.1:9999/getbillno.action?kind=6

响应就是一个简单的单号,比如:YS202507310001

我跟她说:"看到没,这就是系统自动生成单号的接口,咱们脚本也得调这个。"

第二步:查询食品信息

然后让她在搜索框里输入"鸡蛋",我们又看到了一个查询接口:

ini 复制代码
POST https://127.0.0.1:9999/canyin/entlistyuancaidetail.action
参数:areaCode=&param=yuanliao&value=鸡蛋&page=1&rows=10

响应是个 JSON,里面有食品的详细信息:

json 复制代码
{
    "total": 1,
    "rows": [
        {
            "bianhao": "356CYA075858G",
            "yuanliao": "鸡蛋",
            "mingcheng": "某某食品有限公司",
            "productor": "XXXX餐饮管理服务有限公司",
            // ... 其他字段
        }
    ]
}

第三步:保存数据

最后让她填完数量点保存,又抓到了提交接口:

arduino 复制代码
POST https://127.0.0.1:9999/canyin/addyuancai.action

这个接口参数特别多,包含了所有的食品信息和数量。

我跟女友说:"你看,整个流程就是调这三个接口,现在我们把这些信息告诉 AI,让它帮我们写代码自动调用这些接口。"

女友这才明白过来:"原来网页背后是这么回事!"

2.2 图片识别:从纸质单据到结构化数据

接下来就是最关键的一步------让 AI 识别配送单。我跟女友说:"你直接把配送单拍个照发给 Trae,然后告诉它你要干什么就行了。"

女友有点不敢相信:"就这么简单?"

我说:"对,就跟聊天一样,你就说:'帮我识别这张配送单,把所有商品信息提取出来,保存成 JSON 格式'。"

女友看到结果后惊呆了:"天哪,这比我肉眼识别可快太多了!"

2.3 接口自动化:让机器替代重复劳动

接下来就是最有技术含量的部分了------让 AI 写代码自动调接口。我跟女友说:"现在把刚才抓包的那些接口信息告诉 Trae,让它写个 Python 脚本自动处理。"

女友问:"我要怎么跟它说啊?"

我说:"就把刚才看到的那些接口地址、参数、响应格式都贴给它,然后说你要实现什么功能就行了。"

于是女友就跟 Trae 说:"我需要一个 Python 脚本,能够:

  1. 读取刚才识别出来的 JSON 数据
  2. 调用 getbillno.action 获取单号
  3. 对每个食材调用 entlistyuancaidetail.action 查询信息
  4. 最后调用 addyuancai.action 保存数据"

然后把抓包的接口信息都贴了过去。

然后 Trae 就开始写代码了!

核心功能包括:

1. 获取单号

python 复制代码
def get_bill_no(delivery_date):
    """获取单号,优先从缓存读取,否则请求新单号并存入缓存"""
    # Trae 还贴心地加了缓存机制,避免重复请求

2. 查询食品信息

python 复制代码
def query_food_info(food_name, bianhao=''):
    """查询食品信息"""
    # 根据食材名称查询系统中的标准食品信息

3. 新增溯源记录

python 复制代码
def add_food_entry(bill_no, delivery_date, food_item, food_info):
    """新增溯源信息"""
    # 将食材信息提交到食品安全管理系统

2.4 智能优化:处理实际运行的复杂性问题

在实际调试脚本的过程中,我们遇到了不少意料之外的问题。每次发现问题,我们就告诉 Trae,它都能很快帮我们想出解决方案并实现。

商品名称清洗问题:第一次跑脚本的时候发现,配送单上的商品名字经常写得比较冗余,与系统中存储的信息匹配不上,比如"鲜鸡蛋(75个)"、"安井豆沙包360克*12包"这种,系统里搜索的时候根本找不到。

我们把这个问题告诉 Trae:"配送单上的商品名称不规范,需要清洗一下再查询。比如:鲜鸡蛋(75个)->鸡蛋、豆沙包360克->豆沙包、豆沙包*12包->豆沙包 ..."

Trae 马上就明白了,给我们加了个清洗函数:

python 复制代码
def clean_food_name(name):
    """
    根据规则清洗商品名称:
    1. 去掉括号及括号内的内容
    2. 去掉星号(*)及其后面的内容
    3. 移除末尾的重量单位
    """
    name = re.sub(r'[((].*?[))]', '', name)
    name = name.split('*')[0]
    name = re.sub(r'\d+.?\d*\s*(kg|g|千克|克|斤|L)$', '', name, flags=re.IGNORECASE)
    return name.strip()

特殊商品映射问题:测试的时候又发现了一个更棘手的问题,有些食材比如"大米"、"面粉"这种常见的,用名称搜索会匹配到好几条记录,系统不知道该选哪个。

我们又跟 Trae 说:"有些食材名称会匹配到多条信息,需要建个映射表直接用 code 编号,确保结果只有一条。"

Trae 立马就明白了这个逻辑,给我们建了个特殊映射表:

bash 复制代码
special_food_map = {
    '鸡蛋': '356CYA075858G',
    '玉米粒': '356CY9083954T',
    '黄豆': '356CY90840032',
    # ... 更多映射
}

错误处理机制:在多次测试中,我们发现总有一些食材因为各种原因处理失败,比如网络超时、接口返回异常,还有一些食材在系统里根本查询不到信息。

我们就告诉 Trae:"需要把处理失败的条目记录下来,方便后续手工处理。"

在我们的引导下,Trae 很快就加了完整的错误处理逻辑,把失败的条目自动保存到 failed_entries.json 文件里,方便后面补录。

2.5 使用体验

我让女友尝试时,她还有点紧张,担心自己不懂编程会搞砸。

我说:"放心,就三步操作,比你平时用手机还简单。"

实际使用起来确实超级简单:

  1. 拍个照,让 Trae 识别配送单,生成 JSON 文件
  2. 双击运行脚本:python food_traceability.py
  3. 喝杯茶等着就行了

几分钟后脚本跑完了,她去系统里一看,所有数据都录进去了!

原本需要两三个小时的工作,现在不到五分钟就完成了。

3 思考与反思:AI 编程的现状与未来

3.1 模型选择的考量

在折腾的过程中,我们试了 Gemini-2.5 Pro 和 Claude 4-Sonnet 两个模型。总的来说:

  • Claude 4-Sonnet:写出来的代码质量更高,逻辑更严谨,更适合处理复杂业务
  • Gemini-2.5 Pro:识别图片的能力更强,而且对中文理解更好

3.2 AI 识图的局限性

图片清晰的话,识别率基本能达到 99%,但是遇到模糊的字就容易出问题。比如我们测试的时候,AI 会脑补一个看起来合理的答案,把"蚬子(溪蛤)"看成了"鲫鱼(溪鲶)"。

3.3 非技术人员使用 AI 编程的可能性

门槛降低:之前连 Python 是什么都不知道,现在居然能搞定自动化任务。

效率提升:原来要干几个小时的活儿,现在几分钟就搞定,这谁不爱啊!

思维方式:比如现在看到什么重复性工作都会问:"这个能不能也让 AI 帮忙自动化一下?"

3.4 AI 编程的边界与思考

复杂业务逻辑:如果涉及多个系统交互、复杂的业务规则,AI 还是需要很多背景信息才能搞定。

安全性问题:AI 生成的代码可能有安全漏洞,特别是处理敏感数据的时候得小心。

后期维护:业务需求变了的时候,怎么让 AI 理解并正确修改现有代码,这还是个难题。

4 结语:拥抱变化,保持理性

这次的经历让我觉得,AI Coding 不只是个工具,更像一个聪明的编程搭档,能听懂你的需求,写出代码,还能处理各种异常情况。如果用传统开发方式,光是需求分析、技术选型、编码实现就得好几天。

对于非技术人员来说,AI Coding 确实大大降低了技术门槛,让更多人能享受到自动化的便利。

对于技术人员来说,也许可以极大地提高开发效率,让我们能把更多精力投入到更有创造性的工作中。(水面上的"显性价值"是编码更快、节省时间和降低成本。在水下包含了更深层的系统性影响:开发者体验层面,提升开发者体验、保持心流状态、提高开发者留存;产品质量层面,提升代码质量和可维护性,减少bug和技术债务;业务影响层面,改善客户体验,更快产品上市。)

当然,我们也要保持理性,AI 编程还不能完全替代程序员。它更像一个超级助手,帮助我们更快、更好地把想法变成现实。


PS: 如果你也想尝试 AI 编程,建议从简单的自动化任务开始,慢慢探索它的能力边界。

关于作者:测试蔡坨坨,一个爱折腾新技术的测试工程师,目前在探索 AI 在软件测试领域的应用。如果你对 AI 编程或软件测试有任何问题,欢迎一起交流讨论。

相关推荐
一只鹿鹿鹿1 分钟前
【制造】erp和mes系统建设方案(word)
大数据·人工智能·web安全·信息化·软件系统
数琨创享TQMS质量数智化6 分钟前
数琨创享:德国高端制造企业QMS质量管理平台案例
大数据·人工智能·制造
虚谷231 小时前
从AI智能体出发,重构数据中台:迈向Agentic时代的数据能力体系
大数据·人工智能·企业数智化
D-海漠1 小时前
安全光幕Muting功能程序逻辑设计
服务器·网络·人工智能
顾默@2 小时前
个人电脑部署私有化大语言模型LLM
人工智能·语言模型·自然语言处理
AI视觉网奇2 小时前
语音识别数据集
人工智能·语音识别
卓码软件测评2 小时前
软件项目中标需要哪些东西?软件工程投标需要准备什么材料?
人工智能·功能测试·软件构建·开源软件·软件需求
martian6652 小时前
深度学习核心:卷积神经网络 - 原理、实现及在医学影像领域的应用
人工智能·深度学习·机器学习·cnn·卷积神经网络·dicom医学影像
万俟淋曦2 小时前
人工智能图像生成的道德利弊
人工智能·aigc·图像识别
W.KN2 小时前
机器学习【一】线性模型
人工智能·机器学习