feat(agent): Comprehensive reasoning token support across providers

Added provider-specific reasoning/thinking token support for:
- OpenAI (o1, o3, gpt-5): Full reasoning events via Responses API, token counts via Chat Completions
- Groq: reasoning_format:"parsed" for Chat Completions, no summary support for Responses
- Gemini 2.5: extra_body.google.thinking_config with <thought> tag extraction
- OpenRouter: Unified reasoning parameter with message.reasoning field
- Anthropic: Limited support via OpenAI compatibility layer

Key improvements:
- Centralized provider detection based on baseURL
- parseReasoningFromMessage() extracts provider-specific reasoning content
- adjustRequestForProvider() handles provider-specific request modifications
- Smart reasoning support detection with caching per API type
- Comprehensive README documentation with provider support matrix

Fixes reasoning tokens not appearing for GPT-5 and other reasoning models.
This commit is contained in:
Mario Zechner 2025-08-10 01:46:15 +02:00
parent 62d9eefc2a
commit 99ce76d66e
5 changed files with 345 additions and 58 deletions

View file

@ -6,7 +6,7 @@ A comprehensive toolkit for managing Large Language Model (LLM) deployments and
- Terminal UI framework with differential rendering and interactive components
- AI agent framework with tool calling, session persistence, and multiple renderers
- GPU pod management CLI for automated vLLM deployment on various providers
- Support for OpenAI, Anthropic, Groq, OpenRouter, and compatible APIs
- Support for OpenAI, Anthropic, Groq, OpenRouter, Gemini, and compatible APIs
- Built-in file system tools for agentic AI capabilities
## Tech Stack