百度 Create2026 开发者大会上,李彦宏抛出了一个值得所有 AI 平台从业者咀嚼的判断:Token 衡量的是投入,不是产出;AI 时代的核心指标应该是 DAA——日活智能体数(Daily Active Agents)。
这不是一个口号,而是对当前行业度量体系的一次纠偏。如果你在做 AI 平台、Agent 框架或企业内部 AI 中台,这篇文章帮你厘清:为什么 Token 指标会误导决策,DAA 指标怎么定义,以及怎么在你的系统里落地采集。
Token 说了成本,没说价值
当前行业最常被引用的指标是 Token 消耗量——模型调用了多少 Token、推理吞吐多少 Token/s、每百万 Token 多少钱。这些数字对算力规划和成本核算有用,但用来衡量生态繁荣就会失焦:
- Token 是供给侧视角。 一万次无效调用和一万次精准调用消耗的 Token 可能一样多,但价值截然不同。
- Token 不区分"谁在用"。 一个高频调用的脚本和十个不同用户驱动的 Agent,Token 量可能相同,生态意义完全不同。
- Token 容易被刷量。 循环调用同一个 Prompt 就能拉高 Token,但不会带来任何真实使用。
李彦宏的类比很直接:移动互联网时代没人用"服务器请求量"衡量一个 App 的成功,大家看的是 DAU。Token 就是 AI 时代的"请求量",DAA 才是真正的"日活"。
DAA 的定义:从 DAU 到 Daily Active Agents
DAA 借用了 DAU 的逻辑,但对象从"人"变成了"智能体"。一个 Agent 算"日活",至少要满足三个条件:
- 独立身份——有明确的 Agent ID,不是匿名的一次性调用。
- 主动触发——当天至少被用户或外部事件调用过一次,不是被动注册未运行。
- 完成闭环——调用产生了可观测的输出(回复、动作、数据写入),而不是中途失败或空转。
这三条过滤掉了"注册未用""调用失败""循环刷量"等噪音,让 DAA 反映的是真正在运转的智能体数量。
实操:在你的 Agent 平台里采集 DAA
下面给出一个最小可运行的 DAA 采集方案。假设你的 Agent 平台每次调用会写一条日志到数据库,核心逻辑是:按天聚合,过滤出满足"日活"条件的 Agent。
数据模型与采集脚本
"""
DAA 采集与计算示例
依赖: pip install sqlalchemy psycopg2-binary
假设: Agent 调用日志表 agent_call_log 已存在
"""
from datetime import date, timedelta
from sqlalchemy import create_engine, text
# ---- 1. 日志表结构(首次运行时建表) ----
DDL = """
CREATE TABLE IF NOT EXISTS agent_call_log (
id BIGSERIAL PRIMARY KEY,
agent_id VARCHAR(64) NOT NULL, -- 智能体唯一标识
user_id VARCHAR(64) NOT NULL, -- 调用者标识
called_at TIMESTAMP NOT NULL, -- 调用时间
status VARCHAR(16) NOT NULL, -- 'success' | 'failed' | 'empty'
output_tokens INTEGER NOT NULL DEFAULT 0,
input_tokens INTEGER NOT NULL DEFAULT 0
);
"""
# ---- 2. DAA 计算查询 ----
DAA_QUERY = """
WITH daily_calls AS (
SELECT
agent_id,
DATE(called_at) AS call_date,
COUNT(*) AS total_calls,
SUM(CASE WHEN status = 'success' THEN 1 ELSE 0 END) AS success_calls,
SUM(output_tokens) AS total_output_tokens
FROM agent_call_log
WHERE called_at >= :start_date AND called_at < :end_date
GROUP BY agent_id, DATE(called_at)
)
SELECT
call_date,
COUNT(agent_id) AS daa, -- 日活智能体数
SUM(success_calls) AS total_success_calls,
SUM(total_output_tokens) AS total_output_tokens
FROM daily_calls
WHERE success_calls > 0 -- 过滤: 至少一次成功调用
GROUP BY call_date
ORDER BY call_date;
"""
engine = create_engine("postgresql://user:pass@localhost/agent_platform")
# 建表
with engine.begin() as conn:
conn.execute(text(DDL))
# 计算昨天的 DAA
yesterday = date.today() - timedelta(days=1)
with engine.connect() as conn:
rows = conn.execute(text(DAA_QUERY), {
"start_date": yesterday,
"end_date": date.today(),
}).fetchall()
for row in rows:
print(f"日期: {row[0]} DAA: {row[1]} 成功调用: {row[2]} 输出Token: {row[3]}")
模拟写入一条调用日志
"""写入示例——一次成功的 Agent 调用"""
from datetime import datetime
INSERT = """
INSERT INTO agent_call_log (agent_id, user_id, called_at, status, output_tokens, input_tokens)
VALUES (:agent_id, :user_id, :called_at, :status, :output_tokens, :input_tokens);
"""
with engine.begin() as conn:
conn.execute(text(INSERT), {
"agent_id": "weather-bot-001",
"user_id": "user-42",
"called_at": datetime.now(),
"status": "success",
"output_tokens": 320,
"input_tokens": 150,
})
运行前把 postgresql://user:pass@localhost/agent_platform 替换成你自己的数据库连接串。这套方案的核心思路是:日志表记录每次调用的结果状态,聚合时只计入当天至少有一次 success 的 Agent——这正是 DAA 定义中"完成闭环"的落地方式。
DAA 指标的边界与陷阱
DAA 不是万能指标,落地时有几个值得警惕的点:
Agent 粒度怎么定? 一个"客服机器人"如果配置了 10 个不同技能分支,算 1 个 Agent 还是 10 个?粒度太粗,DAA 数字虚低;粒度太细,DAA 数字虚高。建议以独立部署单元 + 独立 Agent ID 为最小粒度,技能分支不算独立 Agent。
"日活"门槛要不要设下限? 一个 Agent 当天只被调用 1 次,算日活吗?移动互联网里 DAU 通常没有调用次数下限,DAA 初期也可以不设。但如果发现大量"注册即遗忘"的 Agent 拉高了 DAA,可以加一个 success_calls >= 3 的门槛做二次过滤。
DAA 和 Token 不是对立关系。 Token 仍然是成本核算的核心指标。健康的生态应该呈现 DAA 上升 + 单 Agent 平均 Token 下降——更多智能体在运转,但每个智能体的单次调用更高效。如果 DAA 涨了、总 Token 也暴涨,说明智能体在"烧量"而非"提效"。
跨平台 DAA 目前无法对齐。 不同平台对"Agent"的定义、对"成功调用"的判定标准不同,DAA 数字之间不能直接比较。现阶段 DAA 更适合做平台内部的趋势指标,而不是跨平台的排名标尺。
一份 DAA 落地检查清单
如果你准备在团队或平台里引入 DAA,可以按这个清单推进:
- [ ] 每个 Agent 有唯一 ID,且 ID 与部署单元绑定(不是与 Prompt 模板绑定)
- [ ] 每次调用记录
agent_id、called_at、status(success/failed/empty) - [ ] 聚合逻辑过滤掉
success_calls = 0的 Agent - [ ] 同时保留 Token 指标做成本侧参照,形成"DAA + 人均 Token"的双指标看板
- [ ] 每周复盘 DAA 增速与 Agent 注销速率,判断是"真增长"还是"注册泡沫"
- [ ] 对外公布 DAA 时注明统计口径(粒度、门槛、过滤规则),避免误导对比
李彦宏把 DAA 摆到台面上,本质是在提醒行业:别用成本指标假装在衡量价值。 Token 告诉你烧了多少算力,DAA 告诉你有多少智能体真正在替人干活。两者搭配看,才能判断一个 AI 生态是在繁荣还是在空转。