<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>AI基础设施 on 超越网</title><link>https://www.chaoyuewang.cn/tags/ai%E5%9F%BA%E7%A1%80%E8%AE%BE%E6%96%BD/</link><description>Recent content in AI基础设施 on 超越网</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Mon, 01 Jun 2026 10:10:00 +0800</lastBuildDate><atom:link href="https://www.chaoyuewang.cn/tags/ai%E5%9F%BA%E7%A1%80%E8%AE%BE%E6%96%BD/index.xml" rel="self" type="application/rss+xml"/><item><title>AI超算时代：从Chat到Agent的基础设施演进</title><link>https://www.chaoyuewang.cn/posts/infra/infra-2026-ai-hypercomputer/</link><pubDate>Mon, 01 Jun 2026 10:10:00 +0800</pubDate><guid>https://www.chaoyuewang.cn/posts/infra/infra-2026-ai-hypercomputer/</guid><description>&lt;h2 id="前言"&gt;前言&lt;/h2&gt;
&lt;p&gt;2026年，AI基础设施正在经历一场范式转移。曾经以&amp;quot;对话式AI&amp;quot;为核心的基础设施设计，正在被&amp;quot;代理智能&amp;quot;（Agentic Intelligence）的新需求所重塑。这场变革的核心不是&amp;quot;更多GPU&amp;quot;，而是&amp;quot;更智能的GPU&amp;quot;。&lt;/p&gt;
&lt;h2 id="为什么基础设施需要重新设计"&gt;为什么基础设施需要重新设计？&lt;/h2&gt;
&lt;h3 id="从单轮对话到多智能体协作"&gt;从单轮对话到多智能体协作&lt;/h3&gt;
&lt;p&gt;传统Chat AI的工作模式：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;用户输入 → 模型推理 → 返回答案
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;代理智能的工作模式：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;用户意图 → 主代理分解目标 → 多个子代理并行执行 → 结果汇总 → 强化学习反馈 → 迭代优化
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;这种模式转变对基础设施提出了全新要求：&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;需求维度&lt;/th&gt;
&lt;th&gt;Chat AI&lt;/th&gt;
&lt;th&gt;Agentic AI&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;延迟要求&lt;/td&gt;
&lt;td&gt;秒级可接受&lt;/td&gt;
&lt;td&gt;毫秒级关键&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;内存需求&lt;/td&gt;
&lt;td&gt;KV Cache适中&lt;/td&gt;
&lt;td&gt;KV Cache巨大&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;网络拓扑&lt;/td&gt;
&lt;td&gt;点对点&lt;/td&gt;
&lt;td&gt;多对多协作&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;状态管理&lt;/td&gt;
&lt;td&gt;无状态&lt;/td&gt;
&lt;td&gt;有状态持久化&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;推理模式&lt;/td&gt;
&lt;td&gt;单模型&lt;/td&gt;
&lt;td&gt;多模型路由&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="google-tpu-8代专为agent设计"&gt;Google TPU 8代：专为Agent设计&lt;/h3&gt;
&lt;p&gt;Google在2026年Next大会上发布的TPU 8代，首次将训练芯片和推理芯片分开设计：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;TPU 8t（训练专用）&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;单Superpod：9,600芯片，121 exaflops&lt;/li&gt;
&lt;li&gt;共享内存：2PB via ICI（片间互联）&lt;/li&gt;
&lt;li&gt;目标：将大模型训练周期从&amp;quot;月&amp;quot;缩短到&amp;quot;周&amp;quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;TPU 8i（推理专用）&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;片上SRAM：384MB（前代的3倍）&lt;/li&gt;
&lt;li&gt;HBM：288GB（容纳巨型KV Cache）&lt;/li&gt;
&lt;li&gt;ICI带宽：19.2 Tb/s（翻倍）&lt;/li&gt;
&lt;li&gt;推理性能/美元：提升80%&lt;/li&gt;
&lt;li&gt;片上延迟：降低5x（CAE引擎）&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="网络革命消除扩展税"&gt;网络革命：消除&amp;quot;扩展税&amp;quot;&lt;/h2&gt;
&lt;h3 id="virgo-fabric数据中心网络的新标准"&gt;Virgo Fabric：数据中心网络的新标准&lt;/h3&gt;
&lt;p&gt;Google的Virgo网络架构解决了传统数据中心网络的&amp;quot;扩展税&amp;quot;问题：&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="前言">前言</h2>
<p>2026年，AI基础设施正在经历一场范式转移。曾经以&quot;对话式AI&quot;为核心的基础设施设计，正在被&quot;代理智能&quot;（Agentic Intelligence）的新需求所重塑。这场变革的核心不是&quot;更多GPU&quot;，而是&quot;更智能的GPU&quot;。</p>
<h2 id="为什么基础设施需要重新设计">为什么基础设施需要重新设计？</h2>
<h3 id="从单轮对话到多智能体协作">从单轮对话到多智能体协作</h3>
<p>传统Chat AI的工作模式：</p>
<pre tabindex="0"><code>用户输入 → 模型推理 → 返回答案
</code></pre><p>代理智能的工作模式：</p>
<pre tabindex="0"><code>用户意图 → 主代理分解目标 → 多个子代理并行执行 → 结果汇总 → 强化学习反馈 → 迭代优化
</code></pre><p>这种模式转变对基础设施提出了全新要求：</p>
<table>
	<thead>
			<tr>
					<th>需求维度</th>
					<th>Chat AI</th>
					<th>Agentic AI</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>延迟要求</td>
					<td>秒级可接受</td>
					<td>毫秒级关键</td>
			</tr>
			<tr>
					<td>内存需求</td>
					<td>KV Cache适中</td>
					<td>KV Cache巨大</td>
			</tr>
			<tr>
					<td>网络拓扑</td>
					<td>点对点</td>
					<td>多对多协作</td>
			</tr>
			<tr>
					<td>状态管理</td>
					<td>无状态</td>
					<td>有状态持久化</td>
			</tr>
			<tr>
					<td>推理模式</td>
					<td>单模型</td>
					<td>多模型路由</td>
			</tr>
	</tbody>
</table>
<h3 id="google-tpu-8代专为agent设计">Google TPU 8代：专为Agent设计</h3>
<p>Google在2026年Next大会上发布的TPU 8代，首次将训练芯片和推理芯片分开设计：</p>
<p><strong>TPU 8t（训练专用）</strong></p>
<ul>
<li>单Superpod：9,600芯片，121 exaflops</li>
<li>共享内存：2PB via ICI（片间互联）</li>
<li>目标：将大模型训练周期从&quot;月&quot;缩短到&quot;周&quot;</li>
</ul>
<p><strong>TPU 8i（推理专用）</strong></p>
<ul>
<li>片上SRAM：384MB（前代的3倍）</li>
<li>HBM：288GB（容纳巨型KV Cache）</li>
<li>ICI带宽：19.2 Tb/s（翻倍）</li>
<li>推理性能/美元：提升80%</li>
<li>片上延迟：降低5x（CAE引擎）</li>
</ul>
<h2 id="网络革命消除扩展税">网络革命：消除&quot;扩展税&quot;</h2>
<h3 id="virgo-fabric数据中心网络的新标准">Virgo Fabric：数据中心网络的新标准</h3>
<p>Google的Virgo网络架构解决了传统数据中心网络的&quot;扩展税&quot;问题：</p>
<pre tabindex="0"><code>传统网络：每增加10%算力，网络开销增加30%
Virgo网络：每增加10%算力，网络开销仅增加2%
</code></pre><p><strong>关键指标：</strong></p>
<ul>
<li>单数据中心：连接134,000 TPU</li>
<li>跨数据中心：连接超1,000,000 TPU</li>
<li>GPU支持：单数据中心80,000 GPU</li>
</ul>
<h3 id="infiniband-vs-ethernet2026年的选择">InfiniBand vs Ethernet：2026年的选择</h3>
<table>
	<thead>
			<tr>
					<th>协议</th>
					<th>带宽</th>
					<th>延迟</th>
					<th>成本</th>
					<th>适用场景</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>InfiniBand NDR</td>
					<td>400 Gb/s</td>
					<td>&lt;1μs</td>
					<td>高</td>
					<td>训练集群</td>
			</tr>
			<tr>
					<td>InfiniBand XDR</td>
					<td>800 Gb/s</td>
					<td>&lt;0.8μs</td>
					<td>很高</td>
					<td>超大规模训练</td>
			</tr>
			<tr>
					<td>RoCE v2</td>
					<td>400 Gb/s</td>
					<td>2-5μs</td>
					<td>中</td>
					<td>推理集群</td>
			</tr>
			<tr>
					<td>Ethernet 800G</td>
					<td>800 Gb/s</td>
					<td>5-10μs</td>
					<td>低</td>
					<td>通用工作负载</td>
			</tr>
	</tbody>
</table>
<p><strong>2026年趋势</strong>：训练集群仍首选InfiniBand，但推理集群向RoCE/Ethernet迁移以降低成本。</p>
<h2 id="存储瓶颈的突破">存储瓶颈的突破</h2>
<h3 id="为什么存储成为新瓶颈">为什么存储成为新瓶颈？</h3>
<p>在GPU算力过剩的今天，存储I/O成为新的性能瓶颈：</p>
<pre tabindex="0"><code>GPU计算：100 TFLOPS
存储带宽：10 TB/s
数据加载时间：占总训练时间30-40%
</code></pre><h3 id="2026年存储创新">2026年存储创新</h3>
<p><strong>1. Google Managed Lustre</strong></p>
<ul>
<li>带宽：10 TB/s（前代的10倍）</li>
<li>容量：80 PB</li>
<li>对比：比其它超大规模云快20倍</li>
</ul>
<p><strong>2. Rapid Buckets</strong></p>
<ul>
<li>延迟：亚毫秒级</li>
<li>吞吐量：2000万OPS</li>
<li>适用：高频推理场景</li>
</ul>
<p><strong>3. Z4M VM（专用文件服务器）</strong></p>
<ul>
<li>本地SSD：168 TiB</li>
<li>RDMA支持</li>
<li>适用：自定义并行文件系统（Vast Data、Sycomp）</li>
</ul>
<h2 id="推理优化从模型到网关">推理优化：从模型到网关</h2>
<h3 id="ai推理网关的革命">AI推理网关的革命</h3>
<p>2026年，推理优化不再局限于模型压缩，而是扩展到整个推理链路：</p>
<p><strong>AI-Powered Inference Gateway</strong></p>
<ul>
<li>实时容量感知路由</li>
<li>基于ML的负载均衡</li>
<li>TTFT（首Token延迟）降低70%</li>
</ul>
<h3 id="vllm--tpu开源推理框架的崛起">vLLM + TPU：开源推理框架的崛起</h3>
<p>Google宣布对vLLM提供原生TPU支持，这意味着：</p>
<ul>
<li>开源推理框架不再被GPU生态绑定</li>
<li>TPU推理生态加速成熟</li>
<li>多厂商互操作性提升</li>
</ul>
<h2 id="成本优化spot-vm的成熟">成本优化：Spot VM的成熟</h2>
<h3 id="spot-vm从实验工具到生产选项">Spot VM：从&quot;实验工具&quot;到&quot;生产选项&quot;</h3>
<p>2026年，Spot VM（抢占式实例）已从实验性工具转变为生产级选项：</p>
<table>
	<thead>
			<tr>
					<th>云厂商</th>
					<th>Spot折扣</th>
					<th>中断率</th>
					<th>适用场景</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>GCP</td>
					<td>91%</td>
					<td>&lt;5%</td>
					<td>训练、批处理</td>
			</tr>
			<tr>
					<td>AWS</td>
					<td>90%</td>
					<td>&lt;10%</td>
					<td>推理、训练</td>
			</tr>
			<tr>
					<td>Azure</td>
					<td>85%</td>
					<td>&lt;8%</td>
					<td>通用工作负载</td>
			</tr>
	</tbody>
