news 2026/10/14 9:45:18

零基础跑通ModelArts:从数据准备到在线部署全攻略

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
零基础跑通ModelArts:从数据准备到在线部署全攻略

1. 零基础学AI,最该跨过的第一道坎是什么

如果你现在打开搜索引擎搜“华为云ModelArts模型训练与部署”,大概率会被一堆专业名词糊一脸:OBS、训练作业、推理、资源池、预置算法、自动学习……还没开始动手,光看这些词就劝退了一半人。

但我可以明确告诉你:ModelArts恰恰是云厂商里最适合零基础入门AI训练与部署的平台,没有之一。它最大的价值不是“功能最强”,而是“把AI的复杂度藏在后台”,让你像点外卖一样完成从数据集到在线服务的完整闭环。你不需要懂反向传播的数学推导,不需要自己装CUDA驱动,甚至不写一行训练代码,也能把ResNet-50跑出个像样的模型,再部署成一个能接收图片返回分类结果的在线API。

这篇内容就是针对零基础场景讲的,覆盖从准备数据、创建训练作业、监控训练日志到部署上线的完整链路,同时穿插华为ICT大赛云赛道和华为云AI认证里经常出现的考点。我是按“如果你完全没摸过ModelArts,顺着这篇文章走一遍就能跑通”的标准来写的,每一步都会说清楚为什么要这么做,不光是给结论。

先说个大概的认知:ModelArts这个名字拆开看就是“Model + Arts”,华为云对它的定位是一站式AI开发平台。它把AI项目生命周期里的数据标注、数据预处理、模型训练、模型评估、模型部署全串在一条流水线上。你只需要关心你的数据和业务目标,中间那些环境搭建、框架安装、资源调度、服务发布,平台替你扛了。

适合往下看的人有三类:一是刚入行想做AI应用但卡在环境配置的同学;二是准备华为认证或华为ICT大赛云赛道的考生,ModelArts几乎是绕不开的实操重点;三是已经在用其他平台(比如本地GPU或别的云厂商)想换到华为云省点运维精力的人。

2. 整体设计思路:ModelArts到底替你省了什么

2.1 传统自建AI环境的痛点

我当年第一次跑深度学习模型,是在一台自己攒的双显卡机器上。装驱动、配CUDA、装PyTorch,光环境就折腾了一周。跑起来之后还有更大的坑:显存不够了想加卡,得关机插拔;训练到一半断电,全部白跑;换一台机器,整套环境再来一遍。

这些痛点在ModelArts上的解决方式很简单:所有底层的算力调度、镜像管理、环境配置都被平台托管了。你创建一个训练作业时,只需要告诉平台“我要用什么算法、什么规格的GPU、喂什么数据”,平台自动拉起一台干净的训练容器,把数据从你的对象存储桶里拉进去,跑完训练再自动释放。训练过程中容器挂了也没关系,平台会重新调度并恢复任务。

2.2 ModelArts的四大核心组件

理解ModelArts可以从四块入手,这也是我建议零基础同学在脑子里建立的第一张地图:

组件干什么用对应传统方案里的角色
OBS对象存储存放数据集、模型文件、日志服务器的硬盘/NFS共享盘
训练作业运行模型训练任务,消耗算力本地GPU服务器的训练进程
模型管理把训练产物注册成可部署的模型训练出来的权重文件+推理脚本打包
部署服务把模型开放成API或批量推理任务自己写的Flask/FastAPI推理服务

这四块是环环相扣的:数据先入OBS,训练作业从OBS读数据写到OBS,模型管理把OBS里的输出模型文件注册成可部署状态,部署服务再从模型管理拉模型对外提供服务。考试里经常让你排这个链路顺序,你只要记住“数据→训练→模型→部署”这个流水线逻辑就不会错。

2.3 为什么“零基础”反而应该选托管平台

我见过不少初学者纠结:是不是该先学Docker、Kubernetes再碰云上AI?我的建议是反着来——先用托管平台把流程跑通,再回头补底层原理。因为零基础阶段最大的敌人是“反馈周期太长”。你在本地一步步配环境,出了问题都不知道是驱动问题、版本问题还是代码问题。而ModelArts的预置算法和自动学习功能,把“环境”这个变量降到最低,你只需要关注数据和结果。等你能流畅地训练一个模型并部署上线,再去理解容器、镜像这些概念,完全是降维打击。

