一、AI Infra
在大模型公司当中,AI Infra团队如何分类?

最底层是芯片、中间是推理和训练的架构、最上面是应用层等几个方面,这里面最大的是推理和训练:

网络、调度,这些在训练和推理都会需要,调度比如说这么多卡,怎么调度任务;
推理当中最重要的就是KV Cache,训练是做fault tolerance,保证不会太大故障;
应用层如Agent Memory和Agentic Workflow等;
这有点像云计算的分类:网络、存储、计算,比如计算就是GPU的算子优化,怎么做schedule之类的,KV Cache对应存储,网络就是通信。

infra团队的目标与原理是什么?

AI Infra团队的主要作用是提升模型效率、降低推理成本,其目标是尽可能地挖掘GPU的算力,把GPU的算力尽可能榨干,具体方式包括:

GPU计算单元的高效利用:许多GPU计算单元并未得到充分利用,比如处于空闲状态。为什么空闲?有可能在等待其他任务。而在等待的任务中,有些任务本来能并行的,但没有并行,那就是干等,通过并行化任务,可以提高GPU的利用率;
数据搬移与计算不平衡:比如访问内存的时候,带宽成为瓶颈,这个时候应该多加一些计算,把算力用起来,保证内存不变的情况下多加一些计算。如果不平衡,会出现算力没用完,然后内存先用完,或者内存没用完,算力先用完;
缓存与存储优化:训练成本一般就是做缓存,KV Cache就是做缓存来提高效率,存储的过程就是把我们之前做过的东西存起来,下次用的时候可以直接调用。但是如果数据都存的话,内存又存不下,如何取舍?假设存了以后,那么多数据我上哪怎么找?

在infra有哪些常见的难点需要持续解决?

大家都在提升训练效率,有几个指标

MFU(Model FLOPs Utilization):评估GPU算力的有效利用率,就是GPU的算力到底有多少用来干活的。如果MFU低于50%,则属于异常,如果能达到70-80%,那效率就很高了;
故障率:在大规模的集群中,推理请求的故障率,因为在一万张卡的集群中,如果每几分钟就有一张卡挂掉,那么这会影响整体效率,或者说看故障时间占在整个有效训练时间的占比,如果说是故障的时间占训练时间比例超过30%,也非常影响效率;