feat(providers): add extra_query config for OpenAI-compatible providers

Adds ProviderConfig.extra_query, threaded into AsyncOpenAI(default_query)
so that Azure-style gateways requiring query params like api-version can
be configured without URL hacks.

Also updates provider_signature to track extra_query changes so per-turn
refresh rebuilds the provider when the value changes.

Addresses the extra_query portion of #4204. The max_completion_tokens
model-awareness enhancement is intentionally left separate.
This commit is contained in:
axelray-dev
2026-06-09 03:18:14 +08:00
committed by Xubin Ren
parent 9c81280300
commit 28f3a20d64
5 changed files with 109 additions and 1 deletions
+1
View File
@@ -183,6 +183,7 @@ class ProviderConfig(Base):
api_type: Literal["auto", "chat_completions", "responses"] = "auto" # Request API surface
extra_headers: dict[str, str] | None = None # Custom headers (e.g. APP-Code for AiHubMix)
extra_body: dict[str, Any] | None = None # Extra provider request fields; shape depends on provider/API surface
extra_query: dict[str, str] | None = None # Extra query params (e.g. api-version for Azure-style gateways)
class BedrockProviderConfig(ProviderConfig):