3. 数据准备:把训练数据塞进OBS,这是零基础最容易翻车的一步

3.1 创建OBS桶与目录规划

OBS(Object Storage Service)就是华为云的对象存储,ModelArts的训练数据必须从OBS读取,训练产物也会回传到OBS。你可以把它理解为一个“云端网盘”,但它支持通过HTTPS和命令行高效读写,专门为程序访问设计。

创建桶的时候有几点要注意:

  1. 区域一定要和ModelArts所在区域一致。比如ModelArts用“华北-北京四”,桶也选“华北-北京四”,否则训练作业访问数据会出现跨区域网络延迟甚至权限拒绝。
  2. 桶的权限建议先选“私有”,训练作业通过授权机制访问,不要图省事设成公共读,既不安全也容易产生流量费用。
  3. 目录规划要提前想清楚。我自己的习惯是:
obs://your-bucket/ ├── dataset/ │ ├── train/ │ │ ├── class_a/ │ │ └── class_b/ │ └── eval/ │ ├── class_a/ │ └── class_b/ ├── output/ └── logs/

分类任务的数据集按“类别文件夹”组织是最省事的。ModelArts的预置算法会直接按这个目录结构生成标签,你不用额外写label文件。

3.2 上传数据的三种姿势

图形化上传适合小数据集,控制台里直接拖拽就行,但超过1GB就很考验浏览器稳定性。我推荐两招:

一是obsutil命令行工具。从华为云官网下载配置好AK/SK后,一条命令就能同步整个目录:

obsutil cp /local/dataset obs://your-bucket/dataset -r -f

二是ModelArts的“数据管理”入口。它不单是上传,还内置了数据校验、数据清洗、智能标注功能。你可以把图片传到这里,自动检查损坏文件,还能用智能标注帮你先标一批框,人工只做修正,这对做物体检测任务非常省力。华为云认证考试里经常考“ModelArts数据管理有哪些功能”,答案里一定有这四条:数据校验、数据清洗、数据标注、数据版本管理。

3.3 数据集格式与两种常见任务的差异

如果你做图像分类,数据集的通用格式就是“一个文件夹一个类别”的层级结构,训练集和验证集分开。如果你做物体检测,除了图片外还需要标注文件。ModelArts支持Pascal VOC和COCO两种主流标注格式,在数据管理页面你可以直接导出成这两种格式之一。预置算法对格式要求很明确,你用它的训练界面创建任务时,系统会校验OBS路径是否存在以及目录结构是否合法,校验不通过会直接报错。

注意:OBS路径的写法是obs://桶名/路径,不是本地路径。训练作业日志里最常见的报错就是“No such file or directory”,多半是路径写错或者桶名拼错。

4. 训练作业实操:从创建任务到跑通第一个模型

4.1 进入ModelArts训练管理

在华为云控制台搜索“ModelArts”,进入开发平台后,左侧菜单找到“训练管理”下面的“训练作业”。点击“创建训练作业”,你会看到一个分步表单,这是整条训练链路的核心操作界面。

训练作业的关键配置项有四个:

  • 算法来源:可以选择“预置算法”“自定义算法”“AI市场算法”或“我的算法”。
  • 数据来源:填OBS路径。
  • 训练规格:选择CPU或GPU规格,比如“GPU: 1NVIDIA V100”或“GPU: 1NVIDIA T4”。
  • 输出路径:模型产物输出到的OBS目录。

零基础阶段,我强烈建议第一次任务直接用预置算法里的“图像分类-ResNet-50”。它不需要你写任何网络结构代码,只需要指定数据集路径和训练参数,剩下交给平台。

4.2 免费GPU额度与公共资源池

新用户开通ModelArts后会获得一定的免费算力时长,通常是GPU规格的免费额度,在“资源池”页面能看到剩余量。免费额度用的是公共资源池,意味着你和别人共享物理资源,任务需要排队。训练规格里的GPU型号越多、越高级,排队越久。零基础练手选最低配的T4或P100就足够了,不要一上来就选8卡V100。

公共资源池有几个特性考试会考:按需计费、共享隔离、支持自动停止、高峰期需要排队。它的计费单位是“规格时长”,也就是“用了多少规格的机器多少时间”。你在训练作业配置页能看到预算预估,单位是“GB-时”或“卡-时”,训练结束就停止计费。

