GPT-OSS Plus Claude
Use GPT-OSS 120B on Groq as a separate stage before a Claude response.
A Groq-hosted reasoning model thinks; Claude writes the answer.
"""
Groq Reasoning Plus Claude
==========================
A Groq-hosted reasoning model thinks; Claude writes the answer.
"""
from agno.agent import Agent
from agno.models.anthropic import Claude
from agno.models.groq import Groq
# ---------------------------------------------------------------------------
# Create Agent
# ---------------------------------------------------------------------------
agent = Agent(
model=Claude(id="claude-sonnet-4-5"),
reasoning_model=Groq(
id="openai/gpt-oss-120b",
temperature=0.6,
max_tokens=1024,
top_p=0.95,
),
)
# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------
if __name__ == "__main__":
agent.print_response(
"9.11 and 9.9 -- which is bigger?",
stream=True,
show_full_reasoning=True,
)The current Groq adapter reads answer text but does not copy the provider's separate reasoning field into Agno reasoning output. When Groq is the explicit reasoning stage, Agno hands its answer text to the final model as a fallback. show_full_reasoning cannot recover the dropped provider field.
Run the Example
Set up your virtual environment
uv venv --python 3.12
source .venv/bin/activateInstall dependencies
uv pip install -U agno anthropic groqExport your API keys
export ANTHROPIC_API_KEY="your_anthropic_api_key_here"
export GROQ_API_KEY="your_groq_api_key_here"Run the example
Save the code above as deepseek_plus_claude.py, then run:
python deepseek_plus_claude.pyFull source: cookbook/10_reasoning/models/groq/deepseek_plus_claude.py