23 从一个建筑行业的AI分析来看构建行业大模型的挑战和成本
你好,我是金伟。
从上一节课对建筑行业CAD设计需求的分析来看,用AI来做建筑行业的设计,显然是一个不小的挑战,如果从0开始,我们应该怎么规划,会有哪些挑战呢?成本会是多少?这些问题都是你在做实际创业项目中会遇到的。
我们这节课来探讨这些问题。有趣的是,这个项目是一个实际的客户需求,我们也正式做出过成本评估。那就让我从我们的评估结果开始说吧。
数据:最大的挑战和成本
下面是一个初步的成本评估结果,不包含数据和算力方面的估算。
在分析这个项目的成本之前,我们有必要回顾一下大模型的铁三角。
在大模型训练中,算法(模型)非常重要,数据量和数据质量非常重要,但这两者的开发难度其实还好,真正的挑战反而是训练大模型的工程师如何高效利用算力。
实际上,这3个因素是相辅相成的关系,作为大模型操控者的工程师的价值在于节约成本。经过前面的课程,我相信你已经意识到,大模型项目中,数据是一切的基础。那在CAD设计AI大模型这个需求里,要多少数据呢?
别看上节课提到的简单例子里的数据不大,一个真实的办公室设计CAD一般是3维的,包含至少上百个物体,一个这样的CAD文件,即使是文本格式的,平均也有100M。
从经验来说,这样的CAD图数据量至少要1万张以上才能达到比较好的效果,实际数据工程中,不仅仅是给最终的CAD设计图配相应的文字,而是应该把这张图的CAD拆解出来,把每个物体或相关物体的关系都拆解描述清楚。这样一张图的数据量会增加3-5倍。
跟HTML这种代码类的数据不一样,代码类数据在互联网上非常容易获取,CAD这种结构化的数据则很难获取,也没有公开的资源。因此,在CAD设计AI大模型里,需要人工对每个CAD图拆解标注。
粗略估计,一个懂CAD设计的标注人员,一天能处理10张这样的CAD设计图。假设总标注量是1万张图。
在算法工程师的成本基础上,数据标注的人员成本需要增加50-100万。注意,这个估算是在CAD设计图已经获取的前提下进行的,实际上,要获取1万张不同的CAD图很可能是这个项目真正致命的难点。
根据前面的数据预估,一张图大概100M左右的数据量,这会直接影响到GPU的计算成本。
你可能会想,我们为什么一定要用动辄上10万-100万一张的GPU卡呢?实际上这是一个典型的空间换取时间的策略。
为什么要用GPU?
先说一个最简单的问题,一个100M左右数据,如果在一张4090GPU上做大模型训练一次,参数量是70B大小的话,大概要多少时间?
在说这个问题之前,不妨回顾一下大模型的基本原理,你可以回想一下GPT的1750亿参数到底是什么含义。我先把大模型的基本流程图放到下面。
你可能已经回想起来,这1750亿个参数实际上就是大模型里的参数矩阵,可能有上万到几十万个这样的矩阵,每次简单的预测都需要和这些矩阵计算。当然,数据不会只预测一次,训练过程中是成千上万次。
如果用传统的CPU计算会是怎样的呢?
void exampleFunction(int n) {
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
for (int k = 0; k < n; k++) {
// 执行某些操作,例如:
System.out.println("i: " + i + ", j: " + j + ", k: " + k);
}
}
}
}
如果你有编程经验,就一定有这样的经验:一个多层循环对导致计算效率呈现指数级下降,这很可能导致这个100M的数据计算时间长达几天甚至几个月。这显然是无法接受的。
而GPU最大的特点是什么呢?就是可以将这些矩阵计算做并行化,也就是用空间换取时间。GPU实际上就是显卡,原始的需求就是为了快速处理图片和视频的计算。我再把图片的基本结构放到下面,你就全明白了。
[
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
...
// 继续填充直到64x64
]
这是一个最小的64x64像素的图片源码,你肯定会想,这不就是一个矩阵吗?没错,GPU最擅长的就是矩阵的并行计算。
以一张100M的CAD数据来说,在一张4090GPU上,70B参数规模下,也要计算1个小时左右。这只是训练一次的时间,实际工程训练一般都需要100次以上。现在我们来简单评估一次。
如果用4090来训练,需要同时并行1000张GPU,3个月的总成本预计为200-300万。这只是一次训练的计算成本,正因为如此,实际训练都是先用小规模数据做验证性训练,最后再全量训练,因为一次全量训练失败的成本实在太高了。
为什么要博士带队?
数据和算力显然是一个硬性支出,那么负责具体的大模型训练的工程师呢?这就要提到之前的一个观点,实际上大模型工程师最大的作用是为团队节省成本,因为算力消耗实在太大了,工程师的价值主要是保证算力得到最优化使用。
回顾一下之前关于工程师团队的成本评估。
很多人都有这样的一个疑问,为什么大模型创业项目都需要博士呢?有10-20年开发经验工程师就做不了吗?为了回答这个问题,我先说说之前课程里两个项目团队的构成情况。
实际上是不是要有博士带队取决于你的项目情况,如果是偏应用类的AI项目,则普通工程师就足够了,如果是偏行业大模型创新类的项目,则需要博士团队。
之前课程提到过,大模型的训练代码实际上并不难,那博士在AI项目里到底起什么作用呢?可以用一个最简单的例子来说明,博士在大模型项目里的作用就是读最新的论文和复现论文里的大模型。
特别是一个具有一定创新性的行业大模型,实际上很多技术并没有成熟的方案,换句话说,每个小问题都可能碰到行业最前沿,因此复现行业论文的能力成为必备条件。
在之前课程中,很多例子都提到大模型论文的能力。一个典型的例子是在Transform原理的分析中,我们依赖于Google的相关论文。
另外一个例子是在评估专家场景下,一种结合PPO的开源RLHF实现,实际上也是一篇论文里的内容。
有意思的是,如果你自己可以搞定论文相关的问题,那你就是博士水平,学历反而并不是关键。
整体成本经验
经过分析,现在我们已经可以对CAD设计AI大模型的开发成本有一个估计,大概在500-1000万之间,你看到这样一个成本评估是什么反应?
现实中,即使我们的客户是建筑行业背景的,也被这个投资额吓跑了。因此这个项目只有需求评估过程,并没有具体的实现代码。为什么会出现这种情况呢?
可以这么说,这种情况非常普遍,大部分想做行业创新的需求方,都会大大低估大模型的开发成本。而这仅仅还是问题的一小部分,实际上,即使你真的愿意投入1000万到这个项目,你还会发现另外一个重要的问题。
人才问题。
曾经有另外一个建筑行业的老板跟我提过类似的建筑行业AI需求,在沟通过程中,他一再抱怨,为什么找一个既懂大模型开发又懂建筑行业业务的人才这么难? 现实情况是,你想找一个懂AI大模型的博士已经很难了,更何况是跟行业结合呢。
在我们的经验里,一个AI项目的初始启动资金和人才只是一个开始,真正困难的在于项目后期的事情,如果你将来打算开启一个AI创业项目,一定要注意项目运行过程中更多的成本。
小结
真实的建筑行业CAD设计中的AI大模型将面临很多挑战,实际上我们这个CAD需求方在我们报价之后就放弃了项目,大部分人都低估了这种行业大模型创新的成本。
成功实施CAD设计AI模型需要大量高质量的训练数据,估计至少需1万张标注清晰的CAD图,这不仅获取成本高昂,还需要专业人员进行标注。
每张CAD图的数据量有100M,这导致GPU算力的需求也显著增加,全量训练一次可能需要数百万的投资。同时,团队中必须有具备创新能力的博士,以应对行业前沿问题,特别是大模型行领域新技术层出不穷,需要有人能看懂和复现最新的论文成果。
整体来看,CAD设计AI大模型的开发成本预估在500-1000万之间,实际操作中,人才短缺问题也成为了重要的挑战。
思考题
面对这样一个行业创新项目,显然开发成本是比较高的,那我们普通人就没有机会做AI创业了吗?如果有的话,成本又会是多少呢?我们可以承受吗?你可以思考一下,我们讨论。
欢迎你在留言区和我交流。如果觉得有所收获,也可以把课程分享给更多的朋友一起学习。我们下节课见!
- nnn 👍(0) 💬(0)
cad原型产品设计,不需要细节完整有整个产品直观感受
2024-12-14