4.3 超参数到底怎么填

用预置算法训练时,你会看到一个“超参数”配置区域,常见的有:

参数作用零基础推荐值
learning_rate学习率,影响模型收敛速度0.001
batch_size每次迭代喂给模型的样本数32或64
epochs遍历整个训练集的次数50~100
num_classes分类类别数按你的数据集改

这些参数不需要理解得很深,但有一条原则要记住:学习率太大容易振荡不收敛,太小收敛极慢。batch_size越大,单次迭代越慢但梯度更稳定,显存消耗也更大。规格是T4 16G显存时,batch_size设64通常没问题,设到128可能直接OOM(显存溢出)。

4.4 训练作业的运行状态与日志查看

创建训练作业后,作业会经历几个状态:初始化→运行中→成功/失败。在训练作业列表里能看到每个作业的状态和运行时长。点击作业名称进入详情页,可以看到:

  • 训练日志:实时刷新,和你在本地终端跑训练看到的输出一样。
  • 资源占用图:CPU、内存、GPU利用率曲线。
  • 输出模型:训练完成后输出的模型文件列表。

一个很实用的小技巧:训练日志里的loss信息是判断模型是否正常的首要依据。如果loss持续下降,说明模型在学习;如果loss震荡不降,大概率学习率偏大;如果loss一直是NaN,后面我会专门讲怎么排查。

5. 训练过程监控与调优:让模型从“跑通”到“能打”

5.1 怎么看训练日志有没有问题

第一次跑通模型,你可能看着日志滚屏觉得很爽,但光有“loss在下降”还不够。我建议你盯三个指标:

  1. 训练loss:逐步下降是正常的,如果出现阶梯式平台,可以适当调大学习率。
  2. 验证精度:预置算法通常会在每个epoch结束后跑一次验证集,输出accuracy。如果训练loss降了但验证精度不升,说明过拟合了,需要加数据增强或调大正则系数。
  3. 耗时:记录一个epoch大概耗时,可以估算整个训练还要多久。

实操中,我习惯把日志轮询开在另一个浏览器Tab,让它自己滚动,我隔几分钟扫一眼。ModelArts的日志界面支持搜索关键词,直接搜“error”或“accuracy”能快速定位关键信息,不用一屏一屏翻。

5.2 Loss为NaN的排查思路

“模型训练报NaN”是网上热搜词里的高频问题,ModelArts训练作业也不例外。loss变NaN的原因我遇到过的主要有四类:

  • 学习率太大:梯度爆炸导致数值溢出,把learning_rate调小一个数量级试试。
  • 数据里有NaN值:图片数据集偶尔有损坏文件,预处理时没过滤掉,数据管理里的“数据校验”功能就是干这个的,跑一遍能筛掉大部分坏数据。
  • 标签问题:类别数写的比实际多,比如有10类图片但num_classes填了100,某些类别没有样本,loss就可能飘。
  • 数值精度问题:使用FP16混合精度时某些算子不稳定,可以把训练配置里的“混合精度”关掉再试。

注意:排查NaN时先看日志里第一次出现NaN的位置。如果第一个epoch就NaN,基本是数据或超参问题;如果训练到一半才出现,可能是学习率策略问题,考虑用带warmup的调整方式。

5.3 模型评估与版本管理

训练完成后,ModelArts会自动在“模型管理”里生成一个模型版本。你可以在模型列表里看到不同版本的精度、大小、创建时间。

这里有一个考试高频考点:模型管理里的模型可以来自三个渠道——训练作业产生的模型、从AI市场订阅的模型、以及手动导入的模型。手动导入需要你有模型文件和推理脚本,遵循ModelArts的模型包规范,目录里要包含model文件夹和config.json配置文件。零基础阶段你基本用不到手动导入,但考点上要知道这条途径的存在。

5.4 训练调优的“性价比”顺序

对于零基础或者赶比赛赶考试的同学,我建议按这个顺序调优,不要一上来就动网络结构:

  1. 先加epochs,让模型充分收敛,看验证精度是否还有上升空间。
  2. 调整batch_size和学习率组合,这是一对需要联动的参数。
  3. 加数据增强策略,预置算法里一般有“数据增强”开关,打开就行。
  4. 最后再考虑换更大的模型或引入预训练权重。

ResNet-50预训练模型在ImageNet上训练过,它的优势是迁移学习时收敛快、精度高。华为云的预置算法页面里其实内置了这种“在大型数据集预训练、在你的小数据集上微调”的机制,你不需要手动下载权重。这也解释了为什么零基础用预置算法效果比自己从头训练好得多。

6. 模型部署实操:把模型变成可以调用的在线服务

6.1 在线服务、批量服务、边缘服务的区别

训练完成的模型最终要发挥作用,必须部署成推理服务。ModelArts的部署方式有几种,考试经常考它们适用场景的区分:

部署方式适用场景特点
在线服务实时推理、API调用毫秒级响应,支持自动扩容
批量服务离线处理大批量数据异步执行,按任务计费
边缘服务部署到边缘设备低时延,支持IEF纳管设备

零基础练手用在线服务是最直观的。它相当于给你一个HTTP接口,你把图片POST过去,它返回分类结果和置信度,和调用市面上任何AI开放API的感觉一样。

6.2 从模型列表到在线服务的配置

在模型管理列表里,找到刚才训练生成的模型版本,点击“部署”按钮,选择“在线服务”。这里有几个配置项:

  • 服务名称:自定义,公开调用时别人能看到。
  • 资源规格:有CPU规格和GPU规格可选。练手选CPU通用规格就行,推理速度比GPU慢但便宜,而且很多零基础场景只是测试。
  • 实例数:默认1个实例即可。
  • 环境变量:一般不需要填,但有些自定义镜像需要。
  • 安全认证:建议开启“AppKey认证”,这样别人没有密钥就调不了你的API。

在线服务计费是按“服务运行时长”算的,也就是说只要服务没删除,就在扣费。这是一个让很多人月底看账单傻眼的坑:训练作业跑完停了不计费,但部署的在线服务一直挂着就一直在计费。我测试完基本都会立刻删除服务,等下次要用了再重新部署,反正模型文件都在OBS里存着。

6.3 用Python请求调用部署好的模型

部署完成后,在线服务列表里会显示一个“调用指南”,里面清楚地写着API地址、请求格式和鉴权方式。你在本地用Python就能调用。

下面是基于requests库的调用示例:

import requests import base64 # 替换成你的API地址和AppKey url = "https://your-endpoint/v1/infers/xxxxxxxx" app_key = "your-app-key" # 读取本地图片并转成base64 with open("test.jpg", "rb") as f: img_base64 = base64.b64encode(f.read()).decode("utf-8") payload = {"data": {"image_url": img_base64, "file_type": "jpg"}} headers = { "Content-Type": "application/json", "X-Auth-Token": app_key } resp = requests.post(url, json=payload, headers=headers) print(resp.json())

我常用的测试方式更简单:直接在线服务详情页的“预测”选项卡里上传一张测试图片,平台会帮你完成请求并展示返回结果,不需要写代码。零基础第一次建议先走图形化测试,确认模型表现正常,再动手写代码调用。这样能避免把“模型问题”和“代码问题”混在一起排查。

6.4 部署后返回结果与置信度的解读

预置算法部署后的返回结果一般长这样(我用的是图像分类模型):

{ "result": [ {"score": 0.987, "prediction": "cat"}, {"score": 0.011, "prediction": "dog"}, {"score": 0.002, "prediction": "bird"} ] }

score是置信度,prediction是类别名。如果预测结果里最高分也只有0.3左右,说明模型对这张图完全没有把握,这时候不要急着调服务,先回到训练环节补充数据或换模型。很多初学者看到部署成功就以为万事大吉,实际上部署只是把模型“存”到了云端,“预测准不准”还是由训练质量决定的。

7. 考点精讲:华为认证和ICT大赛里ModelArts怎么考

7.1 常考知识点清单

结合华为云AI认证(HCIA-AI/HCIP-AI)和华为ICT大赛云赛道出现过的题目,我把ModelArts相关的考点整理成一个清单,零基础备考可以直接按这个列表查漏补缺:

  • ModelArts的定位:一站式AI开发平台,覆盖数据、训练、推理全流程。
  • 平台组件功能:数据管理、开发环境(Notebook)、训练管理、模型管理、部署服务。
  • 自动学习能力:无需编写代码,上传数据集后平台自动完成模型训练和部署,支持图像分类、物体检测、声音分类等场景。
  • OBS的角色:所有数据输入输出都经过OBS,掌握OBS路径格式和桶操作。
  • 模型管理来源:训练作业输出、AI市场订阅、手动导入。
  • 部署类型对比:在线服务、批量服务、边缘服务的区别。
  • 计费模式:训练作业按规格时长计费,在线服务按运行时长计费。
  • 公共池与专属池:公共池共享排队,专属池独享稳定。

7.2 高频易错题

我挑几道容易丢分的题给你拆一下:

题目一:在ModelArts中,训练作业的数据集必须存放在哪个服务中?答案是OBS。很多人会答“数据管理”或者“ModelArts内置存储”,这两个都不对。数据管理是ModelArts的功能模块,但它底层存储仍然用的OBS。

题目二:在线服务与批量服务的关键区别是什么?关键是响应方式。在线服务是同步的、API实时调用、面向交互式应用;批量服务是异步的、离线执行、适合大数据批量处理。

题目三:使用公共资源池训练时,哪些描述是正确的?说法正确的包括“与其他用户共享物理资源”“高峰期需要排队”“按规格时长计费”。容易踩坑的说法是“资源独享”和“不受其他任务影响”,这在公共池场景下是错的。

题目四:自动学习与传统手动训练的区别?自动学习屏蔽了算法选择和调参细节,适合业务人员做原型验证;手动训练灵活可控,适合专业开发者。零基础入门可以先用自动学习建立整体感知,再进入训练作业做参数调整。

7.3 考试/比赛实操要点

如果你是在校学生准备华为ICT大赛云赛道,实操题通常就是在限定时间内完成“上传数据→创建训练作业→部署在线服务→调用API”,评分点包括数据集质量、模型精度、API可用性、答案字段完整。

这类比赛我建议赛前做三准备:一是把数据集提前处理好,类别平衡、格式规范,避免现场发现坏图;二是熟悉obsutil命令,现场上传大文件比图形化拖拽快得多;三是准备好调用代码模板,现场改改URL和密钥就能跑。ModelArts的免费额度在比赛期间通常够用,但要注意别把额度浪费在反复做全量训练上,先用少量数据跑通流程,再加大epochs冲精度。

8. 零基础入门避坑清单:这些坑我都替你踩过了

8.1 费用相关

  • 在线服务不删除就一直扣费。即使你开了一周,只要服务在,费用就累积。测试完毕第一时间删除。
  • OBS存储也有费用。存储费和流量费虽然单价低,但数据集大起来也是一笔钱,训练结束可以清理不需要的临时文件。
  • 免费额度用完没有提醒那么及时。建议在控制台设置费用预警,不然某个月账单可能会让你意外。

8.2 数据相关

  • 数据集的图片尺寸最好一致。预置算法自带Resize过程,但如果尺寸差异过大,会浪费很多算力在缩放上,同样epochs下效果更差。
  • 类别不均衡是大坑。某个类别只有10张图另一个类有1000张,模型大概率会把前者预测成后者。尽量保证每个类至少有几十张,或者开启自动学习的“数据均衡”选项。
  • 验证集不要和训练集混在一起。数据一旦泄露,训练时看到过验证集的图像,验证精度虚高,部署到真实场景立刻露馅。

8.3 训练相关

  • 训练作业要设置“自动停止”。ModelArts的作业配置支持设置最长运行时长,到了时间自动终止,防止因为代码死循环或者参数失误把额度烧干净。
  • 第一次训练不要跑太重的模型。我见过有人零基础直接跑YOLOv11配8卡V100,排队排半天不说,跑完发现数据根本没准备好。先用轻量模型把流程走通,再升级模型复杂度。
  • 预置算法不等于“一键最优”,它只是把你从写代码中解放出来,超参数还是需要自己调的。

8.4 部署相关

  • 在线服务的“实例数”不是越多越好。实例数越多费用越高,零基础练手1个实例足够。搞促销活动流量大了再手动扩容。
  • 调用API时注意鉴权信息不要硬编码到前端或公开仓库。AppKey泄露了别人可以一直调用你的API产生费用,测试代码用完就删。
  • 模型更新:当训练出更高精度的模型版本后,在模型管理里选择新版本重新部署即可。在线服务支持版本切换,不需要重新创建服务,只是切换时会有几十秒的中断。

