Skip to content

GEAK orchestrator requires native Anthropic tool-calling (OpenAI-translation gateway loops to budget) #262

Description

@iraj465

[GEAK] DOC/ISSUE — orchestrator requires native Anthropic tool-calling; OpenAI-translation gateways silently break the loop

  • Type: ISSUE (doc + guard)
  • Target repo: AMD-AGI/GEAK
  • Status: PREPARED ON DISK — not filed (gh not authenticated; origin is a local clone with no writable upstream).

Problem

The GEAK orchestrator depends on native Anthropic tool-calling (tool_use / tool_result round-tripping). When the model is routed through an OpenAI-translation gateway (Anthropic-shaped tool calls translated to/from the OpenAI function-calling schema), the tool calls do not round-trip: the agent emits a tool call, the translated response loses or malforms the tool_use block, and the agent never receives a usable tool_result. The loop makes no progress and runs to its call budget producing 0 artifacts.

Evidence

  • Via an OpenAI-translation gateway: observed ~79 LLM calls, 0 artifacts — the agent looped to budget without a single successful tool round-trip.
  • Via native Anthropic (model_class = amd_llm): tool_use round-trips correctly and the agent produces artifacts / reaches optimization rounds.

Recommendation

  1. Docs: state explicitly that GEAK's orchestrator requires a model endpoint with native Anthropic tool-calling. Route the model via your normal SAFE / AMD-LLM gateway (model_class = amd_llm), not via an OpenAI-function-calling translation shim.
  2. Guard: at startup, probe the configured endpoint with a trivial tool_use round-trip; if the tool_result does not come back well-formed, fail fast with a clear error ("endpoint does not support native Anthropic tool-calling; use an Anthropic-native / amd_llm route") instead of silently looping to budget.
  3. Optionally surface a per-run counter "tool calls issued vs tool results received"; a large gap is the signature of a broken translation layer.

Note: routing is described generically here (use your normal SAFE/AMD-LLM gateway). No node-specific proxy/workaround is involved.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions