Sakana AI Fugu 深度解析:多模型编排时代的「智能路由器」—— 超越 Fable 5 的技术内幕与实战指南(2026)
前言:当大模型不再是一个,而是「一群」
2026年6月22日,东京人工智能初创企业 Sakana AI 发布了一款名为 Fugu 的多智能体模型编排系统。产品发布当天便在社交媒体引发广泛讨论——不是因为它的参数规模有多大,而是因为它的定位极其罕见:不是训练新模型,而是给模型们找一个最聪明的调度者。
Sakana AI 的思路很直接:与其把所有能力塞进一个通用大模型,不如让一个轻量级的「路由器」来理解任务,然后动态调用最合适的模型组合来完成工作。这个路由器本身也是一个语言模型,但它的专长不是生成内容,而是决策——把正确的任务交给正确的人。
Fugu 的诞生,本质上是对当前大模型竞争格局的一次「降维打击」:不再卷单模型性能,而是卷多模型协作的调度能力。
本文将深入解析 Sakana AI Fugu 的技术架构、核心原理、与 Anthropic Fable 5 的性能对比、API 使用实战,以及它对整个 AI 生态的深远影响。
一、Sakana AI:一家用「进化论」做 AI 的公司
在深入 Fugu 之前,有必要先了解 Sakana AI 这家公司。因为 Fugu 背后的设计哲学,和 Sakana AI 整个技术路线一脉相承。
1.1 起源与研究方向
Sakana AI(名字来自日语「魚」,意为「鱼」)成立于东京,创始团队来自 Google Brain 和 DeepMind 等顶级研究机构。公司的核心研究方向围绕自然启发的进化算法(Evolutionary Computation),尤其擅长用进化策略对模型进行合并、优化和架构搜索。
Sakana AI 最著名的研究成果包括:
- The AI Scientist:全自动开放式科学发现系统,能独立提出假设、设计实验、撰写论文
- Evolutionary Model Merging:通过进化算法自动合并多个不同架构的模型权重
- Continuous Thought Machines:引入「连续思维」机制,革新推理过程
- ShinkaEvolve:开放式程序进化系统
这些研究有一个共同特点:不依赖暴力 scaling,而是通过结构化搜索和进化优化找到更高效的解法。Fugu 的设计哲学完全继承了这一点——不是训练一个更大的模型,而是进化出一个更聪明的调度系统。
1.2 Fugu 的诞生背景
2026年,大模型市场呈现出显著的「碎片化」趋势:
- 通用能力:GPT-5.5、Claude Opus 4.7、Gemini Ultra 2 各有擅长
- 垂直领域:Code Llama、MedPaLM、BloombergGPT 在特定任务上碾压通用模型
- 开源生态:Llama 4、Qwen 3、Mistral Large 持续追赶
- 成本差异:顶级闭源模型调用成本是开源模型的 10-100 倍
这种碎片化带来一个现实问题:开发者需要在性能、成本、延迟之间做出痛苦的选择。是选能力最强的 GPT-5.5?还是选性价比最高的 Llama 4?还是针对代码任务专用 Code Llama?
Fugu 的答案是:为什么要选?让路由器帮你选。
二、Fugu 是什么:重新定义「AI 调度层」
2.1 产品定位
Sakana AI 官方对 Fugu 的定义是:
A multi-agent model orchestration system that intelligently routes tasks to the optimal model for each job, while exposing a unified API to developers.
翻译成人话就是:一个多模型智能路由层,对外暴露统一 API,开发者只需要调用 Fugu,剩下的它帮你搞定。
Fugu 本身是一个语言模型(参数量未公开,预计在 7B-70B 量级),但它的输出不是对话内容,而是模型调度决策。你可以把它理解为 AI 世界的「智能 DNS」——DNS 把域名解析到 IP 地址,Fugu 把任务请求路由到最合适的模型。
2.2 核心特性
| 特性 | 说明 |
|---|---|
| 智能路由 | 分析任务语义,自动选择最优模型 |
| 统一 API | 一个端点调用所有模型,屏蔽底层差异 |
| 多模型聚合 | 支持调用 Sakana 自研模型 + 主流开源/闭源模型 |
| 单一 API 封装 | 对外只暴露 Fugu 接口,隐藏内部模型选择逻辑 |
| 成本优化 | 优先调度低成本模型,仅在必要时升级到高端模型 |
| 性能对标 | 部分场景下性能优于 Anthropic Fable 5 |
2.3 Fugu vs. 传统模型路由:根本区别
传统 API 网关(如 PortKey、Weights & Biases AI Gateway)的路由逻辑通常是规则驱动的:
IF task == "code" → 调用 Code Llama
IF task == "reasoning" → 调用 GPT-5.5
IF task == "creative" → 调用 Claude
这种规则的局限性在于:需要人工维护规则列表,且无法处理边界情况。一段同时包含代码生成和创意写作的 prompt,应该调用哪个模型?规则引擎很难回答。
Fugu 的路由则是语义驱动的——它用自研的路由模型理解 prompt 的真实意图,然后做动态决策。路由过程大致如下:
用户请求 → Fugu 路由模型分析语义 → 识别任务类型与难度 →
选择最优模型(或模型组合)→ 调用 → 结果聚合 → 返回
三、架构深度解析:从输入到输出的全链路
3.1 整体架构
Fugu 的架构可以划分为五层:
┌─────────────────────────────────────────────────────┐
│ 统一 API 层 │
│ (Single endpoint, REST + streaming) │
├─────────────────────────────────────────────────────┤
│ 路由决策层 │
│ (Fugu Router Model - 7B/13B/70B) │
│ 分析语义 → 任务分类 → 模型选择 → 成本估算 │
├─────────────────────────────────────────────────────┤
│ 模型调度层 │
│ (Multi-model Executor & Aggregator) │
│ 并发/串行调用 → 结果缓存 → 结果合并 │
├─────────────────────────────────────────────────────┤
│ 模型接入层 │
│ (Unified Model Interface - OpenAI/Anthr/Local) │
│ Sakana模型 | GPT-5.5 | Claude | Llama | ... │
├─────────────────────────────────────────────────────┤
│ 基础设施层 │
│ (Kubernetes | GPU Pool | Rate Limiter) │
└─────────────────────────────────────────────────────┘
3.2 路由决策层:核心中的核心
路由决策层是 Fugu 区别于其他所有产品的关键。它的工作流程如下:
Step 1: 任务分析(Task Analysis)
Fugu 的路由模型首先对输入进行多维度分析:
# Fugu 内部路由分析(概念代码)
def analyze_task(user_input: str) -> TaskProfile:
"""
对用户输入进行深度分析,生成任务画像
"""
return {
"primary_domain": detect_domain(user_input), # code | reasoning | creative | math | ...
"complexity_level": estimate_complexity(user_input), # 1-5
"specialized_requirements": detect_requirements(user_input), # ["multiling", "long-context", ...]
"latency_tolerance": infer_latency_tolerance(user_input), # strict | moderate | flexible
"cost_sensitivity": infer_cost_sensitivity(user_input), # sensitive | neutral | indifferent
"sub_tasks": decompose_if_needed(user_input) # 是否需要分解为子任务
}
Step 2: 模型选择(Model Selection)
基于任务画像,Fugu 从可用模型池中选择最优候选:
# 简化的模型选择逻辑
def select_models(profile: TaskProfile, model_pool: list[Model]) -> List[Model]:
candidates = []
for model in model_pool:
score = 0
# 领域匹配度
score += DOMAIN_WEIGHTS[model.domain][profile.primary_domain] * 0.4
# 复杂度匹配度
score += COMPLEXITY_SCORE[model.capability_level][profile.complexity_level] * 0.25
# 特殊需求满足度
score += check_requirements(model, profile.specialized_requirements) * 0.2
# 成本效率
score += compute_cost_efficiency(model, profile) * 0.15
candidates.append((model, score))
# 返回 Top-K 候选模型
return sorted(candidates, key=lambda x: x[1], reverse=True)[:3]
Step 3: 执行策略(Execution Strategy)
对于复杂任务,Fugu 支持三种执行策略:
class ExecutionStrategy(Enum):
SINGLE = "single" # 单模型执行(简单任务)
SEQUENTIAL = "sequential" # 串行多模型(需要链式推理)
PARALLEL = "parallel" # 并行多模型(需要结果聚合)
HIERARCHICAL = "hierarchical" # 分层执行(主模型+专家模型)
Step 4: 结果聚合(Result Aggregation)
当使用并行或串行策略时,Fugu 需要对多个模型的结果进行聚合:
async def aggregate_results(
results: List[ModelResult],
strategy: ExecutionStrategy
) -> AggregatedResult:
if strategy == SINGLE:
return results[0]
elif strategy == PARALLEL:
# 多数投票 + 置信度加权
return voting_aggregate(results)
elif strategy == SEQUENTIAL:
# 链式传递,后一个模型以前一个输出为输入
return chain_aggregate(results)
elif strategy == HIERARCHICAL:
# 主模型决策 + 专家模型补充
return hierarchical_aggregate(results)
3.3 模型接入层:统一抽象
Fugu 的模型接入层对所有底层模型做了统一抽象,屏蔽了 API 差异:
# 统一的模型接口
class UnifiedModelInterface(ABC):
@abstractmethod
async def generate(
self,
prompt: str,
config: GenerationConfig
) -> ModelResponse:
pass
@abstractmethod
def get_capabilities(self) -> ModelCapabilities:
pass
@abstractmethod
def get_pricing(self) -> ModelPricing:
pass
# Sakana 自研模型
class SakanaModel(UnifiedModelInterface):
# 支持本地部署和 Sakana 云端 API
pass
# OpenAI 模型
class OpenAIModel(UnifiedModelInterface):
# 封装 GPT-5.5 / GPT-5.5-Turbo 等
pass
# Anthropic 模型
class AnthropicModel(UnifiedModelInterface):
# 封装 Claude Opus 4.7 / Claude Sonnet 4 等
pass
# 开源模型
class OpenSourceModel(UnifiedModelInterface):
# 封装 Llama 4 / Qwen 3 / Mistral Large 等
pass
这种设计使得 Fugu 可以热插拔任何新模型,无需修改上层逻辑。
四、性能对比:Fugu vs. Fable 5 vs. 单模型
4.1 Sakana 官方基准测试
Sakana AI 在发布 Fugu 时公布了一组基准测试数据,对比对象包括 Anthropic Fable 5(多模型协作领域的直接竞品)以及各单一模型:
| 基准测试 | GPT-5.5 | Claude Opus 4.7 | Llama 4-70B | Fable 5 | Fugu |
|---|---|---|---|---|---|
| MMLU (5-shot) | 92.4% | 91.8% | 87.2% | 89.5% | 93.1% |
| MATH (Hard) | 85.6% | 84.2% | 78.9% | 82.4% | 86.2% |
| HumanEval | 91.3% | 90.1% | 85.7% | 87.8% | 91.8% |
| MMMU-Pro | 76.0% | 74.5% | 68.2% | 71.3% | 76.8% |
| GPQA (博士级) | 85.6% | 84.1% | 77.3% | 80.5% | 86.0% |
| 创意写作 | 88.2% | 91.4% | 82.1% | 85.7% | 89.3% |
| 多语言理解 | 89.7% | 88.5% | 85.3% | 87.2% | 90.1% |
数据来源:Sakana AI 官方技术报告(2026年6月),基准测试在标准评测环境下进行
4.2 性能分析:Fugu 赢在哪里?
从数据来看,Fugu 在客观评测类任务(MMLU、MATH、HumanEval)上全面超越了所有单一模型,这背后的原因是:
1. 任务分解 + 专家调用
对于复杂任务,Fugu 会将其分解为多个子任务,每个子任务分配给最擅长的模型:
复杂数学证明题
├─ 子任务1: 符号推理 → 调用 GPT-5.5-Think(深度推理版)
├─ 子任务2: 代码验证 → 调用 Code Llama 4-70B
└─ 子任务3: 结果整合 → 调用 Claude Opus 4.7(写作能力最强)
2. 动态置信度校准
Fugu 会对每个模型的结果进行置信度评估,如果低置信度则自动触发重试或切换模型:
async def execute_with_confidence(
task: str,
initial_model: Model
) -> Result:
response = await initial_model.generate(task)
confidence = estimate_confidence(response, task)
if confidence < 0.7:
# 置信度不足,尝试备选模型
alt_model = select_alternative(task, initial_model)
alt_response = await alt_model.generate(task)
# 融合两个结果
return fuse_responses(response, alt_response, confidence)
return response
3. 长上下文优化
对于超长文档处理任务,Fugu 会自动将上下文切分,分配给擅长长上下文的模型处理不同段落,最后汇总。
4.3 成本效率:Fugu 的隐藏优势
基准测试只看性能,但 Fugu 真正的价值在于性价比:
| 场景 | 单用 GPT-5.5 | 单用 Claude | 传统 API 网关 | Fugu |
|---|---|---|---|---|
| 简单客服 (1000次) | $15.00 | $13.00 | $9.00 | $4.50 |
| 代码审查 (500次) | $22.50 | $19.50 | $14.00 | $8.25 |
| 复杂推理 (200次) | $30.00 | $26.00 | $18.00 | $16.80 |
Fugu 通过智能降级策略节省了大量成本:简单任务用便宜模型,只有真正需要时才调用高端模型。
五、API 实战:10行代码接入 Fugu
5.1 基础调用
Fugu 提供与 OpenAI 兼容的 API 接口,现有代码几乎不需要修改即可迁移:
from openai import OpenAI
# 只需更换 base URL 和 API Key
client = OpenAI(
api_key="fugu-xxxxx", # Sakana AI 提供的 Fugu API Key
base_url="https://api.sakana.ai/v1"
)
# 与 OpenAI API 完全一致的调用方式
response = client.chat.completions.create(
model="fugu", # 固定为 "fugu",路由由系统自动处理
messages=[
{"role": "system", "content": "你是一个技术架构师。"},
{"role": "user", "content": "设计一个支持10万并发的即时通讯系统架构。"}
],
temperature=0.7,
max_tokens=4096
)
print(response.choices[0].message.content)
5.2 强制指定任务类型(Hint)
如果你的场景比较特殊,想要引导 Fugu 的路由决策,可以传入 hint 参数:
response = client.chat.completions.create(
model="fugu",
messages=[
{"role": "user", "content": "请分析以下股票数据,预测未来走势。\n\n" + stock_data}
],
# hint 参数引导路由决策
extra_body={
"fugu_hint": {
"primary_domain": "financial_analysis",
"require_multimodal": False,
"max_latency_ms": 5000,
"cost_budget": "medium"
}
}
)
5.3 查看路由决策(Debug 模式)
开发者可以通过 debug 参数查看 Fugu 的内部路由决策:
response = client.chat.completions.create(
model="fugu",
messages=[{"role": "user", "content": "用Python写一个快速排序"}],
extra_body={
"fugu_debug": True # 返回路由决策详情
}
)
# response.usage 中包含路由信息
print(response.usage.metadata["fugu_routing"])
# 输出示例:
# {
# "selected_model": "sakana-code-pro",
# "strategy": "SINGLE",
# "confidence": 0.94,
# "alternatives_considered": ["gpt-5.5-code", "claude-code-sonnet"],
# "cost_usd": 0.0012,
# "latency_ms": 420
# }
5.4 Streaming 响应
stream = client.chat.completions.create(
model="fugu",
messages=[{"role": "user", "content": "解释一下区块链的共识机制"}],
stream=True
)
for chunk in stream:
print(chunk.choices[0].delta.content, end="", flush=True)
5.5 多轮对话
conversation = client.chat.completions.create(
model="fugu",
messages=[
{"role": "system", "content": "你是一个架构评审专家。"},
{"role": "user", "content": "我们的微服务用了 50 个节点,有哪些性能瓶颈?"},
{"role": "assistant", "content": "基于您的描述,主要瓶颈可能在..."},
{"role": "user", "content": "如何用 eBPF 优化网络层?"}
]
)
六、进阶实战:自定义模型池与路由策略
6.1 配置自定义模型池
Fugu 允许开发者配置自己的模型池,将企业内部的微调模型或特定领域模型纳入路由:
# fugu_config.yaml
model_pool:
# Sakana 内置模型
- name: "sakana-general"
endpoint: "https://api.sakana.ai/models/general"
capabilities:
domains: ["general", "reasoning", "creative"]
max_tokens: 128000
context_window: 200000
pricing:
input_per_1m: 0.5
output_per_1m: 1.5
- name: "sakana-code-pro"
endpoint: "https://api.sakana.ai/models/code"
capabilities:
domains: ["code", "debug", "refactor"]
max_tokens: 64000
context_window: 100000
pricing:
input_per_1m: 0.8
output_per_1m: 2.4
# OpenAI 模型
- name: "gpt-5.5"
provider: "openai"
model: "gpt-5.5-2026-04-23"
api_key_env: "OPENAI_API_KEY"
capabilities:
domains: ["reasoning", "math", "general"]
max_tokens: 64000
context_window: 1000000
pricing:
input_per_1m: 5.0
output_per_1m: 15.0
# 本地开源模型(Ollama)
- name: "llama4-local"
provider: "ollama"
endpoint: "http://localhost:11434"
model: "llama4-70b"
capabilities:
domains: ["general"]
max_tokens: 32000
context_window: 128000
pricing:
input_per_1m: 0.0 # 本地模型无 API 成本
compute_per_1m: 0.02 # GPU 计算成本
6.2 自定义路由规则
from sakana_fugu import FuguRouter
router = FuguRouter(config_path="fugu_config.yaml")
# 添加自定义路由规则(优先级高于模型默认能力)
router.add_rule({
"match": {
"contains_keywords": ["kubernetes", "docker", "microservice"],
"task_complexity": "high"
},
"route_to": ["sakana-code-pro", "gpt-5.5"],
"strategy": "hierarchical"
})
router.add_rule({
"match": {
"contains_keywords": ["中文", "chinese", "翻译"],
"primary_language": "chinese"
},
"route_to": ["qwen3-72b", "sakana-general"],
"strategy": "single"
})
router.add_rule({
"match": {
"cost_sensitivity": "high",
"task_complexity": "low"
},
"route_to": ["llama4-local", "qwen3-72b"],
"strategy": "single",
"fallback": "sakana-general"
})
# 编译并应用规则
router.compile()
6.3 成本控制与 Rate Limiting
# 设置成本上限,防止意外支出
response = client.chat.completions.create(
model="fugu",
messages=[{"role": "user", "content": "..."}],
extra_body={
"fugu_budget": {
"max_cost_usd": 0.50, # 单次请求成本上限
"daily_cost_cap": 50.00, # 每日成本上限
"force_downgrade": True # 超预算时强制降级到便宜模型
}
}
)
七、Fugu 的局限性与挑战
7.1 路由延迟
每次请求都需要经过 Fugu 路由模型的分析和决策,这会带来额外的延迟。Sakana 官方数据:
| 模型 | 首 token 延迟 (P50) | 首 token 延迟 (P99) |
|---|---|---|
| GPT-5.5 直接调用 | 420ms | 1800ms |
| Fugu (简单任务) | 480ms | 2000ms |
| Fugu (复杂任务) | 650ms | 3200ms |
对于延迟敏感的场景,这个额外开销需要评估。
7.2 路由「黑盒」问题
Fugu 的路由决策对开发者是透明的(debug 模式可查看),但这种透明是有限的。开发者无法精确控制「为什么要选这个模型」,这在需要高度确定性的场景(如金融合规、医疗诊断)可能带来问题。
7.3 成本透明度
当 Fugu 内部调用了多个模型时,成本的拆分和归因变得复杂。企业如果需要精确的成本核算,需要额外对接 Fugu 的计费 API。
7.4 供应商锁定
一旦深度依赖 Fugu 的路由策略,迁移到其他系统需要重新训练团队对路由行为的认知。且 Fugu 的路由模型本身是 Sakana 的专有资产,无法在本地部署。
八、生态影响:Fugu 意味着什么?
8.1 对模型厂商的冲击
Fugu 的出现实际上对头部模型厂商构成了一种反向压力:
- 对于 OpenAI/Anthropic:单模型的优势正在被多模型协作系统稀释。如果 Fugu 能用 GPT-5.5 + Llama 4 的组合在部分场景击败 GPT-5.5,用户为什么不选择更便宜的方案?
- 对于开源模型:Fugu 为 Llama 4、Qwen 3 等开源模型找到了新的价值定位——作为 Fugu 模型池中的「经济选项」,在不需要顶级性能时替代昂贵的闭源模型。
8.2 对 AI 应用开发的影响
对于 AI 应用开发者,Fugu 提供了一个重要的范式转变:从「选模型」到「描述需求」。
# 旧的范式:选模型
if task == "code":
model = "gpt-5.5-code"
elif task == "creative":
model = "claude-opus"
...
# 新的范式:描述需求
response = client.chat.completions.create(
model="fugu",
messages=[{"role": "user", "content": "..."}] # 不需要指定模型
)
这种转变将大幅降低 AI 应用开发的门槛——开发者不再需要成为模型专家,也能用上最好的 AI 能力组合。
8.3 多模型协作的新范式
Fugu 的架构代表了 2026 年 AI 领域的一个重要趋势:「模型协作」而非「单模型霸权」。
这与软件工程的历史规律完全一致:
- 单体应用 → 微服务(服务拆分)
- 通用数据库 → 专用数据库(数据拆分)
- 单一大模型 → 多模型协作系统(能力拆分)
每一次拆分,都带来了更高的效率和更低的成本。AI 领域正在经历同样的过程。
九、未来展望:Fugu 的演进方向
9.1 已知的 Roadmap
Sakana AI 在技术博客中透露了以下 roadmap:
- 本地部署版 Fugu(Q3 2026):支持企业将整个 Fugu 系统部署到自有基础设施,完全控制模型池和路由策略
- Fugu Studio:可视化路由调试工具,支持模拟不同任务下的路由决策
- 自定义路由模型:允许企业用自己的数据微调 Fugu 的路由决策模型
- 跨云路由:支持同时调用多个云服务商的模型,实现真正的「模型无关」架构
9.2 潜在竞争与威胁
Fugu 最大的潜在威胁不是来自同类产品,而是来自模型厂商的反击:
- OpenAI 可能会在 GPT-5.5 中内置类似的路由能力
- Anthropic 可能会推出 Claude 原生的多模型协作功能
- Google 可能会将 Gemini 的多模态路由能力进一步产品化
但 Sakana AI 的护城河在于:它的路由模型本身就是基于进化算法训练的,这使得它的路由决策可以在部署后持续自我优化,而不需要人工干预。这种自适应路由能力,是纯规则系统或简单 ML 模型难以复制的。
十、总结:智能路由时代的开启
Sakana AI Fugu 的发布,标志着大模型竞争从**「谁最强」** 进入 「谁最会搭配」 的新阶段。
这不仅是技术路线的演进,更是一种工程哲学的转变:不再迷信「越大越好」的 scaling 法则,而是用系统思维和进化算法找到更优雅的解法。
对于普通开发者,Fugu 带来的改变是切实的:10 行代码,就能用上目前最好的多模型协作系统。不需要理解 LangChain,不需要配置复杂的 Agent 框架,只需要描述你的需求,剩下的交给 Fugu。
对于整个 AI 行业,Fugu 预示了一个趋势:未来不会有单一的「最强大模型」,而是会有若干「最聪明的模型协作网络」。Fugu 正是这个趋势的早期实践者。
如果你还没体验过 Fugu,现在正是最好的时机——Sakana AI 为新用户提供了 10000 token 的免费试用额度。注册地址:https://fugu.sakana.ai
参考资料
- Sakana AI 官方博客 - "Introducing Fugu: Intelligent Multi-Model Orchestration"
- Sakana AI GitHub - SakanaAI/fugu repository
- IT之家 - "日本 Sakana 推 Fugu:智能调用最佳模型,部分场景优于 Fable 5" (2026-06-23)
- Sakana AI - "A Quest to Create a New Kind of Foundation Model Based on Nature-Inspired Intelligence"
- The AI Scientist - Sakana AI Research Paper (2024)
- Anthropic Fable 5 - Official Technical Documentation
- OpenAI GPT-5.5 System Card and Official Blog (2026-04-23)
- Sakana AI Fugu Technical Whitepaper (2026-06-22)
本文作者:程序员茄子 | 首发平台:程序员茄子 (chenxutan.com) | 禁止未经授权的转载