分派subagent似乎是错误用法,astra wait消耗了五小时额度的41.2%,佬们有没有什么办法来减少消耗

CarlosZ21210 2026-09-12 18:43 1

下午一个任务跑完了plus的五小时额度,我发现后面在等待一个luna high的subagent工作时,额度还在掉,于是查了一下本地会话。


按 token 数量:等待约占 Astra用量的 61.2%

把等待拆分开来:Astra 自身:47.1% 的 credits 是纯 timeout,49.6% 的 token 是纯 timeout。


等待占据5小时额度的41.2%,纯timeout的约为31.7%。


等待期间,astra会反复用wait agent进行轮询、启动。所以wait这个动作消耗了难以想象的token,根据等待subagent的时长有所增减。


我用的分配subagent的prompt是:

注意你的主要任务是分析、编排和验证,具体任务尽可能交给 subagent去执行,复杂度高的任务交给5.6sol high的subagent,简单或直接的任务交给luna high的subagent。自己只做需求澄清、方案拆解、任务分发和结果验收,实现类工作(读大量代码、写代码、跑测试、批量修改)一律用 Agent 工具派给 subagent 执行。


这是我本次任务消耗的token:


不知道佬们有没有什么办法能优化这个过程,还是说只让astra做规划文档,另开会话执行才是正解。

最新回复 (9)
  • sihasiha 09-12 18:46
    1

    只让astra做规划/验收,让他写好大致架构,规定好边界,然后剩下交给别的模型动手了

    直直用肯定受不了

  • 10p 09-12 18:46
    2

    倾向于是ai统计出错误结果 你可以单独翻原报文 等待应该不会占用那么多的

  • bfloat16 09-12 18:49
    3

    把codex代码拖下来改,先把内置工具,shell,mcp tool全改成阻塞,然后把wait改成触发一次强制等30秒,再触发一次强制等1分钟,上限为5分钟

    因为tool use wait也要上传全量的会话历史的

  • CarlosZ21210 楼主 09-12 18:50
    4

    每个步骤都有原数据,astra总token、wait消耗的token,每次wait消耗的token都有,分析确实是gpt帮我做的。如果是我的个例的话,我晚点再重算一次。

  • 长夜 09-12 18:56
    5

    用luna做调度主代理,让它不做工作,只进行调度,然偶区分4个角色,astra做架构师,sol做审计员,tertra做执行者,luna做查询者。


    主代理负责维持工作流本身即可。大部分的冗余工作都是发生在主代理,所以主代理用便宜模型比做贵模型的划算。

  • lanvent 09-12 19:09
    6

    你这个就是wait 触发的太频繁了,因为默认wait时间是30秒。根据官方的schema文档,把wait相关的timeout调高点,就能让它少调了。


    比如下面这样,调成默认5分钟,最长1小时


    [features.multi_agent_v2]
    enabled = true
    hide_spawn_agent_metadata = true
    max_concurrent_threads_per_session = 16
    min_wait_timeout_ms = 300000
    max_wait_timeout_ms = 3600000
    default_wait_timeout_ms = 3600000


    "MultiAgentV2ConfigToml": {
    "additionalProperties": false,
    "properties": {
    "default_wait_timeout_ms": {
    "format": "int64",
    "maximum": 3600000,
    "minimum": 0,
    "type": "integer"
    },
    "enabled": {
    "type": "boolean"
    },
    "expose_spawn_agent_model_overrides": {
    "description": "Exposes `model` and `reasoning_effort` on the multi-agent v2 spawn tool and adds corresponding guidance to root and subagent usage hints.",
    "type": "boolean"
    },
    "hide_spawn_agent_metadata": {
    "type": "boolean"
    },
    "max_concurrent_threads_per_session": {
    "format": "uint",
    "minimum": 1,
    "type": "integer"
    },
    "max_wait_timeout_ms": {
    "format": "int64",
    "maximum": 3600000,
    "minimum": 0,
    "type": "integer"
    },
    "min_wait_timeout_ms": {
    "format": "int64",
    "maximum": 3600000,
    "minimum": 0,
    "type": "integer"
    },
    "multi_agent_mode_hint_text": {
    "type": "string"
    },
    "non_code_mode_only": {
    "type": "boolean"
    },
    "root_agent_usage_hint_text": {
    "type": "string"
    },
    "subagent_developer_instructions": {
    "description": "Overrides inherited developer instructions for subagents without role-specific instructions.",
    "type": "string"
    },
    "subagent_usage_hint_text": {
    "type": "string"
    },
    "tool_namespace": {
    "maxLength": 64,
    "minLength": 1,
    "pattern": "^[a-zA-Z0-9_-]+$",
    "type": "string"
    },
    "usage_hint_enabled": {
    "description": "Deprecated compatibility field. Its value is ignored.",
    "type": "boolean"
    },
    "usage_hint_text": {
    "type": "string"
    },
    "wait_agent_enabled": {
    "description": "Expose the multi-agent v2 `wait_agent` tool.",
    "type": "boolean"
    }
    },
    "type": "object"
    }
  • 我是小鸭头 09-12 19:11
    7

    其实应该把astra做最后代码审查的子智能体和规划智能体吧

  • dcatfly 09-12 19:19
    9

    直接问 codex 为什么等待消耗了这么多 token 就行了,应该是没设置 wait agent timeout,默认是30s

  • xcxqd 09-12 19:23
    10

    让较低智力的模型作调度还是第一次听说,不过细想好像也有点道理,佬有什么数据支持吗?

* 帖子来源Linux.do
返回