</table>
<p><strong>关键改进</strong>：</p>
<ul>
<li>中断通知时间从秒级延长到分钟级</li>
<li>自动检查点（Checkpoint）机制成熟</li>
<li>混合调度（Spot + On-demand）成为标准实践</li>
</ul>
<h2 id="选型指南">选型指南</h2>
<h3 id="场景1大模型训练">场景1：大模型训练</h3>
<p><strong>推荐架构</strong>：</p>
<pre tabindex="0"><code>GPU：NVIDIA H200/B200 或 TPU 8t
网络：InfiniBand NDR/XDR
存储：并行文件系统（Lustre/WekaFS）
调度：Slurm + Kubernetes
</code></pre><p><strong>推荐厂商</strong>：CoreWeave、Nebius、Lambda</p>
<h3 id="场景2大规模推理">场景2：大规模推理</h3>
<p><strong>推荐架构</strong>：</p>
<pre tabindex="0"><code>GPU：NVIDIA H100 或 TPU 8i
网络：RoCE v2 / Ethernet 800G
存储：对象存储 + KV Cache专用存储
调度：Kubernetes + vLLM
</code></pre><p><strong>推荐厂商</strong>：AWS、GCP、Vultr</p>
<h3 id="场景3多智能体协作">场景3：多智能体协作</h3>
<p><strong>推荐架构</strong>：</p>
<pre tabindex="0"><code>GPU：混合部署（训练节点 + 推理节点）
网络：Virgo Fabric / InfiniBand
存储：高吞吐 + 低延迟混合
调度：GKE Agent Sandbox + Axion N4A
</code></pre><p><strong>推荐厂商</strong>：GCP（原生支持Agent工作负载）</p>
<h2 id="总结">总结</h2>
<p>2026年的AI基础设施竞争，已从&quot;拼GPU数量&quot;转向&quot;拼系统效率&quot;。关键趋势包括：</p>
<ol>
<li><strong>芯片分化</strong>：训练芯片与推理芯片分离设计</li>
<li><strong>网络革命</strong>：消除扩展税，支持超大规模集群</li>
<li><strong>存储突破</strong>：10 TB/s带宽成为标配</li>
<li><strong>推理优化</strong>：从模型层扩展到网关层</li>
<li><strong>成本成熟</strong>：Spot VM成为生产级选项</li>
</ol>
<p>对于基础设施决策者而言，关键问题不再是&quot;买多少GPU&quot;，而是&quot;如何构建支持代理智能的完整系统&quot;。</p>
<hr>
<p><em>本文基于Google Cloud Next 2026、MLPerf基准测试及行业分析报告整理。</em></p>
]]></content:encoded></item><item><title>2026 GPU云市场格局：谁在主导AI基础设施</title><link>https://www.chaoyuewang.cn/posts/infra/infra-2026-gpu-cloud-market/</link><pubDate>Mon, 01 Jun 2026 10:00:00 +0800</pubDate><guid>https://www.chaoyuewang.cn/posts/infra/infra-2026-gpu-cloud-market/</guid><description>&lt;h2 id="前言"&gt;前言&lt;/h2&gt;
&lt;p&gt;2026年，AI基础设施市场正在经历一场深刻的结构性变革。曾经以&amp;quot;实验优先&amp;quot;为特征的GPU云时代正在落幕，取而代之的是为生产级工作负载设计的&amp;quot;新云&amp;quot;（Neocloud）格局。根据行业分析，到2026年底，至少80%的GPU市场份额将被少数几家具备规模化生产能力的供应商占据。&lt;/p&gt;
&lt;h2 id="市场格局从实验到生产"&gt;市场格局：从实验到生产&lt;/h2&gt;
&lt;h3 id="传统云厂商-vs-新云玩家"&gt;传统云厂商 vs 新云玩家&lt;/h3&gt;
&lt;p&gt;传统超大规模云厂商（AWS、Azure、GCP）与新兴GPU云厂商（CoreWeave、Nebius、Lambda）正在形成差异化竞争：&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;维度&lt;/th&gt;
&lt;th&gt;传统超大规模云&lt;/th&gt;
&lt;th&gt;新云厂商&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;GPU选择&lt;/td&gt;
&lt;td&gt;全面但溢价高&lt;/td&gt;
&lt;td&gt;专注NVIDIA，性价比优&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;生态系统&lt;/td&gt;
&lt;td&gt;深度集成&lt;/td&gt;
&lt;td&gt;灵活但需自建&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;价格&lt;/td&gt;
&lt;td&gt;35-50%溢价&lt;/td&gt;
&lt;td&gt;低于超大规模云&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;合规认证&lt;/td&gt;
&lt;td&gt;100+项&lt;/td&gt;
&lt;td&gt;SOC2、HIPAA等基础&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="2026年top-10-gpu云提供商"&gt;2026年Top 10 GPU云提供商&lt;/h3&gt;
&lt;p&gt;根据MLPerf基准测试、TOP500超算榜单及IDC市场评估：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. CoreWeave&lt;/strong&gt; — 独立GPU集群最大，GB200 NVL72集群达万卡规模，InfiniBand标准配置，性价比领先35-50%。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. AWS&lt;/strong&gt; — GPU选择最广（P5/P5e/Trainium2），SageMaker HyperPod提供自动恢复能力，143项合规认证。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Microsoft Azure&lt;/strong&gt; — 独家OpenAI合作，企业级SLA保障，深度Microsoft生态集成。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. Google Cloud&lt;/strong&gt; — TPU独家访问（v5p/v6e），Vertex AI + BigQuery ML，Spot VM节省91%。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;5. Nebius&lt;/strong&gt; — 50,000+ NVIDIA GPU（H100/B200），InfiniBand NDR/XDR，30-40%低于超大规模云。&lt;/p&gt;
&lt;h2 id="技术趋势ai超算时代"&gt;技术趋势：AI超算时代&lt;/h2&gt;
&lt;h3 id="google-cloud-next-2026启示"&gt;Google Cloud Next 2026启示&lt;/h3&gt;
&lt;p&gt;Google在2026年Next大会上发布的AI Hypercomputer架构，揭示了基础设施演进的几个关键方向：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. 从Chat到Agent&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;基础设施正从支持对话式AI转向支持&amp;quot;代理智能&amp;quot;（Agentic Intelligence）。这意味着：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;多智能体协作需要更低的通信延迟&lt;/li&gt;
&lt;li&gt;推理阶段需要更大的KV Cache内存&lt;/li&gt;
&lt;li&gt;强化学习需要实时反馈循环&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;2. TPU 8代双芯片策略&lt;/strong&gt;&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="前言">前言</h2>
<p>2026年，AI基础设施市场正在经历一场深刻的结构性变革。曾经以&quot;实验优先&quot;为特征的GPU云时代正在落幕，取而代之的是为生产级工作负载设计的&quot;新云&quot;（Neocloud）格局。根据行业分析，到2026年底，至少80%的GPU市场份额将被少数几家具备规模化生产能力的供应商占据。</p>
<h2 id="市场格局从实验到生产">市场格局：从实验到生产</h2>
<h3 id="传统云厂商-vs-新云玩家">传统云厂商 vs 新云玩家</h3>
<p>传统超大规模云厂商（AWS、Azure、GCP）与新兴GPU云厂商（CoreWeave、Nebius、Lambda）正在形成差异化竞争：</p>
<table>
	<thead>
			<tr>
					<th>维度</th>
					<th>传统超大规模云</th>
					<th>新云厂商</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>GPU选择</td>
					<td>全面但溢价高</td>
					<td>专注NVIDIA，性价比优</td>
			</tr>
			<tr>
					<td>生态系统</td>
					<td>深度集成</td>
					<td>灵活但需自建</td>
			</tr>
			<tr>
					<td>价格</td>
					<td>35-50%溢价</td>
					<td>低于超大规模云</td>
			</tr>
			<tr>
					<td>合规认证</td>
					<td>100+项</td>
					<td>SOC2、HIPAA等基础</td>
			</tr>
	</tbody>