9. 写在最后:从跑通到理解的进阶路径

我个人的体会是,零基础在ModelArts上最大的收获不是某个模型的精度分数,而是在一次完整的“数据上传→训练→部署→调用”循环里,把AI应用的真实工作流刻进了脑子里。以后再看到任何AI项目的技术方案,你都能自动把它映射到这套模型里去:数据在哪、训练怎么跑、推理怎么暴露成服务。

最后再分享一个小技巧:华为云ModelArts里有一个“自动学习”入口,它比预置算法更“傻瓜”,你只需要上传打标过的图片,等几分钟,平台给你一个可在线测试的模型服务。我建议零基础同学第一次接触时先花十分钟走一遍自动学习,体会“AI怎么从数据里长出模型”的直觉,再进入训练作业学习调参数。很多考点里的“模型部署流程”“模型管理界面长什么样”,先用自动学习混个脸熟,后面学起来会顺畅特别多。

如果你现在正准备华为云认证或者ICT大赛,实操节奏上我给的建议是:第一遍用自动学习跑通,第二遍用ResNet-50预置算法完整训练一次并记录每个参数的影响,第三遍自己写一个简单训练脚本走“自定义算法”流程。三遍下来,ModelArts的核心考点你已经亲手覆盖了80%,剩下的就是刷题查漏补缺。

AI训练部署这条路上,环境搭建曾经是最大的拦路虎,现在云平台替你移走了。剩下的,只要你愿意多点几次按钮、多跑几次实验,就能把零基础变成熟练工。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/14 9:44:37

智能体从零开发Todo应用:先问再做的完整流程与实操复盘

1. 从一句指令到完整应用:积木智能体到底做了什么第一次看到“让智能体从零开发一个 Todo 应用”这个说法,我脑子里冒出来的第一个念头是:又是一个演示级别的玩具吧。毕竟这些年各种“AI 写代码”的演示看得太多了,大多是给一个函…

作者头像 李华
网站建设 2026/10/14 9:44:24

lingbot-map:聊天机器人中意图映射与路由配置化的实践

1. 为什么会有一个叫 lingbot-map 的东西 先交代一下背景。做了两年多聊天机器人相关的项目,我最大的感受是:真正难做的不是模型怎么选、提示词怎么写,而是业务映射那摊事。用户说出一句话,系统怎么知道该走哪个意图?意…

作者头像 李华
网站建设 2026/10/14 9:44:13

个性化搜索排序实践:层级RNN与查询感知注意力方案

搜索排序这行干久了都会碰到一个很典型的矛盾:你用一堆特征维度的排序模型把点击率做到某个瓶颈之后,再继续堆特征,收益会越来越小。用户的历史行为明明就在日志里躺着,但你不知道怎么把“这个人最近三天内反复比较过什么类型的商…

作者头像 李华
网站建设 2026/10/14 9:43:44

Agent Skills 实战指南:从概念到技能包开发

聊一个很多人还没完全转过弯来的东西:Agent Skills。 最近大半年,我在做 AI Agent 应用落地,发现一个非常明显的趋势——模型之间的能力差距在快速拉平,真正决定一个 Agent 好不好用的,已经不再是"你接入了哪个模…

作者头像 李华
网站建设 2026/10/14 9:43:31

Hadoop集成NFS实战:代理用户配置与混合存储权限解耦

1. 为什么在Hadoop生态里还要折腾NFS?——一个被低估的混合存储场景很多人看到“Hadoop中配置NFS”第一反应是:HDFS不是自带分布式存储吗?再挂个NFS不是画蛇添足?我最初也这么想,直到在某次模拟项目X中遇到真实瓶颈&am…

作者头像 李华
网站建设 2026/10/14 9:43:19

实测20+AI工具:横跨文本、图像、编程、办公的高效工作流指南

最近我把手头一直用的AI工具挨个过了一遍,前前后后试了二十多款,最后留在工作流里的其实只有七八款。这篇就围绕“试试这些AI工具”这个主题,把我自己在文本、图像、编程、办公、学习这几个场景里真实用到的工具、跑通的流程以及踩过的坑整理…

作者头像 李华