华为云在全联接大会上把战略重心明确指向了“Agentic Cloud”。与传统云计算强调 CPU、GPU/NPU 数量和峰值算力不同,这次更值得关注的判断是:智能体时代的基础设施,需要“让每一个 Token 更高效”。与这一方向配套的灵衢昇腾 950 智算集群,摘要给出的商用节奏是国内 9 月 30 日、海外 11 月 30 日。
对开发团队来说,这不只是硬件升级。Agent 应用会反复调用模型、工具、知识库和其他智能体,基础设施必须同时解决推理吞吐、长上下文、任务成功率、故障恢复和成本可观测性等问题。
为什么不能只看峰值算力
普通在线推理通常可以抽象为“一次请求、一次响应”,但 Agent 工作流更像一张动态调用图:
- 模型理解目标并制定计划;
- 调用搜索、数据库或业务 API;
- 根据工具结果继续推理;
- 失败时重试或改写参数;
- 汇总上下文并生成最终结果。
一次用户任务可能触发十几次模型请求。此时,即使单次推理速度很快,过长的提示词、无效重试和膨胀的历史上下文仍会迅速消耗 Token。因此,“每一个 Token 更高效”至少应拆成以下几类指标:
- 交互延迟:首 Token 延迟、单轮响应时间和完整任务耗时;
- 有效吞吐:每秒生成 Token 数,以及单位时间完成的有效任务数;
- 任务消耗:每个成功任务使用的输入、输出和缓存 Token;
- 执行质量:工具调用成功率、任务成功率与人工接管率;
- 恢复成本:超时、重试、模型切换造成的额外 Token;
- 资源效率:不同并发量下的加速器利用率、队列等待时间和单位任务成本。
其中最容易误判的是吞吐量。一个系统即使能生成更多 Token,也不一定更高效;如果 Agent 因工具参数错误连续重试,增加的吞吐只是放大了浪费。生产评估应以“成功完成一个任务需要多少 Token、多少时间和多少次外部调用”为中心。
灵衢昇腾 950 应放在整条 Agent 链路中评估
从来源摘要可以确认的是,灵衢昇腾 950 智算集群是华为云 Agentic Cloud 战略中的关键基础设施,并给出了国内和海外的商用节点。摘要没有披露完整的硬件规格、网络拓扑或服务接口,因此不能仅凭名称推导具体性能。
更稳妥的评估方法,是把智算集群放进真实业务链路,而不是只运行单轮模型压测。测试集至少应覆盖:
- 短对话与长上下文请求;
- 高并发批量推理;
- 多轮工具调用;
- RAG 检索与文档重排;
- 多智能体协作;
- 节点故障、请求超时和限流场景;
- 国内与海外区域的网络延迟和数据合规要求。
对于计划全球部署的团队,海外商用并不自动等于应用可以无差别迁移。还要确认模型版本、API 能力、区域配额、日志存储位置、密钥管理方式以及跨区域调用成本是否一致。
用任务级脚本测量 Token 效率
如果服务提供 OpenAI 兼容或相似的聊天接口,可以用下面的脚本建立一个最小基线。这里明确做一个实践假设:接口路径为 /v1/chat/completions,响应包含 usage.prompt_tokens、usage.completion_tokens 和 usage.total_tokens。实际接入灵衢昇腾 950 相关服务时,需要按照云端文档修改地址、模型名称、认证方式和响应字段。
运行前安装依赖并设置环境变量:
python -m pip install requests
export LLM_BASE_URL="https://your-endpoint.example.com"
export LLM_API_KEY="replace-with-your-key"
export LLM_MODEL="your-model-name"
python benchmark_agent_tokens.py
将下面内容保存为 benchmark_agent_tokens.py:
import math
import os
import statistics
import time
import requests
BASE_URL = os.environ["LLM_BASE_URL"].rstrip("/")
API_KEY = os.environ["LLM_API_KEY"]
MODEL = os.environ["LLM_MODEL"]
RUNS = int(os.getenv("BENCHMARK_RUNS", "5"))
TASK = """你是运维智能体。请分析以下告警,并只返回三项内容:
1. 最可能原因;
2. 两条验证命令;
3. 一条低风险恢复建议。
告警:订单服务过去 5 分钟 HTTP 5xx 从 0.2% 升至 8%,数据库连接池使用率为 98%。
"""
def percentile(values, ratio):
ordered = sorted(values)
index = max(0, math.ceil(len(ordered) * ratio) - 1)
return ordered[index]
def invoke():
started = time.perf_counter()
response = requests.post(
f"{BASE_URL}/v1/chat/completions",
headers={
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json",
},
json={
"model": MODEL,
"messages": [{"role": "user", "content": TASK}],
"temperature": 0,
"max_tokens": 300,
},
timeout=120,
)
latency = time.perf_counter() - started
response.raise_for_status()
data = response.json()
usage = data.get("usage", {})
return {
"latency": latency,
"prompt_tokens": usage.get("prompt_tokens", 0),
"completion_tokens": usage.get("completion_tokens", 0),
"total_tokens": usage.get("total_tokens", 0),
"answer": data["choices"][0]["message"]["content"],
}
def main():
results = []
for number in range(1, RUNS + 1):
try:
result = invoke()
results.append(result)
print(
f"run={number} latency={result['latency']:.2f}s "
f"tokens={result['total_tokens']}"
)
except Exception as exc:
print(f"run={number} failed: {exc}")
if not results:
raise SystemExit("No successful request")
latencies = [item["latency"] for item in results]
total_tokens = sum(item["total_tokens"] for item in results)
total_time = sum(latencies)
print("\n--- summary ---")
print(f"success_rate={len(results) / RUNS:.2%}")
print(f"latency_p50={statistics.median(latencies):.2f}s")
print(f"latency_p95={percentile(latencies, 0.95):.2f}s")
print(f"avg_tokens_per_request={total_tokens / len(results):.1f}")
print(f"aggregate_tokens_per_second={total_tokens / total_time:.2f}")
print("\nlast_answer:\n" + results[-1]["answer"])
if __name__ == "__main__":
main()
这个脚本适合验证接口连通性和建立初始基线,但它还不是完整的 Agent 评测。接入真实工具后,建议为每次任务补充以下字段:
{
"task_id": "incident-2025-001",
"task_success": true,
"model_calls": 4,
"tool_calls": 3,
"retry_count": 1,
"input_tokens": 6820,
"output_tokens": 940,
"duration_ms": 12840,
"human_handoff": false
}
随后可以直接计算每个成功任务的平均 Token 数:
tokens_per_successful_task = 总 Token 数 / 成功任务数
相比单纯报告每秒 Token,这个指标更接近 Agent 系统的实际业务效率。还可以继续加入正确性评分、单位任务价格和缓存命中率,避免模型通过缩短答案换取表面上的低消耗。
真正的优化通常发生在模型之外
基础设施决定效率上限,应用架构则决定团队能否接近这个上限。常见的 Token 优化手段包括:
- 对工具返回值做字段裁剪,不把完整数据库记录塞回上下文;
- 将固定系统提示词模板化,利用服务支持的提示词缓存;
- 对长对话做结构化摘要,而不是无限追加历史消息;
- 给工具调用设置明确的超时、重试次数和幂等键;
- 用小模型完成分类、路由和参数检查,把复杂推理交给更强模型;
- 对 RAG 设置召回数量上限,并通过重排减少无关文档;
- 为不同任务设置独立的最大输出 Token,避免统一使用过大的默认值。
这些措施往往比单纯提高硬件配额更直接。比如,把一次工具返回从 50 KB 裁剪到 5 KB,不仅减少输入 Token,也降低网络传输、上下文解析和后续推理负担。
上线前的决策清单
灵衢昇腾 950 智算集群的国内与海外商用安排,为需要跨区域部署的 Agent 应用提供了新的基础设施选项。不过,是否迁移或采用,仍应通过业务负载验证。
上线前可以逐项确认:
- 是否使用真实 Agent 任务,而非只做单轮文本生成压测;
- 是否同时记录延迟、任务成功率、Token 消耗和工具调用次数;
- 模型、SDK 与 API 是否具备可迁移性,是否绑定特定接口;
- 峰值并发下是否存在排队、限流或重试放大;
- 国内外区域在模型版本、配额和功能上是否一致;
- 日志、提示词、工具结果是否满足数据驻留和隐私要求;
- 故障时能否切换区域、模型或推理端点;
- 成本核算是否落实到“每个成功任务”,而不是只看资源单价。
Agentic Cloud 的关键变化,并不是给传统云服务换一个新名字,而是把基础设施评价单位从“拥有多少算力”推进到“完成多少有效智能任务”。对工程团队而言,最有价值的动作是尽早建立任务级基线:同一批数据、同一套工具、同一个成功标准,然后比较不同模型、集群和工作流的 Token 效率。