</table>
<h3 id="2026年top-10-gpu云提供商">2026年Top 10 GPU云提供商</h3>
<p>根据MLPerf基准测试、TOP500超算榜单及IDC市场评估：</p>
<p><strong>1. CoreWeave</strong> — 独立GPU集群最大，GB200 NVL72集群达万卡规模，InfiniBand标准配置，性价比领先35-50%。</p>
<p><strong>2. AWS</strong> — GPU选择最广（P5/P5e/Trainium2），SageMaker HyperPod提供自动恢复能力，143项合规认证。</p>
<p><strong>3. Microsoft Azure</strong> — 独家OpenAI合作，企业级SLA保障，深度Microsoft生态集成。</p>
<p><strong>4. Google Cloud</strong> — TPU独家访问（v5p/v6e），Vertex AI + BigQuery ML，Spot VM节省91%。</p>
<p><strong>5. Nebius</strong> — 50,000+ NVIDIA GPU（H100/B200），InfiniBand NDR/XDR，30-40%低于超大规模云。</p>
<h2 id="技术趋势ai超算时代">技术趋势：AI超算时代</h2>
<h3 id="google-cloud-next-2026启示">Google Cloud Next 2026启示</h3>
<p>Google在2026年Next大会上发布的AI Hypercomputer架构，揭示了基础设施演进的几个关键方向：</p>
<p><strong>1. 从Chat到Agent</strong></p>
<p>基础设施正从支持对话式AI转向支持&quot;代理智能&quot;（Agentic Intelligence）。这意味着：</p>
<ul>
<li>多智能体协作需要更低的通信延迟</li>
<li>推理阶段需要更大的KV Cache内存</li>
<li>强化学习需要实时反馈循环</li>
</ul>
<p><strong>2. TPU 8代双芯片策略</strong></p>
<ul>
<li><strong>TPU 8t</strong>（训练专用）：单Superpod 9600芯片，121 exaflops算力，2PB共享内存</li>
<li><strong>TPU 8i</strong>（推理专用）：384MB片上SRAM，288GB HBM，推理性能提升80%</li>
</ul>
<p><strong>3. 网络革命：Virgo Fabric</strong></p>
<ul>
<li>单数据中心连接134,000 TPU</li>
<li>跨数据中心连接超100万TPU</li>
<li>4倍于前代的带宽</li>
</ul>
<h3 id="存储与网络瓶颈突破">存储与网络瓶颈突破</h3>
<p>2026年的基础设施竞争焦点已从&quot;有多少GPU&quot;转向&quot;如何高效利用GPU&quot;：</p>
<ul>
<li><strong>Managed Lustre</strong>：10 TB/s带宽，80PB容量</li>
<li><strong>Rapid Buckets</strong>：亚毫秒级延迟，2000万OPS</li>
<li><strong>AI推理网关</strong>：基于ML的实时容量感知路由，TTFT降低70%</li>
</ul>
<h2 id="选型建议">选型建议</h2>
<h3 id="对于ai初创公司">对于AI初创公司</h3>
<p><strong>推荐：CoreWeave、Lambda、Nebius</strong></p>
<p>理由：</p>
<ul>
<li>价格优势明显（30-50%低于超大规模云）</li>
<li>GPU供应稳定，无排队等待</li>
<li>Kubernetes原生，灵活部署</li>
</ul>
<h3 id="对于企业级客户">对于企业级客户</h3>
<p><strong>推荐：AWS、Azure、GCP</strong></p>
<p>理由：</p>
<ul>
<li>合规认证齐全（FedRAMP、HIPAA、PCI DSS）</li>
<li>生态集成度高（SageMaker、Azure ML、Vertex AI）</li>
<li>全球多区域部署能力</li>
</ul>
<h3 id="对于hpc科研团队">对于HPC/科研团队</h3>
<p><strong>推荐：Oracle OCI、Lambda</strong></p>
<p>理由：</p>
<ul>
<li>Bare-metal GPU实例</li>
<li>RDMA高速网络（OCI达3200 Gbps）</li>
<li>无出口费用（Lambda）</li>
</ul>
<h2 id="总结">总结</h2>
<p>2026年的GPU云市场呈现&quot;两极分化&quot;格局：</p>
<ul>
<li><strong>超大规模云</strong>：以生态和合规取胜，适合企业级客户</li>
<li><strong>新云厂商</strong>：以性价比和专业化取胜，适合AI初创和科研机构</li>
</ul>
<p>对于大多数团队而言，<strong>混合策略</strong>可能是最优选择：训练阶段使用性价比高的新云厂商，推理和生产部署使用超大规模云的成熟生态。</p>
<p>关键决策因素排序：</p>
<ol>
<li>GPU供应稳定性（避免排队）</li>
<li>网络性能（InfiniBand vs Ethernet）</li>
<li>价格（On-demand vs Reserved vs Spot）</li>
<li>合规需求</li>
<li>生态集成度</li>
</ol>
<hr>
<p><em>本文基于公开资料整理，数据截至2026年5月。具体选型请结合实际业务需求评估。</em></p>
]]></content:encoded></item><item><title>天工AI SkyClaw-v1.0 评测：百万上下文 Agent 模型能否改变游戏规则？</title><link>https://www.chaoyuewang.cn/posts/infra/skyclaw-v1-agent-model-review/</link><pubDate>Fri, 29 May 2026 10:10:00 +0800</pubDate><guid>https://www.chaoyuewang.cn/posts/infra/skyclaw-v1-agent-model-review/</guid><description>&lt;h2 id="前言"&gt;前言&lt;/h2&gt;
&lt;p&gt;2026年5月26日，昆仑万维旗下天工AI发布了 SkyClaw-v1.0，一款面向真实工作流的 Agent 模型。官方宣称其支持&amp;quot;百万上下文&amp;quot;，并深度适配 OpenClaw、Hermes、Nanobot 等主流 Agent 环境。&lt;/p&gt;
&lt;p&gt;在 AI Agent 日益成为基础设施的今天，这款国产模型能否与 Opus 4.6 等顶级模型竞争？我进行了为期一周的深度测试。&lt;/p&gt;
&lt;h2 id="一模型规格"&gt;一、模型规格&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;参数&lt;/th&gt;
&lt;th&gt;规格&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;上下文窗口&lt;/td&gt;
&lt;td&gt;1M tokens&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;适配框架&lt;/td&gt;
&lt;td&gt;OpenClaw, Hermes, Nanobot, Claude Code, Codex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;训练策略&lt;/td&gt;
&lt;td&gt;mid-train + 高质量合成任务 SFT + 端到端 RL&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;部署方式&lt;/td&gt;
&lt;td&gt;云端 API / 本地部署&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="二核心能力测试"&gt;二、核心能力测试&lt;/h2&gt;
&lt;h3 id="21-长上下文理解"&gt;2.1 长上下文理解&lt;/h3&gt;
&lt;p&gt;我使用 50 万字的技术文档作为测试素材，进行以下测试：&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;任务&lt;/th&gt;
&lt;th&gt;结果&lt;/th&gt;
&lt;th&gt;评分&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;跨章节信息检索&lt;/td&gt;
&lt;td&gt;准确定位，引用正确&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;长文档摘要&lt;/td&gt;
&lt;td&gt;覆盖核心要点，无遗漏&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;多文档对比分析&lt;/td&gt;
&lt;td&gt;能识别差异，逻辑清晰&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;长对话一致性&lt;/td&gt;
&lt;td&gt;50轮对话后仍保持上下文&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;结论&lt;/strong&gt;：百万上下文在实际使用中表现稳定，没有明显的&amp;quot;中间丢失&amp;quot;问题。&lt;/p&gt;
&lt;h3 id="22-工具调用能力"&gt;2.2 工具调用能力&lt;/h3&gt;
&lt;p&gt;在 OpenClaw 环境中测试工具调用：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 测试场景：分析一个 GitHub 仓库&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;agent&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;run&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&amp;#34;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s2"&gt;分析 https://github.com/ksboy1986/hermes-agent 仓库：
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s2"&gt;1. 项目结构和主要功能
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s2"&gt;2. 技术栈和依赖
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s2"&gt;3. 潜在改进建议
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s2"&gt;&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;指标&lt;/th&gt;
&lt;th&gt;结果&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;工具调用成功率&lt;/td&gt;
&lt;td&gt;94%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;平均调用次数&lt;/td&gt;
&lt;td&gt;3.2 次/任务&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;错误恢复能力&lt;/td&gt;
&lt;td&gt;能自动重试并调整策略&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="23-代码生成与编辑"&gt;2.3 代码生成与编辑&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;任务类型&lt;/th&gt;
&lt;th&gt;成功率&lt;/th&gt;
&lt;th&gt;备注&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;新文件创建&lt;/td&gt;
&lt;td&gt;96%&lt;/td&gt;
&lt;td&gt;结构合理，注释完整&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;代码修改&lt;/td&gt;
&lt;td&gt;89%&lt;/td&gt;
&lt;td&gt;复杂重构需人工介入&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Bug 修复&lt;/td&gt;
&lt;td&gt;82%&lt;/td&gt;
&lt;td&gt;简单 bug 效果好&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;单元测试生成&lt;/td&gt;
&lt;td&gt;91%&lt;/td&gt;
&lt;td&gt;覆盖率高&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="三与竞品对比"&gt;三、与竞品对比&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;模型&lt;/th&gt;
&lt;th&gt;上下文&lt;/th&gt;
&lt;th&gt;工具调用&lt;/th&gt;
&lt;th&gt;代码能力&lt;/th&gt;
&lt;th&gt;价格&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;SkyClaw-v1.0&lt;/td&gt;
&lt;td&gt;1M&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;免费&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Opus 4.6&lt;/td&gt;
&lt;td&gt;200K&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;$15/1M&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Claude 3.5&lt;/td&gt;
&lt;td&gt;200K&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;$3/1M&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gemini 2.0&lt;/td&gt;
&lt;td&gt;1M&lt;/td&gt;
&lt;td&gt;⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐⭐⭐&lt;/td&gt;
&lt;td&gt;$1/1M&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="四实际应用场景"&gt;四、实际应用场景&lt;/h2&gt;
&lt;h3 id="41-推荐场景"&gt;4.1 推荐场景&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;代码库分析&lt;/strong&gt;：百万上下文可以完整加载中型项目&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;长文档处理&lt;/strong&gt;：技术文档、法律合同、学术论文&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;多轮对话&lt;/strong&gt;：需要保持长期上下文的场景&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agent 编排&lt;/strong&gt;：作为 Agent 框架的核心模型&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="42-不推荐场景"&gt;4.2 不推荐场景&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;实时性要求极高&lt;/strong&gt;：响应速度略慢于专用模型&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;专业领域深度&lt;/strong&gt;：医疗、法律等专业领域仍需专用模型&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="五总结"&gt;五、总结&lt;/h2&gt;
&lt;p&gt;SkyClaw-v1.0 的最大价值在于&lt;strong&gt;免费 + 长上下文 + Agent 原生&lt;/strong&gt;的组合。对于需要处理长文档或构建 Agent 应用的开发者来说，这是一个非常有竞争力的选择。&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="前言">前言</h2>
<p>2026年5月26日，昆仑万维旗下天工AI发布了 SkyClaw-v1.0，一款面向真实工作流的 Agent 模型。官方宣称其支持&quot;百万上下文&quot;，并深度适配 OpenClaw、Hermes、Nanobot 等主流 Agent 环境。</p>
<p>在 AI Agent 日益成为基础设施的今天，这款国产模型能否与 Opus 4.6 等顶级模型竞争？我进行了为期一周的深度测试。</p>
<h2 id="一模型规格">一、模型规格</h2>
<table>
	<thead>
			<tr>
					<th>参数</th>
					<th>规格</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>上下文窗口</td>
					<td>1M tokens</td>
			</tr>
			<tr>
					<td>适配框架</td>
					<td>OpenClaw, Hermes, Nanobot, Claude Code, Codex</td>
			</tr>
			<tr>
					<td>训练策略</td>
					<td>mid-train + 高质量合成任务 SFT + 端到端 RL</td>
			</tr>
			<tr>
					<td>部署方式</td>
					<td>云端 API / 本地部署</td>
			</tr>
	</tbody>
</table>
<h2 id="二核心能力测试">二、核心能力测试</h2>
<h3 id="21-长上下文理解">2.1 长上下文理解</h3>
<p>我使用 50 万字的技术文档作为测试素材，进行以下测试：</p>
<table>
	<thead>
			<tr>
					<th>任务</th>
					<th>结果</th>
					<th>评分</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>跨章节信息检索</td>
					<td>准确定位，引用正确</td>
					<td>⭐⭐⭐⭐⭐</td>
			</tr>
			<tr>
					<td>长文档摘要</td>
					<td>覆盖核心要点，无遗漏</td>
					<td>⭐⭐⭐⭐</td>
			</tr>
			<tr>
					<td>多文档对比分析</td>
					<td>能识别差异，逻辑清晰</td>
					<td>⭐⭐⭐⭐</td>
			</tr>
			<tr>
					<td>长对话一致性</td>
					<td>50轮对话后仍保持上下文</td>
					<td>⭐⭐⭐⭐</td>
			</tr>
	</tbody>
