Skip to content

Commit 3cb5cad

Browse files
author
Mateusz
committed
fix(codex): honor pre-resolved URI params and skip parse without query
Read _resolved_uri_params from extra_body before parsing. When the model string has no '?', strip vendor prefix only and avoid parse_model_with_params. When query params exist, parse and merge only if pre-resolved params were not supplied. Made-with: Cursor
1 parent 2c755c8 commit 3cb5cad

1 file changed

Lines changed: 30 additions & 14 deletions

File tree

src/connectors/_openai_codex_connector.py

Lines changed: 30 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1932,21 +1932,37 @@ async def chat_completions(
19321932
if ":" in model_for_parsing and not model_for_parsing.startswith("openai/"):
19331933
model_for_parsing = model_for_parsing.split(":", 1)[1]
19341934

1935-
try:
1936-
parsed = parse_model_with_params(model_for_parsing)
1937-
_, parsed_model, uri_params = (
1938-
parsed.backend_type,
1939-
parsed.model_name,
1940-
parsed.uri_params,
1935+
extra_body_early = getattr(request_data, "extra_body", None) or {}
1936+
pre_resolved_uri = extra_body_early.get("_resolved_uri_params")
1937+
if isinstance(pre_resolved_uri, dict) and pre_resolved_uri:
1938+
uri_params = dict(pre_resolved_uri)
1939+
1940+
if "?" not in model_for_parsing:
1941+
effective_model = strip_vendor_prefix(
1942+
model_for_parsing, OPENAI_VENDOR_PREFIX
19411943
)
1942-
effective_model = strip_vendor_prefix(parsed_model, OPENAI_VENDOR_PREFIX)
1943-
except Exception as exc:
1944-
logger.debug("Failed to parse model URI params: %s", exc, exc_info=True)
1945-
if ":" in effective_model:
1946-
effective_model = effective_model.split(":", 1)[1]
1947-
effective_model = strip_vendor_prefix(effective_model, OPENAI_VENDOR_PREFIX)
1948-
if "?" in effective_model:
1949-
effective_model = effective_model.split("?", 1)[0]
1944+
else:
1945+
try:
1946+
parsed = parse_model_with_params(model_for_parsing)
1947+
_, parsed_model, parsed_uri = (
1948+
parsed.backend_type,
1949+
parsed.model_name,
1950+
parsed.uri_params,
1951+
)
1952+
if not uri_params:
1953+
uri_params = parsed_uri
1954+
effective_model = strip_vendor_prefix(
1955+
parsed_model, OPENAI_VENDOR_PREFIX
1956+
)
1957+
except Exception as exc:
1958+
logger.debug("Failed to parse model URI params: %s", exc, exc_info=True)
1959+
if ":" in effective_model:
1960+
effective_model = effective_model.split(":", 1)[1]
1961+
effective_model = strip_vendor_prefix(
1962+
effective_model, OPENAI_VENDOR_PREFIX
1963+
)
1964+
if "?" in effective_model:
1965+
effective_model = effective_model.split("?", 1)[0]
19501966

19511967
resolved_reasoning_effort = self._resolve_reasoning_effort(
19521968
effective_model, uri_params, request_data

0 commit comments

Comments
 (0)