fix(model): route chat_optimizer through minimax_chat (not just chat_target) (#116)
Two missing pieces in the minimax_chat dispatch chain: 1. minimax_backend.py did not define chat_optimizer or chat_optimizer_messages; only chat_target / chat_target_messages existed. Any caller using optimizer_backend='minimax_chat' would hit AttributeError or fall through to _openai (Azure). 2. skillopt/model/__init__.py's chat_optimizer and chat_optimizer_messages dispatchers checked claude_chat and qwen_chat but not minimax_chat, so minimax_chat callers would silently fall through to _openai.chat_optimizer (the Azure path), which fails with 'Azure OpenAI endpoint is not configured' on any setup without AZURE_OPENAI_* env vars. Adds chat_optimizer to minimax_backend.py (mirrors chat_target via _chat_messages_impl) and minimax_chat branches to both chat_optimizer / chat_optimizer_messages dispatchers. Verified locally: 1-epoch training on a 4-item SearchQA-format dataset went from '[skip] no usable patches — skill unchanged' (baseline fallback) to a successful accept_new_best with success_patches=1 per step. Co-authored-by: Mavis (MiniMax) <Mavis@MiniMax.local> Co-authored-by: jc <jc@users.noreply.github.com>
This commit is contained in:
@@ -105,6 +105,16 @@ def chat_optimizer(
|
||||
reasoning_effort=reasoning_effort,
|
||||
timeout=timeout,
|
||||
)
|
||||
if get_optimizer_backend() == "minimax_chat":
|
||||
return _minimax.chat_optimizer(
|
||||
system=system,
|
||||
user=user,
|
||||
max_completion_tokens=max_completion_tokens,
|
||||
retries=retries,
|
||||
stage=stage,
|
||||
reasoning_effort=reasoning_effort,
|
||||
timeout=timeout,
|
||||
)
|
||||
return _openai.chat_optimizer(
|
||||
system=system,
|
||||
user=user,
|
||||
@@ -204,6 +214,18 @@ def chat_optimizer_messages(
|
||||
return_message=return_message,
|
||||
timeout=timeout,
|
||||
)
|
||||
if get_optimizer_backend() == "minimax_chat":
|
||||
return _minimax.chat_target_messages(
|
||||
messages=messages,
|
||||
max_completion_tokens=max_completion_tokens,
|
||||
retries=retries,
|
||||
stage=stage,
|
||||
reasoning_effort=reasoning_effort,
|
||||
tools=tools,
|
||||
tool_choice=tool_choice,
|
||||
return_message=return_message,
|
||||
timeout=timeout,
|
||||
)
|
||||
return _openai.chat_optimizer_messages(
|
||||
messages=messages,
|
||||
max_completion_tokens=max_completion_tokens,
|
||||
|
||||
Reference in New Issue
Block a user