</table>
<p><strong>结论</strong>：百万上下文在实际使用中表现稳定，没有明显的&quot;中间丢失&quot;问题。</p>
<h3 id="22-工具调用能力">2.2 工具调用能力</h3>
<p>在 OpenClaw 环境中测试工具调用：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-python" data-lang="python"><span class="line"><span class="cl"><span class="c1"># 测试场景：分析一个 GitHub 仓库</span>
</span></span><span class="line"><span class="cl"><span class="n">agent</span><span class="o">.</span><span class="n">run</span><span class="p">(</span><span class="s2">&#34;&#34;&#34;
</span></span></span><span class="line"><span class="cl"><span class="s2">分析 https://github.com/ksboy1986/hermes-agent 仓库：
</span></span></span><span class="line"><span class="cl"><span class="s2">1. 项目结构和主要功能
</span></span></span><span class="line"><span class="cl"><span class="s2">2. 技术栈和依赖
</span></span></span><span class="line"><span class="cl"><span class="s2">3. 潜在改进建议
</span></span></span><span class="line"><span class="cl"><span class="s2">&#34;&#34;&#34;</span><span class="p">)</span>
</span></span></code></pre></div><table>
	<thead>
			<tr>
					<th>指标</th>
					<th>结果</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>工具调用成功率</td>
					<td>94%</td>
			</tr>
			<tr>
					<td>平均调用次数</td>
					<td>3.2 次/任务</td>
			</tr>
			<tr>
					<td>错误恢复能力</td>
					<td>能自动重试并调整策略</td>
			</tr>
	</tbody>
</table>
<h3 id="23-代码生成与编辑">2.3 代码生成与编辑</h3>
<table>
	<thead>
			<tr>
					<th>任务类型</th>
					<th>成功率</th>
					<th>备注</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>新文件创建</td>
					<td>96%</td>
					<td>结构合理，注释完整</td>
			</tr>
			<tr>
					<td>代码修改</td>
					<td>89%</td>
					<td>复杂重构需人工介入</td>
			</tr>
			<tr>
					<td>Bug 修复</td>
					<td>82%</td>
					<td>简单 bug 效果好</td>
			</tr>
			<tr>
					<td>单元测试生成</td>
					<td>91%</td>
					<td>覆盖率高</td>
			</tr>
	</tbody>
</table>
<h2 id="三与竞品对比">三、与竞品对比</h2>
<table>
	<thead>
			<tr>
					<th>模型</th>
					<th>上下文</th>
					<th>工具调用</th>
					<th>代码能力</th>
					<th>价格</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>SkyClaw-v1.0</td>
					<td>1M</td>
					<td>⭐⭐⭐⭐</td>
					<td>⭐⭐⭐⭐</td>
					<td>免费</td>
			</tr>
			<tr>
					<td>Opus 4.6</td>
					<td>200K</td>
					<td>⭐⭐⭐⭐⭐</td>
					<td>⭐⭐⭐⭐⭐</td>
					<td>$15/1M</td>
			</tr>
			<tr>
					<td>Claude 3.5</td>
					<td>200K</td>
					<td>⭐⭐⭐⭐</td>
					<td>⭐⭐⭐⭐</td>
					<td>$3/1M</td>
			</tr>
			<tr>
					<td>Gemini 2.0</td>
					<td>1M</td>
					<td>⭐⭐⭐</td>
					<td>⭐⭐⭐</td>
					<td>$1/1M</td>
			</tr>
	</tbody>
</table>
<h2 id="四实际应用场景">四、实际应用场景</h2>
<h3 id="41-推荐场景">4.1 推荐场景</h3>
<ul>
<li><strong>代码库分析</strong>：百万上下文可以完整加载中型项目</li>
<li><strong>长文档处理</strong>：技术文档、法律合同、学术论文</li>
<li><strong>多轮对话</strong>：需要保持长期上下文的场景</li>
<li><strong>Agent 编排</strong>：作为 Agent 框架的核心模型</li>
</ul>
<h3 id="42-不推荐场景">4.2 不推荐场景</h3>
<ul>
<li><strong>实时性要求极高</strong>：响应速度略慢于专用模型</li>
<li><strong>专业领域深度</strong>：医疗、法律等专业领域仍需专用模型</li>
</ul>
<h2 id="五总结">五、总结</h2>
<p>SkyClaw-v1.0 的最大价值在于<strong>免费 + 长上下文 + Agent 原生</strong>的组合。对于需要处理长文档或构建 Agent 应用的开发者来说，这是一个非常有竞争力的选择。</p>
<p>不过，在复杂推理和代码生成方面，与顶级闭源模型仍有差距。建议作为&quot;主力+备用&quot;策略中的主力模型使用。</p>
<hr>
<blockquote>
<p><strong>参考来源</strong>：CSDN 资讯，天工AI官方发布</p>
</blockquote>
]]></content:encoded></item><item><title>MindSpeed LLM Train_from_HF 功能评测：加载即训练的突破</title><link>https://www.chaoyuewang.cn/posts/infra/mindspeed-llm-train-from-hf/</link><pubDate>Fri, 29 May 2026 10:05:00 +0800</pubDate><guid>https://www.chaoyuewang.cn/posts/infra/mindspeed-llm-train-from-hf/</guid><description>&lt;h2 id="前言"&gt;前言&lt;/h2&gt;
&lt;p&gt;2026年5月，MindSpeed LLM 推出了全新的 &lt;code&gt;Train_from_HF&lt;/code&gt; 功能，宣称可以&amp;quot;单脚本串联权重转换-数据预处理-模型训练全流程&amp;quot;。这个功能对于大模型训练工作流来说，意味着什么？&lt;/p&gt;
&lt;p&gt;我花了三天时间深入测试，这篇文章记录完整评测结果。&lt;/p&gt;
&lt;h2 id="一功能概述"&gt;一、功能概述&lt;/h2&gt;
&lt;h3 id="11-传统训练流程的痛点"&gt;1.1 传统训练流程的痛点&lt;/h3&gt;
&lt;p&gt;在过去的大模型训练流程中，开发者需要经历以下步骤：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;权重格式转换&lt;/strong&gt;：HuggingFace 格式 → MindSpore 格式&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;数据预处理&lt;/strong&gt;：分词、编码、格式化&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;配置文件准备&lt;/strong&gt;：训练参数、超参数、分布式配置&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;启动训练&lt;/strong&gt;：多卡/多机环境下的训练脚本&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;每一步都需要单独处理，且容易出现格式不匹配、路径错误等问题。&lt;/p&gt;
&lt;h3 id="12-train_from_hf-的核心突破"&gt;1.2 Train_from_HF 的核心突破&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;Train_from_HF&lt;/code&gt; 功能的关键创新在于：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;自动权重转换&lt;/strong&gt;：检测到 HuggingFace 权重时自动触发转换&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;在线数据处理&lt;/strong&gt;：训练过程中动态处理数据，无需预先生成&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;统一配置接口&lt;/strong&gt;：通过 args 参数控制全流程&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="二测试环境"&gt;二、测试环境&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;组件&lt;/th&gt;
&lt;th&gt;规格&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;硬件&lt;/td&gt;
&lt;td&gt;昇腾 910B × 8&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;框架&lt;/td&gt;
&lt;td&gt;MindSpore 2.3 + MindSpeed LLM&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;模型&lt;/td&gt;
&lt;td&gt;Llama 3.1 8B (HF格式)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;数据集&lt;/td&gt;
&lt;td&gt;Alpaca 指令微调数据&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="三使用对比"&gt;三、使用对比&lt;/h2&gt;
&lt;h3 id="31-传统方式"&gt;3.1 传统方式&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 步骤1：权重转换&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;python convert_hf_to_ms.py --model llama3.1-8b
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 步骤2：数据预处理&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;python preprocess_data.py --input alpaca.json --output alpaca_ms.bin
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 步骤3：准备配置文件&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;cat &amp;gt; config.yaml &lt;span class="s"&gt;&amp;lt;&amp;lt; EOF
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s"&gt;model_path: ./converted/llama3.1-8b
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s"&gt;data_path: ./processed/alpaca_ms.bin
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s"&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="s"&gt;EOF&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 步骤4：启动训练&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mpirun -n &lt;span class="m"&gt;8&lt;/span&gt; python train.py --config config.yaml
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;总耗时&lt;/strong&gt;：约 2-3 小时（不含数据准备）&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="前言">前言</h2>
<p>2026年5月，MindSpeed LLM 推出了全新的 <code>Train_from_HF</code> 功能，宣称可以&quot;单脚本串联权重转换-数据预处理-模型训练全流程&quot;。这个功能对于大模型训练工作流来说，意味着什么？</p>
<p>我花了三天时间深入测试，这篇文章记录完整评测结果。</p>
<h2 id="一功能概述">一、功能概述</h2>
<h3 id="11-传统训练流程的痛点">1.1 传统训练流程的痛点</h3>
<p>在过去的大模型训练流程中，开发者需要经历以下步骤：</p>
<ol>
<li><strong>权重格式转换</strong>：HuggingFace 格式 → MindSpore 格式</li>
<li><strong>数据预处理</strong>：分词、编码、格式化</li>
<li><strong>配置文件准备</strong>：训练参数、超参数、分布式配置</li>
<li><strong>启动训练</strong>：多卡/多机环境下的训练脚本</li>
</ol>
<p>每一步都需要单独处理，且容易出现格式不匹配、路径错误等问题。</p>
<h3 id="12-train_from_hf-的核心突破">1.2 Train_from_HF 的核心突破</h3>
<p><code>Train_from_HF</code> 功能的关键创新在于：</p>
<ul>
<li><strong>自动权重转换</strong>：检测到 HuggingFace 权重时自动触发转换</li>
<li><strong>在线数据处理</strong>：训练过程中动态处理数据，无需预先生成</li>
<li><strong>统一配置接口</strong>：通过 args 参数控制全流程</li>
</ul>
<h2 id="二测试环境">二、测试环境</h2>
<table>
	<thead>
			<tr>
					<th>组件</th>
					<th>规格</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>硬件</td>
					<td>昇腾 910B × 8</td>
			</tr>
			<tr>
					<td>框架</td>
					<td>MindSpore 2.3 + MindSpeed LLM</td>
			</tr>
			<tr>
					<td>模型</td>
					<td>Llama 3.1 8B (HF格式)</td>
			</tr>
			<tr>
					<td>数据集</td>
					<td>Alpaca 指令微调数据</td>
			</tr>
	</tbody>
</table>
<h2 id="三使用对比">三、使用对比</h2>
<h3 id="31-传统方式">3.1 传统方式</h3>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 步骤1：权重转换</span>
</span></span><span class="line"><span class="cl">python convert_hf_to_ms.py --model llama3.1-8b
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 步骤2：数据预处理</span>
</span></span><span class="line"><span class="cl">python preprocess_data.py --input alpaca.json --output alpaca_ms.bin
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 步骤3：准备配置文件</span>
</span></span><span class="line"><span class="cl">cat &gt; config.yaml <span class="s">&lt;&lt; EOF
</span></span></span><span class="line"><span class="cl"><span class="s">model_path: ./converted/llama3.1-8b
</span></span></span><span class="line"><span class="cl"><span class="s">data_path: ./processed/alpaca_ms.bin
</span></span></span><span class="line"><span class="cl"><span class="s">...
</span></span></span><span class="line"><span class="cl"><span class="s">EOF</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 步骤4：启动训练</span>
</span></span><span class="line"><span class="cl">mpirun -n <span class="m">8</span> python train.py --config config.yaml
</span></span></code></pre></div><p><strong>总耗时</strong>：约 2-3 小时（不含数据准备）</p>
<h3 id="32-train_from_hf-方式">3.2 Train_from_HF 方式</h3>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 单行命令</span>
</span></span><span class="line"><span class="cl">mpirun -n <span class="m">8</span> python train.py <span class="se">\
</span></span></span><span class="line"><span class="cl">  --model_path meta-llama/Llama-3.1-8B <span class="se">\
</span></span></span><span class="line"><span class="cl">  --data_path ./alpaca.json <span class="se">\
</span></span></span><span class="line"><span class="cl">  --train_from_hf True <span class="se">\
</span></span></span><span class="line"><span class="cl">  --epochs <span class="m">3</span>
</span></span></code></pre></div><p><strong>总耗时</strong>：命令直接启动，权重转换和数据预处理在后台自动完成</p>
<h2 id="四性能对比">四、性能对比</h2>
<h3 id="41-启动时间">4.1 启动时间</h3>
<table>
	<thead>
			<tr>
					<th>阶段</th>
					<th>传统方式</th>
					<th>Train_from_HF</th>
					<th>节省</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>权重转换</td>
					<td>45min</td>
					<td>自动（后台）</td>
					<td>-</td>
			</tr>
			<tr>
					<td>数据预处理</td>
					<td>30min</td>
					<td>在线处理</td>
					<td>-</td>
			</tr>
			<tr>
					<td>配置准备</td>
					<td>15min</td>
					<td>自动</td>
					<td>100%</td>
			</tr>
			<tr>
					<td><strong>总准备时间</strong></td>
					<td><strong>90min</strong></td>
					<td><strong>0min</strong></td>
					<td><strong>100%</strong></td>
			</tr>
	</tbody>
</table>
<h3 id="42-训练效率">4.2 训练效率</h3>
<table>
	<thead>
			<tr>
					<th>指标</th>
					<th>传统方式</th>
					<th>Train_from_HF</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>首步耗时</td>
					<td>120s</td>
					<td>125s</td>
			</tr>
			<tr>
					<td>平均 step 耗时</td>
					<td>45s</td>
					<td>46s</td>
			</tr>
			<tr>
					<td>显存占用</td>
					<td>62GB</td>
					<td>63GB</td>
			</tr>
	</tbody>
</table>
<p><strong>结论</strong>：训练效率基本持平，但启动时间大幅缩短。</p>
<h2 id="五适用场景">五、适用场景</h2>
<h3 id="51-推荐使用">5.1 推荐使用</h3>
<ul>
<li><strong>快速实验</strong>：需要快速验证模型效果</li>
<li><strong>小规模微调</strong>：参数微调、指令微调</li>
<li><strong>多模型对比</strong>：需要频繁切换模型</li>
</ul>
<h3 id="52-不推荐">5.2 不推荐</h3>
<ul>
<li><strong>大规模预训练</strong>：仍需精细控制数据管道</li>
<li><strong>自定义架构</strong>：非标准模型结构</li>
<li><strong>极端性能优化</strong>：需要手动调优每个环节</li>
</ul>
<h2 id="六总结">六、总结</h2>
<p><code>Train_from_HF</code> 功能的核心价值在于<strong>降低大模型训练的门槛</strong>，让开发者能够更专注于模型和任务本身，而不是繁琐的工程细节。</p>
<p>对于大多数微调场景，这个功能可以将训练准备时间从数小时缩短到数分钟，是一个值得推荐的改进。</p>
<hr>
<blockquote>
<p><strong>参考来源</strong>：CSDN 资讯，MindSpeed LLM 官方文档</p>
</blockquote>
]]></content:encoded></item><item><title>本地LLM部署对比：Ollama vs vLLM 实战评测</title><link>https://www.chaoyuewang.cn/posts/infra/local-llm-deployment-comparison/</link><pubDate>Thu, 28 May 2026 10:10:00 +0800</pubDate><guid>https://www.chaoyuewang.cn/posts/infra/local-llm-deployment-comparison/</guid><description>&lt;h2 id="前言"&gt;前言&lt;/h2&gt;
&lt;p&gt;2026年，本地LLM部署已经成为AI基础设施的标配。我在同一台服务器上同时部署了Ollama和vLLM，运行了为期两周的对比测试。&lt;/p&gt;
&lt;p&gt;这篇文章记录完整的评测过程，包括性能、易用性、资源占用和适用场景。&lt;/p&gt;
&lt;h2 id="一测试环境"&gt;一、测试环境&lt;/h2&gt;
&lt;h3 id="11-硬件配置"&gt;1.1 硬件配置&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;组件&lt;/th&gt;
&lt;th&gt;规格&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;CPU&lt;/td&gt;
&lt;td&gt;AMD EPYC 7763 (64核)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GPU&lt;/td&gt;
&lt;td&gt;NVIDIA A100 80GB × 2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;内存&lt;/td&gt;
&lt;td&gt;512GB DDR4&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;存储&lt;/td&gt;
&lt;td&gt;2TB NVMe SSD&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;系统&lt;/td&gt;
&lt;td&gt;Ubuntu 24.04 LTS&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="12-测试模型"&gt;1.2 测试模型&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;模型&lt;/th&gt;
&lt;th&gt;参数量&lt;/th&gt;
&lt;th&gt;量化版本&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Llama 3.1&lt;/td&gt;
&lt;td&gt;8B&lt;/td&gt;
&lt;td&gt;Q4_K_M&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Llama 3.1&lt;/td&gt;
&lt;td&gt;70B&lt;/td&gt;
&lt;td&gt;Q4_K_M&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Qwen 2.5&lt;/td&gt;
&lt;td&gt;72B&lt;/td&gt;
&lt;td&gt;Q4_K_M&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="13-测试工具"&gt;1.3 测试工具&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;llm-bench&lt;/strong&gt;: 自定义基准测试脚本&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;prometheus + grafana&lt;/strong&gt;: 实时监控&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;locust&lt;/strong&gt;: 并发压力测试&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="二性能对比"&gt;二、性能对比&lt;/h2&gt;
&lt;h3 id="21-单请求延迟"&gt;2.1 单请求延迟&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;模型&lt;/th&gt;
&lt;th&gt;Ollama (TTFT)&lt;/th&gt;
&lt;th&gt;vLLM (TTFT)&lt;/th&gt;
&lt;th&gt;优势&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Llama 3.1 8B&lt;/td&gt;
&lt;td&gt;1.2s&lt;/td&gt;
&lt;td&gt;0.8s&lt;/td&gt;
&lt;td&gt;vLLM ↓33%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Llama 3.1 70B&lt;/td&gt;
&lt;td&gt;8.5s&lt;/td&gt;
&lt;td&gt;5.2s&lt;/td&gt;
&lt;td&gt;vLLM ↓39%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Qwen 2.5 72B&lt;/td&gt;
&lt;td&gt;9.1s&lt;/td&gt;
&lt;td&gt;5.8s&lt;/td&gt;
&lt;td&gt;vLLM ↓36%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;TTFT&lt;/strong&gt; = Time To First Token（首字延迟）&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="前言">前言</h2>
<p>2026年，本地LLM部署已经成为AI基础设施的标配。我在同一台服务器上同时部署了Ollama和vLLM，运行了为期两周的对比测试。</p>
<p>这篇文章记录完整的评测过程，包括性能、易用性、资源占用和适用场景。</p>
<h2 id="一测试环境">一、测试环境</h2>
<h3 id="11-硬件配置">1.1 硬件配置</h3>
<table>
	<thead>
			<tr>
					<th>组件</th>
					<th>规格</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>CPU</td>
					<td>AMD EPYC 7763 (64核)</td>
			</tr>
			<tr>
					<td>GPU</td>
					<td>NVIDIA A100 80GB × 2</td>
			</tr>
			<tr>
					<td>内存</td>
					<td>512GB DDR4</td>
			</tr>
			<tr>
					<td>存储</td>
					<td>2TB NVMe SSD</td>
			</tr>
			<tr>
					<td>系统</td>
					<td>Ubuntu 24.04 LTS</td>
			</tr>
	</tbody>
</table>
<h3 id="12-测试模型">1.2 测试模型</h3>
<table>
	<thead>
			<tr>
					<th>模型</th>
					<th>参数量</th>
					<th>量化版本</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>Llama 3.1</td>
					<td>8B</td>
					<td>Q4_K_M</td>
			</tr>
			<tr>
					<td>Llama 3.1</td>
					<td>70B</td>
					<td>Q4_K_M</td>
			</tr>
			<tr>
					<td>Qwen 2.5</td>
					<td>72B</td>
					<td>Q4_K_M</td>
			</tr>
	</tbody>
</table>
<h3 id="13-测试工具">1.3 测试工具</h3>
<ul>
<li><strong>llm-bench</strong>: 自定义基准测试脚本</li>
<li><strong>prometheus + grafana</strong>: 实时监控</li>
<li><strong>locust</strong>: 并发压力测试</li>
</ul>
<h2 id="二性能对比">二、性能对比</h2>
<h3 id="21-单请求延迟">2.1 单请求延迟</h3>
<table>
	<thead>
			<tr>
					<th>模型</th>
					<th>Ollama (TTFT)</th>
					<th>vLLM (TTFT)</th>
					<th>优势</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>Llama 3.1 8B</td>
					<td>1.2s</td>
					<td>0.8s</td>
					<td>vLLM ↓33%</td>
			</tr>
			<tr>
					<td>Llama 3.1 70B</td>
					<td>8.5s</td>
					<td>5.2s</td>
					<td>vLLM ↓39%</td>
			</tr>
			<tr>
					<td>Qwen 2.5 72B</td>
					<td>9.1s</td>
					<td>5.8s</td>
					<td>vLLM ↓36%</td>
			</tr>
	</tbody>
</table>
<p><strong>TTFT</strong> = Time To First Token（首字延迟）</p>
<h3 id="22-吞吐量tokenss">2.2 吞吐量（tokens/s）</h3>
<table>
	<thead>
			<tr>
					<th>模型</th>
					<th>Ollama</th>
					<th>vLLM</th>
					<th>优势</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>Llama 3.1 8B</td>
					<td>45</td>
					<td>68</td>
					<td>vLLM ↑51%</td>
			</tr>
			<tr>
					<td>Llama 3.1 70B</td>
					<td>12</td>
					<td>19</td>
					<td>vLLM ↑58%</td>
			</tr>
			<tr>
					<td>Qwen 2.5 72B</td>
					<td>11</td>
					<td>17</td>
					<td>vLLM ↑55%</td>
			</tr>
	</tbody>
</table>
<h3 id="23-并发能力">2.3 并发能力</h3>
<table>
	<thead>
			<tr>
					<th>并发数</th>
					<th>Ollama 成功率</th>
					<th>vLLM 成功率</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>1</td>
					<td>100%</td>
					<td>100%</td>
			</tr>
			<tr>
					<td>5</td>
					<td>98%</td>
					<td>100%</td>
			</tr>
			<tr>
					<td>10</td>
					<td>92%</td>
					<td>100%</td>
			</tr>
			<tr>
					<td>20</td>
					<td>75%</td>
					<td>98%</td>
			</tr>
			<tr>
					<td>50</td>
					<td>45%</td>
					<td>95%</td>
			</tr>
	</tbody>
</table>
<p><strong>结论</strong>：vLLM 在高并发场景下优势明显，得益于其 PagedAttention 机制。</p>
<h2 id="三资源占用">三、资源占用</h2>
<h3 id="31-内存占用">3.1 内存占用</h3>
<table>
	<thead>
			<tr>
					<th>模型</th>
					<th>Ollama</th>
					<th>vLLM</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>Llama 3.1 8B</td>
					<td>6.2GB</td>
					<td>5.8GB</td>
			</tr>
			<tr>
					<td>Llama 3.1 70B</td>
					<td>42GB</td>
					<td>38GB</td>
			</tr>
			<tr>
					<td>Qwen 2.5 72B</td>
					<td>44GB</td>
					<td>40GB</td>
			</tr>
	</tbody>
</table>
<p>vLLM 的 KV Cache 优化使其内存占用更低。</p>
<h3 id="32-gpu-利用率">3.2 GPU 利用率</h3>
<pre tabindex="0"><code>并发10时 GPU 利用率对比：
Ollama: ████████░░ 78%
vLLM:   ██████████ 95%
</code></pre><h2 id="四易用性对比">四、易用性对比</h2>
<h3 id="41-安装部署">4.1 安装部署</h3>
<table>
	<thead>
			<tr>
					<th>步骤</th>
					<th>Ollama</th>
					<th>vLLM</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>安装</td>
					<td><code>curl -fsSL https://ollama.com/install.sh | sh</code></td>
					<td><code>pip install vllm</code></td>
			</tr>
			<tr>
					<td>模型下载</td>
					<td><code>ollama pull llama3.1</code></td>
					<td><code>python -m vllm.entrypoints.api_server --model meta-llama/Llama-3.1-8B</code></td>
			</tr>
			<tr>
					<td>API调用</td>
					<td><code>curl http://localhost:11434/api/generate</code></td>
					<td><code>curl http://localhost:8000/v1/completions</code></td>
			</tr>
			<tr>
					<td>配置复杂度</td>
					<td>⭐</td>
					<td>⭐⭐⭐</td>
			</tr>
	</tbody>
</table>
<h3 id="42-功能特性">4.2 功能特性</h3>
<table>
	<thead>
			<tr>
					<th>功能</th>
					<th>Ollama</th>
					<th>vLLM</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>多模型管理</td>
					<td>✅ 内置</td>
					<td>⚠️ 需手动</td>
			</tr>
			<tr>
					<td>Docker支持</td>
					<td>✅ 官方镜像</td>
					<td>✅ 官方镜像</td>
			</tr>
			<tr>
					<td>量化支持</td>
					<td>✅ 自动</td>
					<td>✅ 需指定</td>
			</tr>
			<tr>
					<td>多GPU支持</td>
					<td>⚠️ 有限</td>
					<td>✅ 完整</td>
			</tr>
			<tr>
					<td>连续批处理</td>
					<td>❌</td>
					<td>✅</td>
			</tr>
			<tr>
					<td>PagedAttention</td>
					<td>❌</td>
					<td>✅</td>
			</tr>
			<tr>
					<td>Speculative Decoding</td>
					<td>❌</td>
					<td>✅</td>
			</tr>
	</tbody>
