Skip to content

feat: upgrade MiniMax default model to M3#328

Open
octo-patch wants to merge 1 commit into
vxcontrol:mainfrom
octo-patch:feature/upgrade-minimax-m3
Open

feat: upgrade MiniMax default model to M3#328
octo-patch wants to merge 1 commit into
vxcontrol:mainfrom
octo-patch:feature/upgrade-minimax-m3

Conversation

@octo-patch

Copy link
Copy Markdown
Contributor

Summary

Add MiniMax provider to PentAGI with MiniMax-M3 as the default model, keeping MiniMax-M2.7 and MiniMax-M2.7-highspeed as alternatives.

Changes

  • Add new MiniMax provider package (backend/pkg/providers/minimax/) implementing the provider.Provider interface via the OpenAI-compatible https://api.minimax.io/v1 endpoint.
  • Set MiniMax-M3 as the default model for all agent types (simple, primary_agent, assistant, generator, refiner, adviser, reflector, searcher, enricher, coder, installer, pentester).
  • Keep MiniMax-M2.7 and MiniMax-M2.7-highspeed in the model list as alternatives.
  • Register ProviderMiniMax type, DefaultProviderNameMiniMax name, and wire the provider into NewProviderController / NewProvider / buildProviderFromConfig / buildProviderFromConfig / GetProvider paths.
  • Add env vars MINIMAX_API_KEY, MINIMAX_SERVER_URL (default https://api.minimax.io/v1), MINIMAX_PROVIDER and the matching secret pattern.
  • Add provider.ProviderMiniMax to the Valid() whitelist in pkg/server/models/providers.go (required for REST API acceptance).
  • Unit tests covering config loading, default-model sanity, models list (M3 first, no legacy M1/M2/M2.1/M2.5), model prefix behaviour, and missing-API-key error.

Why

MiniMax-M3 is MiniMax's latest flagship model (512K context, 128K max output, image input support) and is the right default for a security-testing workload that benefits from large context and multimodal input. MiniMax-M2.7 and its high-speed variant are retained for users who want to pin to the previous generation.

Model list

  • MiniMax-M3 (default) — 512K context, 128K output, image input, input $0.60 / output $2.40 per 1M tokens
  • MiniMax-M2.7 — input $0.40 / output $1.10
  • MiniMax-M2.7-highspeed — input $0.40 / output $1.10

No legacy models (MiniMax-M1 / MiniMax-M2 / MiniMax-M2.1 / MiniMax-M2.5) are included.

API docs

Testing

  • go test ./pkg/providers/minimax/... — 7/7 passing (config loading, provider type, models list with M3 as first entry, prefix behaviour, missing key, usage extraction).
  • go build ./pkg/providers/minimax/... — clean.

- Add MiniMax provider with M3 as the default model (512K context, 128K max output, image input support)
- Keep MiniMax-M2.7 and MiniMax-M2.7-highspeed as alternatives
- Configure agent defaults (simple, primary_agent, assistant, generator, etc.) on M3
- Register MiniMax provider type, env vars (MINIMAX_API_KEY, MINIMAX_SERVER_URL, MINIMAX_PROVIDER)
- Add unit tests covering config loading, models list, prefix behavior, and missing API key
sirozha pushed a commit that referenced this pull request Jun 18, 2026
Issue #321 requests a native Vertex AI provider with service-account /
ADC auth, opened after #310 clarified Vertex is not supported today. The
issue carries a full implementation outline and four open questions, and
the author asks for direction on adapter strategy and Gemini-vs-Claude
scope before implementing.

Add examples/proposals/vertex_ai_provider.md, a planning RFC that frames
the work before any code is written:

- Distinguishes the current options (AI Studio gemini, direct Anthropic,
  AWS Bedrock, and the custom OpenAI-compatible LiteLLM proxy workaround)
  from the proposed native vertex provider.
- Recommends a staged approach: v1 Gemini-on-Vertex with ADC /
  service-account auth; Claude-on-Vertex deferred to a maintainer
  decision, noting it likely belongs on the Anthropic adapter (Vertex
  auth/endpoint mode) rather than the Gemini-shaped path because the
  message schema differs.
- Models auth on the existing Bedrock multi-auth precedent (ADC default
  chain plus service-account file), and flags that service-account JSON
  is sensitive and must be file-mounted/secret-managed, never pasted into
  UI or logs.
- Captures config/migration touch points (provider checklist, REST
  Valid() whitelist, PROVIDER_TYPE enum-swap migration) so the eventual
  implementation size is clear, and restates the issue's open questions.

Docs/RFC only. No code, schema, migration, generated, frontend, or
provider runtime files are touched, and no new env vars or types are
added; every VERTEX_* key and type named is labeled as a candidate. No
overlap with the provider files in open PR #328.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant