using static AIStudio.Provider.Capability; namespace AIStudio.Models.MiniMax; /// /// MiniMax, whose M line thinks while it works. /// /// /// What MiniMax calls interleaved thinking is reasoning between the tool calls: it is part of the /// answer rather than something the request switches on, so the M models always think. The older /// Text-01 answers directly. /// public sealed class MiniMaxFamily : ModelFamily { /// public override ModelVendor Vendor => ModelVendor.MINIMAX; /// public override ModelSource Source => new("https://huggingface.co/MiniMaxAI", new DateOnly(2026, 9, 11), "Ported unchanged from the MiniMax block of ProviderExtensions.OpenSource.cs."); /// protected override void Declare(ModelFamilyBuilder builder) { builder.Rule("minimax").AsSubstring() .Capabilities(TEXT_INPUT | TEXT_OUTPUT | FUNCTION_CALLING) .Apis(CHAT_COMPLETION_API); builder.Rule("minimax-m").AsSubstring().Inherits() .Reasoning(ReasoningSupport.ALWAYS); } }