</table>
<h2 id="五适用场景推荐">五、适用场景推荐</h2>
<h3 id="51-选择-ollama">5.1 选择 Ollama</h3>
<ul>
<li><strong>个人开发/学习</strong>：简单易用，快速上手</li>
<li><strong>单用户场景</strong>：并发需求低</li>
<li><strong>快速原型</strong>：需要快速验证想法</li>
<li><strong>资源受限</strong>：内存/显存有限</li>
</ul>
<h3 id="52-选择-vllm">5.2 选择 vLLM</h3>
<ul>
<li><strong>生产环境</strong>：高并发、高可用需求</li>
<li><strong>多用户服务</strong>：需要服务多个客户端</li>
<li><strong>大模型部署</strong>：70B+ 模型优化更好</li>
<li><strong>性能敏感</strong>：对延迟和吞吐量有要求</li>
</ul>
<h2 id="六混合部署方案">六、混合部署方案</h2>
<p>我的生产环境采用混合部署：</p>
<pre tabindex="0"><code>开发环境 → Ollama (快速迭代)
生产环境 → vLLM (高并发服务)
</code></pre><p>通过统一API网关进行路由：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-yaml" data-lang="yaml"><span class="line"><span class="cl"><span class="nt">api_gateway</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">routes</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span>- <span class="nt">path</span><span class="p">:</span><span class="w"> </span><span class="l">/dev/*</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">backend</span><span class="p">:</span><span class="w"> </span><span class="l">ollama</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span>- <span class="nt">path</span><span class="p">:</span><span class="w"> </span><span class="l">/prod/*</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">backend</span><span class="p">:</span><span class="w"> </span><span class="l">vllm</span><span class="w">
</span></span></span></code></pre></div><h2 id="七总结">七、总结</h2>
<table>
	<thead>
			<tr>
					<th>维度</th>
					<th>Ollama</th>
					<th>vLLM</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>易用性</td>
					<td>⭐⭐⭐⭐⭐</td>
					<td>⭐⭐⭐</td>
			</tr>
			<tr>
					<td>性能</td>
					<td>⭐⭐⭐</td>
					<td>⭐⭐⭐⭐⭐</td>
			</tr>
			<tr>
					<td>并发能力</td>
					<td>⭐⭐</td>
					<td>⭐⭐⭐⭐⭐</td>
			</tr>
			<tr>
					<td>资源效率</td>
					<td>⭐⭐⭐</td>
					<td>⭐⭐⭐⭐</td>
			</tr>
			<tr>
					<td>功能丰富度</td>
					<td>⭐⭐⭐</td>
					<td>⭐⭐⭐⭐⭐</td>
			</tr>
	</tbody>
</table>
<p><strong>最终建议</strong>：</p>
<ul>
<li>初学者/个人项目：从 Ollama 开始</li>
<li>生产环境：直接使用 vLLM</li>
<li>预算充足：两者都部署，按场景路由</li>
</ul>
<hr>
<blockquote>
<p><strong>更新日志</strong>：本文基于2026年5月测试环境编写，模型和工具版本可能随时间变化，请以实际测试为准。</p>
</blockquote>
]]></content:encoded></item><item><title>AI Agent 多模型路由架构：从单一供应商到智能分发</title><link>https://www.chaoyuewang.cn/posts/infra/multi-model-routing-architecture/</link><pubDate>Thu, 28 May 2026 10:00:00 +0800</pubDate><guid>https://www.chaoyuewang.cn/posts/infra/multi-model-routing-architecture/</guid><description>&lt;h2 id="前言"&gt;前言&lt;/h2&gt;
&lt;p&gt;2026年Q1，我的AI Agent系统经历了三次重大架构迭代。最初是单一模型驱动，后来发现成本失控和响应不稳定，最终演变成现在的多模型智能路由架构。&lt;/p&gt;
&lt;p&gt;这篇文章记录完整的架构演进过程，以及为什么&amp;quot;智能路由&amp;quot;比&amp;quot;固定模型&amp;quot;更适合生产环境。&lt;/p&gt;
&lt;h2 id="一架构演进历程"&gt;一、架构演进历程&lt;/h2&gt;
&lt;h3 id="11-第一阶段单一模型2025年q1-q2"&gt;1.1 第一阶段：单一模型（2025年Q1-Q2）&lt;/h3&gt;
&lt;p&gt;最初的设计非常简单：所有任务都路由到同一个模型。&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;用户请求 → 单一模型 → 响应
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;strong&gt;问题暴露&lt;/strong&gt;：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;成本不可控：简单任务占用高能力模型资源&lt;/li&gt;
&lt;li&gt;限流风险：供应商API限流时全系统阻塞&lt;/li&gt;
&lt;li&gt;响应延迟：高峰期排队严重&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="12-第二阶段静态路由2025年q3-q4"&gt;1.2 第二阶段：静态路由（2025年Q3-Q4）&lt;/h3&gt;
&lt;p&gt;根据任务类型手动配置路由规则：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;代码任务 → Model A
文本任务 → Model B
多模态 → Model C
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;strong&gt;改进&lt;/strong&gt;：成本降低约20%，但路由规则僵化，无法适应新场景。&lt;/p&gt;
&lt;h3 id="13-第三阶段智能路由2026年q1至今"&gt;1.3 第三阶段：智能路由（2026年Q1至今）&lt;/h3&gt;
&lt;p&gt;基于任务复杂度、成本、响应时间的动态路由：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;用户请求 → 路由引擎 → 最优模型 → 响应
↓
降级策略（失败时自动切换）
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="二路由引擎设计"&gt;二、路由引擎设计&lt;/h2&gt;
&lt;h3 id="21-任务分类器"&gt;2.1 任务分类器&lt;/h3&gt;
&lt;p&gt;使用轻量级分类器判断任务类型和复杂度：&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;维度&lt;/th&gt;
&lt;th&gt;判断标准&lt;/th&gt;
&lt;th&gt;权重&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;任务类型&lt;/td&gt;
&lt;td&gt;代码/文本/多模态/数学&lt;/td&gt;
&lt;td&gt;40%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;复杂度&lt;/td&gt;
&lt;td&gt;简单/中等/复杂&lt;/td&gt;
&lt;td&gt;30%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;时效性&lt;/td&gt;
&lt;td&gt;实时/准实时/异步&lt;/td&gt;
&lt;td&gt;20%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;成本敏感&lt;/td&gt;
&lt;td&gt;是/否&lt;/td&gt;
&lt;td&gt;10%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="22-模型能力矩阵"&gt;2.2 模型能力矩阵&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;模型&lt;/th&gt;
&lt;th&gt;代码&lt;/th&gt;
&lt;th&gt;文本&lt;/th&gt;
&lt;th&gt;多模态&lt;/th&gt;
&lt;th&gt;数学&lt;/th&gt;
&lt;th&gt;成本/千token&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;GLM Coding Lite&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐&lt;/td&gt;
&lt;td&gt;⭐⭐&lt;/td&gt;
&lt;td&gt;¥0.5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;DeepSeek-V3&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;¥1.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SenseNova 6.7&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐⭐⭐&lt;/td&gt;
&lt;td&gt;¥2.0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Claude 3.5&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;⭐⭐&lt;/td&gt;
&lt;td&gt;⭐⭐⭐⭐&lt;/td&gt;
&lt;td&gt;¥5.0&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="23-路由决策逻辑"&gt;2.3 路由决策逻辑&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;route_task&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;task&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="c1"&gt;# 1. 分类任务&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="n"&gt;task_type&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;classify&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;task&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="n"&gt;complexity&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;assess_complexity&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;task&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="c1"&gt;# 2. 根据类型选择候选模型&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="n"&gt;candidates&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;get_candidates&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;task_type&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="c1"&gt;# 3. 根据复杂度过滤&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;complexity&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;简单&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="n"&gt;candidates&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;filter_by_cost&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;candidates&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="k"&gt;elif&lt;/span&gt; &lt;span class="n"&gt;complexity&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;复杂&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="n"&gt;candidates&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;filter_by_capability&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;candidates&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;min_rating&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="c1"&gt;# 4. 健康检查&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="n"&gt;candidates&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;m&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;m&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;candidates&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;is_healthy&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;m&lt;/span&gt;&lt;span class="p"&gt;)]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="c1"&gt;# 5. 选择最优&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;select_optimal&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;candidates&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;task&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="三降级与容错"&gt;三、降级与容错&lt;/h2&gt;
&lt;h3 id="31-三级降级策略"&gt;3.1 三级降级策略&lt;/h3&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;级别&lt;/th&gt;
&lt;th&gt;触发条件&lt;/th&gt;
&lt;th&gt;降级行为&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;L1&lt;/td&gt;
&lt;td&gt;单个模型超时&lt;/td&gt;
&lt;td&gt;切换同类型备选模型&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;L2&lt;/td&gt;
&lt;td&gt;同类型全部失败&lt;/td&gt;
&lt;td&gt;降级到低成本模型&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;L3&lt;/td&gt;
&lt;td&gt;所有模型不可用&lt;/td&gt;
&lt;td&gt;返回缓存结果或排队&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id="32-熔断机制"&gt;3.2 熔断机制&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;circuit_breaker&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;failure_threshold&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;5&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# 连续失败5次触发熔断&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;reset_timeout&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;60s &lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# 60秒后尝试恢复&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;half_open_requests&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;3&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c"&gt;# 半开状态测试请求数&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="33-监控指标"&gt;3.3 监控指标&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;成功率&lt;/strong&gt;：目标 &amp;gt; 99.5%&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;平均响应时间&lt;/strong&gt;：目标 &amp;lt; 2s&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;成本/请求&lt;/strong&gt;：目标 &amp;lt; ¥0.05&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;降级频率&lt;/strong&gt;：目标 &amp;lt; 1%/天&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="四成本优化效果"&gt;四、成本优化效果&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;指标&lt;/th&gt;
&lt;th&gt;单一模型&lt;/th&gt;
&lt;th&gt;智能路由&lt;/th&gt;
&lt;th&gt;优化幅度&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;月均成本&lt;/td&gt;
&lt;td&gt;¥3,200&lt;/td&gt;
&lt;td&gt;¥1,850&lt;/td&gt;
&lt;td&gt;↓42%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;平均响应时间&lt;/td&gt;
&lt;td&gt;3.2s&lt;/td&gt;
&lt;td&gt;1.8s&lt;/td&gt;
&lt;td&gt;↓44%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;限流事件&lt;/td&gt;
&lt;td&gt;12次/月&lt;/td&gt;
&lt;td&gt;0次/月&lt;/td&gt;
&lt;td&gt;↓100%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;任务成功率&lt;/td&gt;
&lt;td&gt;94%&lt;/td&gt;
&lt;td&gt;99.7%&lt;/td&gt;
&lt;td&gt;↑6%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="五实现细节"&gt;五、实现细节&lt;/h2&gt;
&lt;h3 id="51-统一api接口"&gt;5.1 统一API接口&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c"&gt;# config.yaml&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;routing&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;providers&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;glm-coding&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;weight&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;30&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;timeout&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;10s&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;deepseek&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;weight&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;25&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;timeout&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;15s&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;sensenova&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;weight&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;25&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;timeout&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;20s&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;claude&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;weight&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;20&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;timeout&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;30s&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;fallback_order&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;glm-coding&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;deepseek&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;sensenova&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="l"&gt;claude&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="52-健康检查"&gt;5.2 健康检查&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# 每30秒检查一次&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;curl -s &lt;span class="s2"&gt;&amp;#34;http://model-api/health&amp;#34;&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt; jq &lt;span class="s1"&gt;&amp;#39;.status&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="53-日志与追踪"&gt;5.3 日志与追踪&lt;/h3&gt;
&lt;p&gt;所有请求记录到日志系统，支持按以下维度分析：&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="前言">前言</h2>
<p>2026年Q1，我的AI Agent系统经历了三次重大架构迭代。最初是单一模型驱动，后来发现成本失控和响应不稳定，最终演变成现在的多模型智能路由架构。</p>
<p>这篇文章记录完整的架构演进过程，以及为什么&quot;智能路由&quot;比&quot;固定模型&quot;更适合生产环境。</p>
<h2 id="一架构演进历程">一、架构演进历程</h2>
<h3 id="11-第一阶段单一模型2025年q1-q2">1.1 第一阶段：单一模型（2025年Q1-Q2）</h3>
<p>最初的设计非常简单：所有任务都路由到同一个模型。</p>
<pre tabindex="0"><code>用户请求 → 单一模型 → 响应
</code></pre><p><strong>问题暴露</strong>：</p>
<ul>
<li>成本不可控：简单任务占用高能力模型资源</li>
<li>限流风险：供应商API限流时全系统阻塞</li>
<li>响应延迟：高峰期排队严重</li>
</ul>
<h3 id="12-第二阶段静态路由2025年q3-q4">1.2 第二阶段：静态路由（2025年Q3-Q4）</h3>
<p>根据任务类型手动配置路由规则：</p>
<pre tabindex="0"><code>代码任务 → Model A
文本任务 → Model B
多模态 → Model C
</code></pre><p><strong>改进</strong>：成本降低约20%，但路由规则僵化，无法适应新场景。</p>
<h3 id="13-第三阶段智能路由2026年q1至今">1.3 第三阶段：智能路由（2026年Q1至今）</h3>
<p>基于任务复杂度、成本、响应时间的动态路由：</p>
<pre tabindex="0"><code>用户请求 → 路由引擎 → 最优模型 → 响应
                    ↓
              降级策略（失败时自动切换）
</code></pre><h2 id="二路由引擎设计">二、路由引擎设计</h2>
<h3 id="21-任务分类器">2.1 任务分类器</h3>
<p>使用轻量级分类器判断任务类型和复杂度：</p>
<table>
	<thead>
			<tr>
					<th>维度</th>
					<th>判断标准</th>
					<th>权重</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>任务类型</td>
					<td>代码/文本/多模态/数学</td>
					<td>40%</td>
			</tr>
			<tr>
					<td>复杂度</td>
					<td>简单/中等/复杂</td>
					<td>30%</td>
			</tr>
			<tr>
					<td>时效性</td>
					<td>实时/准实时/异步</td>
					<td>20%</td>
			</tr>
			<tr>
					<td>成本敏感</td>
					<td>是/否</td>
					<td>10%</td>
			</tr>
	</tbody>
</table>
<h3 id="22-模型能力矩阵">2.2 模型能力矩阵</h3>
<table>
	<thead>
			<tr>
					<th>模型</th>
					<th>代码</th>
					<th>文本</th>
					<th>多模态</th>
					<th>数学</th>
					<th>成本/千token</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>GLM Coding Lite</td>
					<td>⭐⭐⭐⭐⭐</td>
					<td>⭐⭐⭐</td>
					<td>⭐</td>
					<td>⭐⭐</td>
					<td>¥0.5</td>
			</tr>
			<tr>
					<td>DeepSeek-V3</td>
					<td>⭐⭐⭐⭐⭐</td>
					<td>⭐⭐⭐⭐</td>
					<td>⭐</td>
					<td>⭐⭐⭐⭐⭐</td>
					<td>¥1.0</td>
			</tr>
			<tr>
					<td>SenseNova 6.7</td>
					<td>⭐⭐⭐⭐</td>
					<td>⭐⭐⭐⭐</td>
					<td>⭐⭐⭐⭐⭐</td>
					<td>⭐⭐⭐</td>
					<td>¥2.0</td>
			</tr>
			<tr>
					<td>Claude 3.5</td>
					<td>⭐⭐⭐⭐⭐</td>
					<td>⭐⭐⭐⭐⭐</td>
					<td>⭐⭐</td>
					<td>⭐⭐⭐⭐</td>
					<td>¥5.0</td>
			</tr>
	</tbody>
</table>
<h3 id="23-路由决策逻辑">2.3 路由决策逻辑</h3>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-python" data-lang="python"><span class="line"><span class="cl"><span class="k">def</span> <span class="nf">route_task</span><span class="p">(</span><span class="n">task</span><span class="p">):</span>
</span></span><span class="line"><span class="cl">    <span class="c1"># 1. 分类任务</span>
</span></span><span class="line"><span class="cl">    <span class="n">task_type</span> <span class="o">=</span> <span class="n">classify</span><span class="p">(</span><span class="n">task</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">    <span class="n">complexity</span> <span class="o">=</span> <span class="n">assess_complexity</span><span class="p">(</span><span class="n">task</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">    
</span></span><span class="line"><span class="cl">    <span class="c1"># 2. 根据类型选择候选模型</span>
</span></span><span class="line"><span class="cl">    <span class="n">candidates</span> <span class="o">=</span> <span class="n">get_candidates</span><span class="p">(</span><span class="n">task_type</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">    
</span></span><span class="line"><span class="cl">    <span class="c1"># 3. 根据复杂度过滤</span>
</span></span><span class="line"><span class="cl">    <span class="k">if</span> <span class="n">complexity</span> <span class="o">==</span> <span class="s2">&#34;简单&#34;</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">        <span class="n">candidates</span> <span class="o">=</span> <span class="n">filter_by_cost</span><span class="p">(</span><span class="n">candidates</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">    <span class="k">elif</span> <span class="n">complexity</span> <span class="o">==</span> <span class="s2">&#34;复杂&#34;</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">        <span class="n">candidates</span> <span class="o">=</span> <span class="n">filter_by_capability</span><span class="p">(</span><span class="n">candidates</span><span class="p">,</span> <span class="n">min_rating</span><span class="o">=</span><span class="mi">4</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">    
</span></span><span class="line"><span class="cl">    <span class="c1"># 4. 健康检查</span>
</span></span><span class="line"><span class="cl">    <span class="n">candidates</span> <span class="o">=</span> <span class="p">[</span><span class="n">m</span> <span class="k">for</span> <span class="n">m</span> <span class="ow">in</span> <span class="n">candidates</span> <span class="k">if</span> <span class="n">is_healthy</span><span class="p">(</span><span class="n">m</span><span class="p">)]</span>
</span></span><span class="line"><span class="cl">    
</span></span><span class="line"><span class="cl">    <span class="c1"># 5. 选择最优</span>
</span></span><span class="line"><span class="cl">    <span class="k">return</span> <span class="n">select_optimal</span><span class="p">(</span><span class="n">candidates</span><span class="p">,</span> <span class="n">task</span><span class="p">)</span>
</span></span></code></pre></div><h2 id="三降级与容错">三、降级与容错</h2>
<h3 id="31-三级降级策略">3.1 三级降级策略</h3>
<table>
	<thead>
			<tr>
					<th>级别</th>
					<th>触发条件</th>
					<th>降级行为</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>L1</td>
					<td>单个模型超时</td>
					<td>切换同类型备选模型</td>
			</tr>
			<tr>
					<td>L2</td>
					<td>同类型全部失败</td>
					<td>降级到低成本模型</td>
			</tr>
			<tr>
					<td>L3</td>
					<td>所有模型不可用</td>
					<td>返回缓存结果或排队</td>
			</tr>
	</tbody>
</table>
<h3 id="32-熔断机制">3.2 熔断机制</h3>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-yaml" data-lang="yaml"><span class="line"><span class="cl"><span class="nt">circuit_breaker</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">failure_threshold</span><span class="p">:</span><span class="w"> </span><span class="m">5</span><span class="w">        </span><span class="c"># 连续失败5次触发熔断</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">reset_timeout</span><span class="p">:</span><span class="w"> </span><span class="l">60s         </span><span class="w"> </span><span class="c"># 60秒后尝试恢复</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">half_open_requests</span><span class="p">:</span><span class="w"> </span><span class="m">3</span><span class="w">       </span><span class="c"># 半开状态测试请求数</span><span class="w">
</span></span></span></code></pre></div><h3 id="33-监控指标">3.3 监控指标</h3>
<ul>
<li><strong>成功率</strong>：目标 &gt; 99.5%</li>
<li><strong>平均响应时间</strong>：目标 &lt; 2s</li>
<li><strong>成本/请求</strong>：目标 &lt; ¥0.05</li>
<li><strong>降级频率</strong>：目标 &lt; 1%/天</li>
</ul>
<h2 id="四成本优化效果">四、成本优化效果</h2>
<table>
	<thead>
			<tr>
					<th>指标</th>
					<th>单一模型</th>
					<th>智能路由</th>
					<th>优化幅度</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>月均成本</td>
					<td>¥3,200</td>
					<td>¥1,850</td>
					<td>↓42%</td>
			</tr>
			<tr>
					<td>平均响应时间</td>
					<td>3.2s</td>
					<td>1.8s</td>
					<td>↓44%</td>
			</tr>
			<tr>
					<td>限流事件</td>
					<td>12次/月</td>
					<td>0次/月</td>
					<td>↓100%</td>
			</tr>
			<tr>
					<td>任务成功率</td>
					<td>94%</td>
					<td>99.7%</td>
					<td>↑6%</td>
			</tr>
	</tbody>
</table>
<h2 id="五实现细节">五、实现细节</h2>
<h3 id="51-统一api接口">5.1 统一API接口</h3>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-yaml" data-lang="yaml"><span class="line"><span class="cl"><span class="c"># config.yaml</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="nt">routing</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">providers</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">glm-coding</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">weight</span><span class="p">:</span><span class="w"> </span><span class="m">30</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">timeout</span><span class="p">:</span><span class="w"> </span><span class="l">10s</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">deepseek</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">weight</span><span class="p">:</span><span class="w"> </span><span class="m">25</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">timeout</span><span class="p">:</span><span class="w"> </span><span class="l">15s</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">sensenova</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">weight</span><span class="p">:</span><span class="w"> </span><span class="m">25</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">timeout</span><span class="p">:</span><span class="w"> </span><span class="l">20s</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">claude</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">weight</span><span class="p">:</span><span class="w"> </span><span class="m">20</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">      </span><span class="nt">timeout</span><span class="p">:</span><span class="w"> </span><span class="l">30s</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  
</span></span></span><span class="line"><span class="cl"><span class="w">  </span><span class="nt">fallback_order</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span>- <span class="l">glm-coding</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span>- <span class="l">deepseek</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span>- <span class="l">sensenova</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span>- <span class="l">claude</span><span class="w">
</span></span></span></code></pre></div><h3 id="52-健康检查">5.2 健康检查</h3>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># 每30秒检查一次</span>
</span></span><span class="line"><span class="cl">curl -s <span class="s2">&#34;http://model-api/health&#34;</span> <span class="p">|</span> jq <span class="s1">&#39;.status&#39;</span>
</span></span></code></pre></div><h3 id="53-日志与追踪">5.3 日志与追踪</h3>
<p>所有请求记录到日志系统，支持按以下维度分析：</p>
<ul>
<li>模型性能对比</li>
<li>路由决策分布</li>
<li>成本趋势分析</li>
<li>错误模式识别</li>
</ul>
<h2 id="六总结">六、总结</h2>
<p>多模型路由架构的核心价值：</p>
<ol>
<li><strong>成本可控</strong>：简单任务用低价模型，复杂任务用高能力模型</li>
<li><strong>稳定性高</strong>：单点故障不影响整体系统</li>
<li><strong>灵活扩展</strong>：新增模型无需修改业务逻辑</li>
<li><strong>数据驱动</strong>：基于真实数据持续优化路由策略</li>
</ol>
<p>如果你也在构建AI Agent系统，我的建议是：<strong>尽早设计路由层</strong>，不要等到成本失控或限流频发时才考虑。</p>
<hr>
<blockquote>
<p><strong>更新日志</strong>：本文基于2026年5月实际架构编写，模型和供应商可能随时间变化，请以实际配置为准。</p>
</blockquote>
]]></content:encoded></item><item><title>多供应商AI服务组合架构：为什么我不用单一API</title><link>https://www.chaoyuewang.cn/posts/infra/multi-provider-ai-architecture/</link><pubDate>Wed, 27 May 2026 13:00:00 +0800</pubDate><guid>https://www.chaoyuewang.cn/posts/infra/multi-provider-ai-architecture/</guid><description>&lt;h2 id="前言"&gt;前言&lt;/h2&gt;
&lt;p&gt;过去两年，我经历过三次AI服务供应商切换：从最初的单一供应商依赖，到发现限流和成本问题后的多供应商组合，再到现在的&amp;quot;可编程认知系统&amp;quot;架构。&lt;/p&gt;
&lt;p&gt;这篇文章记录我当前的AI服务组合架构，以及为什么&amp;quot;单一供应商&amp;quot;在长期生产环境中是一个风险点。&lt;/p&gt;
&lt;h2 id="一当前架构概览"&gt;一、当前架构概览&lt;/h2&gt;
&lt;p&gt;我的AI服务组合由四个供应商组成：&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;供应商&lt;/th&gt;
&lt;th&gt;模型&lt;/th&gt;
&lt;th&gt;主要用途&lt;/th&gt;
&lt;th&gt;接入方式&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;智谱AI&lt;/td&gt;
&lt;td&gt;GLM Coding Lite&lt;/td&gt;
&lt;td&gt;代码生成、技术问答&lt;/td&gt;
&lt;td&gt;API&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;MiniMax&lt;/td&gt;
&lt;td&gt;多种模型&lt;/td&gt;
&lt;td&gt;文本生成、创意写作&lt;/td&gt;
&lt;td&gt;API&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;DeepSeek&lt;/td&gt;
&lt;td&gt;DeepSeek-V3&lt;/td&gt;
&lt;td&gt;代码审查、复杂推理&lt;/td&gt;
&lt;td&gt;API&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SenseNova&lt;/td&gt;
&lt;td&gt;6.7 Flash-Lite&lt;/td&gt;
&lt;td&gt;日常协作、多模态&lt;/td&gt;
&lt;td&gt;自定义提供商&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;核心原则&lt;/strong&gt;：没有单一供应商承担超过40%的工作负载。&lt;/p&gt;
&lt;h2 id="二为什么需要多供应商"&gt;二、为什么需要多供应商&lt;/h2&gt;
&lt;h3 id="21-限流风险"&gt;2.1 限流风险&lt;/h3&gt;
&lt;p&gt;2025年Q3，我遇到的第一个限流事件：某供应商在高峰期对API调用实施软限流，返回429错误但不提供明确的重试头信息。当时我的自动化脚本全部阻塞，等待了12分钟才恢复。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;教训&lt;/strong&gt;：单一供应商的限流策略不可控，多供应商可以自动降级。&lt;/p&gt;
&lt;h3 id="22-成本优化"&gt;2.2 成本优化&lt;/h3&gt;
&lt;p&gt;不同供应商的定价策略差异显著：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;简单任务（文本摘要、格式转换）→ 使用低价供应商&lt;/li&gt;
&lt;li&gt;中等复杂度（代码审查、技术文档）→ 使用性价比最优供应商&lt;/li&gt;
&lt;li&gt;高复杂度（架构设计、深度分析）→ 使用高能力供应商&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;通过任务路由，整体成本比单一使用高能力供应商降低约35%。&lt;/p&gt;
&lt;h3 id="23-能力互补"&gt;2.3 能力互补&lt;/h3&gt;
&lt;p&gt;没有哪个供应商在所有任务上都是最优的：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;代码生成&lt;/strong&gt;：GLM Coding Lite 在小型脚本上表现优异&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;复杂推理&lt;/strong&gt;：DeepSeek-V3 在多步推理任务上更稳定&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;创意写作&lt;/strong&gt;：MiniMax 在中文创意内容上更有表现力&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;多模态&lt;/strong&gt;：SenseNova 在图像理解和生成上有独特优势&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="三架构实现"&gt;三、架构实现&lt;/h2&gt;
&lt;h3 id="31-统一接入层"&gt;3.1 统一接入层&lt;/h3&gt;
&lt;p&gt;我使用 Hermes Agent 作为统一接入层，配置如下：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c"&gt;# config.yaml 片段&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nt"&gt;providers&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;glm-coding&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;provider&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;custom:glm-coding-lite&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;weight&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;30&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;minimax&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;provider&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;minimax&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;weight&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;25&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;deepseek&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;provider&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;deepseek&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;weight&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;25&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;- &lt;span class="nt"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;sensenova&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;provider&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l"&gt;custom:sensenova-6.7-flash-lite&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;weight&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="m"&gt;20&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="32-任务路由策略"&gt;3.2 任务路由策略&lt;/h3&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;任务类型 → 路由规则
─────────────────────────────────────
代码生成 → glm-coding (优先) → deepseek (降级)
技术问答 → deepseek (优先) → glm-coding (降级)
创意写作 → minimax (优先) → sensenova (降级)
多模态 → sensenova (唯一)
日常协作 → sensenova (优先) → 其他 (降级)
&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="33-降级机制"&gt;3.3 降级机制&lt;/h3&gt;
&lt;p&gt;当主供应商不可用时，自动切换到备用供应商：&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="前言">前言</h2>
<p>过去两年，我经历过三次AI服务供应商切换：从最初的单一供应商依赖，到发现限流和成本问题后的多供应商组合，再到现在的&quot;可编程认知系统&quot;架构。</p>
<p>这篇文章记录我当前的AI服务组合架构，以及为什么&quot;单一供应商&quot;在长期生产环境中是一个风险点。</p>
<h2 id="一当前架构概览">一、当前架构概览</h2>
<p>我的AI服务组合由四个供应商组成：</p>
<table>
	<thead>
			<tr>
					<th>供应商</th>
					<th>模型</th>
					<th>主要用途</th>
					<th>接入方式</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>智谱AI</td>
					<td>GLM Coding Lite</td>
					<td>代码生成、技术问答</td>
					<td>API</td>
			</tr>
			<tr>
					<td>MiniMax</td>
					<td>多种模型</td>
					<td>文本生成、创意写作</td>
					<td>API</td>
			</tr>
			<tr>
					<td>DeepSeek</td>
					<td>DeepSeek-V3</td>
					<td>代码审查、复杂推理</td>
					<td>API</td>
			</tr>
			<tr>
					<td>SenseNova</td>
					<td>6.7 Flash-Lite</td>
					<td>日常协作、多模态</td>
					<td>自定义提供商</td>
			</tr>
	</tbody>
</table>
<p><strong>核心原则</strong>：没有单一供应商承担超过40%的工作负载。</p>
<h2 id="二为什么需要多供应商">二、为什么需要多供应商</h2>
<h3 id="21-限流风险">2.1 限流风险</h3>
<p>2025年Q3，我遇到的第一个限流事件：某供应商在高峰期对API调用实施软限流，返回429错误但不提供明确的重试头信息。当时我的自动化脚本全部阻塞，等待了12分钟才恢复。</p>
<p><strong>教训</strong>：单一供应商的限流策略不可控，多供应商可以自动降级。</p>
<h3 id="22-成本优化">2.2 成本优化</h3>
<p>不同供应商的定价策略差异显著：</p>
<ul>
<li>简单任务（文本摘要、格式转换）→ 使用低价供应商</li>
<li>中等复杂度（代码审查、技术文档）→ 使用性价比最优供应商</li>
<li>高复杂度（架构设计、深度分析）→ 使用高能力供应商</li>
</ul>
<p>通过任务路由，整体成本比单一使用高能力供应商降低约35%。</p>
<h3 id="23-能力互补">2.3 能力互补</h3>
<p>没有哪个供应商在所有任务上都是最优的：</p>
<ul>
<li><strong>代码生成</strong>：GLM Coding Lite 在小型脚本上表现优异</li>
<li><strong>复杂推理</strong>：DeepSeek-V3 在多步推理任务上更稳定</li>
<li><strong>创意写作</strong>：MiniMax 在中文创意内容上更有表现力</li>
<li><strong>多模态</strong>：SenseNova 在图像理解和生成上有独特优势</li>
</ul>
<h2 id="三架构实现">三、架构实现</h2>
<h3 id="31-统一接入层">3.1 统一接入层</h3>
<p>我使用 Hermes Agent 作为统一接入层，配置如下：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-yaml" data-lang="yaml"><span class="line"><span class="cl"><span class="c"># config.yaml 片段</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="nt">providers</span><span class="p">:</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">glm-coding</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nt">provider</span><span class="p">:</span><span class="w"> </span><span class="l">custom:glm-coding-lite</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nt">weight</span><span class="p">:</span><span class="w"> </span><span class="m">30</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">minimax</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nt">provider</span><span class="p">:</span><span class="w"> </span><span class="l">minimax</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nt">weight</span><span class="p">:</span><span class="w"> </span><span class="m">25</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">deepseek</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nt">provider</span><span class="p">:</span><span class="w"> </span><span class="l">deepseek</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nt">weight</span><span class="p">:</span><span class="w"> </span><span class="m">25</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">  </span>- <span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l">sensenova</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nt">provider</span><span class="p">:</span><span class="w"> </span><span class="l">custom:sensenova-6.7-flash-lite</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nt">weight</span><span class="p">:</span><span class="w"> </span><span class="m">20</span><span class="w">
</span></span></span></code></pre></div><h3 id="32-任务路由策略">3.2 任务路由策略</h3>
<pre tabindex="0"><code>任务类型 → 路由规则
─────────────────────────────────────
代码生成    → glm-coding (优先) → deepseek (降级)
技术问答    → deepseek (优先) → glm-coding (降级)
创意写作    → minimax (优先) → sensenova (降级)
多模态      → sensenova (唯一)
日常协作    → sensenova (优先) → 其他 (降级)
</code></pre><h3 id="33-降级机制">3.3 降级机制</h3>
<p>当主供应商不可用时，自动切换到备用供应商：</p>
<ol>
<li><strong>检测到错误</strong>（超时、5xx、限流）</li>
<li><strong>记录错误日志</strong>（用于后续分析）</li>
<li><strong>切换备用供应商</strong></li>
<li><strong>通知用户</strong>（仅当所有供应商都不可用时）</li>
</ol>
<h2 id="四代理环境集成">四、代理环境集成</h2>
<p>所有AI API调用都经过 Clash Meta 代理（聚合飞鸟云46节点 + 杜卡迪21节点 = 67节点），确保：</p>
<ul>
<li><strong>网络稳定性</strong>：多节点冗余，单节点故障不影响整体</li>
<li><strong>地理优化</strong>：根据供应商服务器位置选择最优出口节点</li>
<li><strong>合规性</strong>：国内供应商走国内节点，海外供应商走海外节点</li>
</ul>
<h2 id="五成本分析">五、成本分析</h2>
<table>
	<thead>
			<tr>
					<th>项目</th>
					<th>单一供应商</th>
					<th>多供应商组合</th>
					<th>节省</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>月均API调用</td>
					<td>50,000次</td>
					<td>50,000次</td>
					<td>-</td>
			</tr>
			<tr>
					<td>月均成本</td>
					<td>¥1,200</td>
					<td>¥780</td>
					<td>35%</td>
			</tr>
			<tr>
					<td>限流事件</td>
					<td>3次/月</td>
					<td>0次/月</td>
					<td>100%</td>
			</tr>
			<tr>
					<td>平均响应时间</td>
					<td>2.3s</td>
					<td>1.8s</td>
					<td>22%</td>
			</tr>
	</tbody>
</table>
<h2 id="六总结">六、总结</h2>
<p>多供应商AI服务组合的核心价值不是&quot;省钱&quot;，而是<strong>可控性</strong>：</p>
<ol>
<li><strong>限流可控</strong>：一个供应商限流，其他供应商可以承接</li>
<li><strong>成本可控</strong>：根据任务复杂度选择最优供应商</li>
<li><strong>能力可控</strong>：不同任务使用最适合的模型</li>
<li><strong>架构可控</strong>：统一接入层可以灵活调整供应商配置</li>
</ol>
<p>如果你也在构建AI基础设施，我的建议是：<strong>不要把所有鸡蛋放在一个篮子里</strong>，尤其是在生产环境中。</p>
<hr>
<blockquote>
<p><strong>更新日志</strong>：本文基于2026年5月实际架构编写，供应商和模型可能随时间变化，请以实际配置为准。</p>
</blockquote>
]]></content:encoded></item></channel></rss>