1. 大模型行业到底在卷什么:从技术演进到投资逻辑的底层拆解
过去两年,我几乎每周都要跟不同背景的人聊大模型——有做应用层的创业者,有看AI赛道的投资人,也有刚入行想搞清楚技术栈的工程师。大家问的问题五花八门,但归根结底就两类:这东西的技术走向到底是什么,以及钱应该往哪里放。这两个问题看似一个偏技术、一个偏金融,实际上是一枚硬币的两面。技术趋势决定了哪些能力会变成基础设施、哪些会变成商品化红海,而投资框架则是在技术演进的节奏里找到价值捕获的节点。
我写这篇东西的出发点很简单:市面上要么是纯技术分析,堆一堆架构图和benchmark;要么是纯投资视角,满嘴赛道、估值、退出路径,但连推理成本怎么算都说不清楚。真正能把两边打通的内容很少。而我自己过去一年既在动手做本地部署和推理优化,也在帮朋友看一些AI项目的技术尽调,积累了一些跨界的判断。所以这篇文章会从技术栈的实际演进讲起,一路推到投资框架的搭建,中间会穿插大量实操层面的细节——比如流式输出怎么实现、本地部署的显存怎么算、不同模型的真实能力边界在哪里。
适合谁看?如果你是技术负责人,想搞清楚大模型应用的技术选型逻辑;如果你是投资人或者想转行做AI产品,需要一套能落地的分析框架;或者你只是个好奇的从业者,想知道现在市面上这些大模型到底谁更接近真实可用——那这篇内容应该能给你一些不一样的角度。我不会给你一个“标准答案”,因为大模型行业变化太快,任何静态结论三个月后可能就过时了。但分析框架和判断逻辑是相对稳定的,这也是我更想传递的东西。
2. 技术趋势的四个关键分层:别再把大模型当成一个整体来看
2.1 基础模型层:参数竞赛已经结束,效率竞赛刚刚开始
2023年大家还在比谁的参数多,175B、530B、1.8T,数字一个比一个大。但到了2024年下半年,风向明显变了。真正在牌桌上的玩家不再公开参数规模,转而强调推理效率、上下文长度和单位token成本。这个转变背后的逻辑很直接:参数规模带来的边际收益在快速递减,而推理成本是实打实压在每一家应用厂商身上的。
我拿一个实际数字来说明。假设你调用某个千亿参数级别的模型API,输入输出加起来平均每次请求消耗2000个token,按照目前主流定价大约在每百万token几十块到上百块不等。如果你的应用日活是10万,每人每天平均请求20次,那一天就是2亿token,光API成本就是几万到十几万。这个数字对大多数创业公司来说是致命的。所以基础模型层的竞争焦点已经从“谁更聪明”转向了“谁在保持足够聪明的前提下更便宜”。
这就引出了几个关键技术方向:MoE(混合专家)架构的成熟、量化技术的进步、以及推理框架的优化。MoE的核心思路是每次推理只激活一部分参数,比如一个总参数671B的模型,实际每次推理只激活37B左右。这意味着你可以在保持大模型能力的同时,把推理成本拉到接近小模型的水平。量化则是把模型权重从FP16压缩到INT8甚至INT4,显存占用直接砍半甚至更多,代价是精度会有一定损失,但对于很多应用场景来说完全够用。
实操心得:如果你在选型基础模型,不要只看benchmark分数。去实际测三个指标——你的典型业务场景下的输出质量、单位token的推理延迟、以及批量请求时的吞吐量。这三个指标的组合才决定你的用户体验和成本结构。
2.2 推理与部署层:本地部署的真实门槛在哪里
“本地部署大模型”是过去半年搜索量飙升的关键词之一。很多人以为本地部署就是下载个模型文件跑起来,实际上门槛比想象中高不少。我拿最常见的7B级别模型举例,FP16精度下大概需要14GB显存,INT8量化后降到7GB左右,INT4可以压到4GB以下。看起来一张消费级显卡就能跑,但实际部署时你会发现几个问题。
第一是上下文长度对显存的占用是动态的。你跑一个4K上下文的对话和跑一个32K上下文的文档分析,显存占用完全不是一个量级。KV Cache会随着上下文长度线性增长,32K上下文下KV Cache可能就吃掉好几GB。第二是并发问题,单用户跑得动不代表10个用户同时用还能跑得动。第三是推理框架的选择,不同的框架在同样的硬件上性能差距可能达到2-3倍。
目前主流的本地部署方案有几条路线。一条是用Ollama或者LM Studio这类封装好的工具,优点是开箱即用,缺点是灵活性和性能调优空间有限。另一条是用vLLM或者TGI这类专业推理框架,性能好、支持并发,但配置复杂度高。还有一条是用llama.cpp这种底层方案,适合对性能有极致要求且愿意折腾的场景。
我自己的经验是,如果你是做原型验证或者个人使用,Ollama足够了,一条命令就能跑起来。但如果要上生产环境,vLLM几乎是必选项,它的PagedAttention机制对KV Cache的管理效率比朴素实现高出一个数量级。配置的时候注意几个关键参数:gpu_memory_utilization控制显存利用率,一般设0.9左右;max_model_len控制最大上下文长度,根据你的实际需求设,不要盲目拉满;tensor_parallel_size控制多卡并行,如果你有多张卡的话。
2.3 应用交互层:流式输出与实时渲染的工程细节
“通过SSE流式输出实现大模型回答实时渲染”这个技术点,看起来简单,实际上有很多工程细节值得说。SSE就是Server-Sent Events,一种基于HTTP的单向推送协议。相比WebSocket,SSE的优势是轻量、自动重连、兼容性好,特别适合大模型这种“服务器持续推送token、客户端只负责渲染”的场景。
实现流式输出的核心逻辑是这样的:后端接收到用户请求后,不等待模型生成完整回答,而是每生成一个token就通过SSE推送给前端。前端用EventSource或者fetch的ReadableStream来接收,每收到一个片段就追加到界面上。这样用户看到的效果就是文字一个一个蹦出来,体验上比等好几秒然后一次性显示好得多。
但这里有几个坑。第一个是abort的处理。用户可能在模型还在生成的时候就想停止,这时候需要前端发送一个中止信号,后端接收到后要立即停止推理并释放资源。如果处理不好,会出现用户已经取消了但后端还在跑的情况,浪费算力。第二个是错误处理,流式传输过程中如果网络断了或者模型出错了,前端需要能优雅地处理这些异常,而不是卡在那里转圈。第三个是markdown渲染的时机,如果你等所有内容接收完再渲染markdown,那流式输出的意义就少了一半;但如果在流式过程中实时渲染,又要处理markdown语法不完整的情况,比如代码块还没闭合。
注意事项:SSE连接默认有超时限制,Nginx默认是60秒。如果你的模型生成时间可能超过这个值,记得调整
proxy_read_timeout参数。另外,SSE不支持自定义header,如果你需要传递认证信息,得用query参数或者cookie。
2.4 能力边界层:现在市面上的大模型到底谁更接近真实
这个问题我被问过无数次。说实话,没有一个模型在所有场景下都最好。我自己的测试方法是:拿同一组真实业务问题去跑不同的模型,然后人工评估输出质量。测试集要覆盖你的核心场景,比如你是做科研论文辅助的,那就拿几篇论文的摘要和引言让模型去写;你是做客服的,就拿真实的用户问题去测。
从我的实际测试来看,几个主流模型各有侧重。有些模型在中文理解和生成上明显更强,适合国内业务场景;有些模型在代码生成和逻辑推理上更突出;还有些模型在长文本处理上表现更好,适合文档分析类任务。但要注意的是,benchmark分数和实际体验之间的差距可能很大。一个模型在MMLU上得分高,不代表它在你的具体业务场景下就好用。
另外说一个很多人忽略的点:模型的“性格”也很重要。有些模型倾向于给出很长的回答,有些则很简洁;有些模型很“听话”,你说什么它做什么,有些则喜欢加自己的“想法”。这个没有绝对的好坏,取决于你的产品定位。如果你是做效率工具的,简洁直接可能更好;如果你是做创意辅助的,模型有自己的“想法”反而是加分项。
3. 从技术趋势推导投资框架:钱应该往哪里放
3.1 投资框架的第一层:算力基础设施还有没有机会
算力是大模型行业的“卖铲人”,这个逻辑在过去两年已经被充分验证了。但到了现在这个时间点,需要更细致地看。训练算力和推理算力的投资逻辑是完全不同的。训练算力集中在少数几家巨头手里,门槛极高,普通投资人很难参与。而推理算力的市场更分散,因为每个应用厂商都需要推理算力,而且推理需求会随着应用普及持续增长。
从投资角度看,推理算力有几个值得关注的方向。一是推理优化软件层,谁能把同样的硬件跑出更高的吞吐量,谁就能在价值链上占据位置。这个领域的竞争格局还远未定型,有很多创业公司在做。二是边缘推理,随着模型量化技术的成熟,在终端设备上跑小模型变得越来越可行,这个方向可能会催生新的硬件需求。三是算力调度和弹性伸缩,很多企业的推理需求是波动的,如何在不同负载下保持成本最优,是一个真实的痛点。
但也要看到风险。推理算力的商品化速度可能比预期更快,因为硬件在进步、软件在优化、模型在变小。如果你投的是一个纯粹的“算力转售”生意,长期来看利润率会被持续压缩。真正有壁垒的是那些在软件层面有核心技术、能持续提升效率的团队。
3.2 投资框架的第二层:模型层的价值捕获越来越难
基础模型层的投资逻辑,我个人是偏谨慎的。原因很简单:训练一个通用大模型的成本是十亿级别,但模型本身正在快速商品化。开源模型的能力在快速逼近闭源模型,而且开源模型的迭代速度往往更快。这意味着闭源模型厂商的定价权会持续受到挤压。
但这不代表模型层没有投资机会。机会在于垂直领域的专用模型。一个在医疗领域精调的模型,在医疗问答场景下可能比通用大模型表现更好,而且推理成本更低。这种专用模型的壁垒不在于参数规模,而在于数据质量和领域理解。如果你能拿到高质量的领域数据,并且有办法持续迭代,那这个壁垒是真实存在的。
另一个机会是模型即服务的中间层。很多企业不想自己部署模型,也不想直接调用原始API,他们需要一个中间层来做路由、缓存、fallback、成本控制。这个中间层的价值在于它掌握着企业的实际使用数据,可以基于这些数据做更精细的优化。
3.3 投资框架的第三层:应用层的价值在哪里
应用层是我个人最看好的方向,但也是最难判断的方向。因为应用层的进入门槛低,竞争激烈,而且很多应用场景的付费意愿还不明确。但有几个判断标准可以帮助筛选。
第一,这个应用是否在替代人力而不是辅助人力。辅助人力的工具,用户付费意愿通常有限,因为用户觉得“我自己也能做,只是慢一点”。而替代人力的应用,用户会拿它跟人力成本做对比,付费意愿强得多。比如AI客服如果能替代30%的人工客服,那这个价值就是可以直接量化的。
第二,这个应用是否嵌入了工作流。一个独立的AI工具,用户可能用几次就忘了。但如果它嵌入了用户的日常工作流,比如集成在CRM里、集成在代码编辑器里,那用户的迁移成本就很高,留存率也会好很多。
第三,这个应用是否有数据飞轮。用户使用越多,产生的数据越多,模型效果越好,吸引更多用户。这个飞轮效应是应用层最可靠的壁垒之一。
3.4 投资框架的第四层:被忽视的配套服务
大家都在看模型和应用,但配套服务往往被忽视。比如数据标注和清洗,大模型对数据质量的要求比传统机器学习高得多,高质量的数据标注服务是刚需。再比如模型评估和测试,如何系统性地评估一个模型在特定场景下的表现,是一个还没有标准答案的问题。还有合规和安全,随着监管框架的完善,这块的需求会持续增长。
这些配套服务的特点是:市场规模可能不如模型和应用大,但竞争格局更清晰,利润率也更稳定。对于风险偏好较低的投资人来说,这些方向值得关注。
4. 实操层面的关键决策:从选型到落地的完整路径
4.1 模型选型的决策树:别再凭感觉选了
我见过太多团队在模型选型上凭感觉,要么用最贵的,要么用最火的,要么用自己第一个听说的。其实模型选型应该是一个系统性的决策过程。我总结了一个决策树,按顺序问自己几个问题。
第一个问题:你的场景对延迟的要求是什么。如果是实时对话,延迟要求可能在几百毫秒级别,那你就需要一个小模型或者一个推理优化做得很好的大模型。如果是离线批处理,延迟要求宽松,那可以用更大的模型来换取更好的质量。
第二个问题:你的场景对成本有多敏感。如果你每天要处理百万级别的请求,那单位token成本就是核心指标。这时候你可能需要量化模型或者小模型。如果请求量不大,那成本就不是首要考虑因素。
第三个问题:你的场景需要多强的推理能力。简单的分类、抽取、改写任务,小模型完全够用。复杂的逻辑推理、多步计算、长文档理解,才需要大模型。
第四个问题:你有没有数据隐私或合规要求。如果有,那本地部署可能是必须的,这会限制你的模型选择范围。
把这四个问题回答清楚,你的模型选型范围就大大缩小了。然后在这个范围内做实际测试,用你的真实数据去评估,而不是看benchmark。
4.2 本地部署的硬件配置计算:别拍脑袋买卡
本地部署大模型,硬件配置是绕不过去的。我见过有人花了几万块买显卡,结果发现显存不够跑想要的模型;也见过有人低估了需求,部署完发现并发一上来就崩。这里给一个实用的计算方法。
首先确定你要跑的模型规模和精度。以7B模型为例,FP16需要约14GB显存,INT8需要约7GB,INT4需要约4GB。然后加上KV Cache的占用,这个取决于你的最大上下文长度和并发数。粗略估算,每个并发在4K上下文下大约需要1-2GB的KV Cache。最后留出20%左右的余量给框架本身和其他开销。
所以如果你要跑一个7B模型,INT8精度,支持4K上下文,同时服务5个并发用户,显存需求大约是:7GB(模型)+ 5×1.5GB(KV Cache)+ 20%余量 ≈ 17GB。一张24GB的卡就够了。但如果你的上下文要拉到32K,那KV Cache的占用会大幅增加,可能需要两张卡。
实操心得:不要只看显存,内存和带宽也很重要。模型加载时需要把权重从磁盘读到内存再传到显存,如果内存不够或者带宽太低,加载时间会很长。另外,如果你的场景是批处理而不是实时对话,可以考虑用CPU推理加内存的方案,成本更低,虽然速度慢一些。
4.3 流式输出的完整实现方案
流式输出的实现,我分后端和前端两部分来说。后端以Python为例,用FastAPI框架,核心是用StreamingResponse来包装一个生成器函数。生成器函数里调用模型的流式接口,每收到一个token就yield出去。注意要设置正确的media type为text/event-stream。
前端用EventSource来接收。但EventSource有个限制,它只支持GET请求,不支持POST。如果你的请求参数很多,GET的URL长度可能不够。这时候可以用fetch的ReadableStream来替代,虽然代码复杂一些,但灵活性更高。
关于abort的处理,前端可以用AbortController来取消fetch请求。后端需要监听连接断开事件,一旦客户端断开,就停止推理。在FastAPI里可以通过request.is_disconnected()来检测。这个细节很重要,不然用户取消了但后端还在跑,浪费算力。
还有一个容易忽略的点是心跳机制。如果模型生成第一个token的时间比较长,SSE连接可能会被中间层断开。这时候需要定期发送注释行来保持连接活跃。SSE的注释行以冒号开头,前端会忽略它,但可以起到心跳的作用。
4.4 效果评估的实操方法:别只看loss
模型效果评估是另一个容易被做得很粗糙的环节。很多团队就是看loss曲线,或者跑几个标准benchmark。但loss低不代表实际效果好,benchmark高不代表你的用户满意。
我推荐的做法是建立场景化的评估集。从你的真实业务数据里抽取几百条,人工标注期望的输出,然后让模型去跑,对比输出和期望的差距。评估指标要根据场景来定,比如生成任务可以用ROUGE或者BERTScore,分类任务用准确率,对话任务可能需要人工评分。
更重要的是建立持续评估机制。模型在迭代,数据分布在变化,一次性的评估结果很快就会过时。最好是每次模型更新或者数据分布有明显变化时,都重新跑一遍评估集,跟踪指标的变化趋势。
5. 常见问题与排查技巧实录
5.1 模型输出质量不稳定的排查思路
模型输出质量不稳定是最高频的问题之一。同样的输入,有时候输出很好,有时候一塌糊涂。排查这个问题,我一般按以下顺序来。
先看温度参数。温度越高,输出越随机。如果你的场景需要稳定输出,把温度调到0或者接近0。但注意,温度设为0也不保证完全确定性,因为GPU的浮点运算本身就有微小的非确定性。
再看prompt的稳定性。如果你的prompt里有动态内容,比如用户输入的历史对话,那prompt的变化会导致输出变化。检查一下是不是prompt构造逻辑有问题,比如历史对话的截断方式不一致。
然后看上下文长度。如果上下文接近模型的最大长度限制,模型可能会“忘记”前面的内容。这时候需要检查你的上下文管理策略,是不是该做摘要或者检索了。
最后看模型本身的能力边界。有些问题就是超出了模型的能力范围,再怎么调prompt也没用。这时候需要考虑换模型或者加人工兜底。
5.2 推理速度慢的优化路径
推理速度慢的原因可能有很多,我按影响程度从大到小排列。
批处理没做好是最常见的原因。如果你是一个请求一个请求地跑,GPU利用率会很低。vLLM的continuous batching可以把多个请求动态合并成一个batch,吞吐量能提升好几倍。
KV Cache管理不当是第二个常见原因。如果每次请求都重新计算KV Cache,那长上下文场景下会非常慢。vLLM的PagedAttention就是专门解决这个问题的,它把KV Cache分页管理,不同请求之间可以共享。
量化精度选择不当也会影响速度。INT4比INT8快,但精度损失更大。如果你的场景对精度要求不高,可以试试更激进的量化。
硬件瓶颈也需要排查。用nvidia-smi看看GPU利用率,如果利用率很低,那瓶颈可能在CPU或者IO。用nvtop可以更直观地看GPU的各项指标。
5.3 常见问题速查表
| 问题现象 | 可能原因 | 排查方法 | 解决方案 |
|---|---|---|---|
| 输出乱码或重复 | 量化精度过低 | 换FP16或INT8测试 | 提高量化精度或换模型 |
| 首token延迟高 | prompt过长或模型加载慢 | 检查prompt长度和加载日志 | 精简prompt或预热模型 |
| 并发上不去 | 显存不足或批处理未开启 | 监控显存和GPU利用率 | 开启continuous batching或加卡 |
| 流式输出中断 | 超时设置太短 | 检查Nginx和框架超时配置 | 调整proxy_read_timeout |
| 输出质量波动大 | 温度过高或prompt不稳定 | 固定温度测试 | 降低温度或稳定prompt |
| 本地部署OOM | 显存计算错误 | 重新计算模型+KV Cache需求 | 量化模型或减少并发 |
5.4 几个踩过的坑和对应的经验
第一个坑是盲目追求大模型。我一开始也觉得模型越大越好,后来发现很多任务7B模型和70B模型的输出质量差距远没有想象中大,但推理成本差了十倍。现在我的原则是:先用小模型跑,效果不够再换大的。
第二个坑是忽略prompt工程。同样的模型,好的prompt和差的prompt,输出质量差距可能比换模型还大。花时间打磨prompt的ROI通常比换模型高。
第三个坑是不做缓存。很多请求是重复的或者相似的,如果每次都重新推理,浪费很大。做一个语义缓存,相似的问题直接返回缓存结果,能省不少算力。
第四个坑是不监控成本。API调用成本是累积的,如果不做监控,月底账单可能会吓你一跳。建议从第一天就做好成本追踪,按项目、按用户、按场景分别统计。
6. 我对这个行业的一些个人判断
说了这么多技术和框架,最后聊几句我自己的感受。大模型行业现在处在一个很有意思的阶段:技术能力已经足够支撑很多应用了,但真正跑通商业闭环的还不多。这意味着两件事:一是技术本身不再是壁垒,会用大模型的人越来越多;二是真正的壁垒在于对场景的理解、对数据的掌握、对工作流的嵌入。
我见过一些团队,技术很强,模型调得很好,但产品就是没人用。也见过一些团队,技术一般,但场景选得准,用户增长很快。这让我越来越相信,在大模型时代,技术是必要条件但不是充分条件。真正稀缺的是那些既懂技术又懂场景的人。
对于想进入这个行业的人,我的建议是:不要只盯着模型本身,多去看看模型能解决什么实际问题。去跟业务方聊,去理解他们的工作流,去找到那些“用人力做很痛苦、用传统软件做很麻烦、但用大模型刚好合适”的场景。这些场景才是真正的机会所在。
至于投资,我的核心判断是:短期看算力,中期看应用,长期看数据。算力的需求还会持续增长一段时间,但利润率会逐渐被压缩。应用层的机会最多,但需要精挑细选。而数据,尤其是高质量的、结构化的、有领域壁垒的数据,会是长期最稀缺的资源。谁掌握了数据,谁就掌握了持续迭代的能力。
这个行业变化太快,我上面说的很多东西可能几个月后就需要修正。但分析框架和判断逻辑是相对稳定的,希望这些内容能给你提供一个思考的起点,而不是一个标准答案。