using static AIStudio.Provider.Capability; namespace AIStudio.Models.Alibaba; /// /// QwQ as everybody except Alibaba Cloud serves it: the open weights built on Qwen 2.5. /// /// /// The other half of the contradiction the provider-bound rules exist for. What Model Studio sells /// as "qwq-plus" is a commercial model; QwQ-32B, which the gateways and the local engines serve, is /// the published checkpoint. The two share a family name and nothing else. /// /// Both answer the same here, and for the same reason: neither the model card nor Alibaba's list of /// models which call functions mentions tools at all. Anybody who knows better says so in the /// expert settings. /// public sealed class QwqFamily : ModelFamily { /// public override ModelVendor Vendor => ModelVendor.ALIBABA; /// public override ModelSource Source => new("https://huggingface.co/Qwen/QwQ-32B", new DateOnly(2026, 9, 11), "Ported unchanged from the QwQ check of ProviderExtensions.OpenSource.cs: text in, text out, thinking which cannot be switched off, and no tools."); /// protected override void Declare(ModelFamilyBuilder builder) => builder.Rule("qwq").AsSegment() .Capabilities(TEXT_INPUT | TEXT_OUTPUT) .Apis(CHAT_COMPLETION_API) .Reasoning(ReasoningSupport.ALWAYS); }