Enum ReasoningLevel
- Namespace
- LMKit.TextGeneration.Chat
- Assembly
- LM-Kit.NET.dll
Controls how much deliberate reasoning a model is encouraged to use. This value is a hint to the model/runtime (not a guarantee) and can be surfaced in prompts or runtime settings to bias response style/latency.
public enum ReasoningLevel
Fields
None = 0Do not include any explicit “reasoning effort” hint. Lets the model/runtime choose its own level, or use product defaults.
Low = 1Minimal internal deliberation. Best for simple lookups, short answers, or latency-sensitive paths.
Medium = 2Balanced speed/quality suitable for most requests that need some multi-step thinking without heavy planning.
High = 3Increased internal deliberation for complex tasks (planning, tricky logic/math, multi-constraint synthesis). May increase latency and token usage.
Examples
Enabling chain-of-thought reasoning in a conversation:
using LMKit.Model;
using LMKit.TextGeneration;
using LMKit.TextGeneration.Chat;
using var model = LM.LoadFromModelID("qwen3:8b");
var conversation = new MultiTurnConversation(model)
{
ReasoningLevel = ReasoningLevel.High
};
var result = conversation.Submit("Solve: if 3x + 7 = 22, what is x?");
Console.WriteLine(result.Completion);
Remarks
When set to None, LM-Kit should omit any explicit “reasoning effort” hint. Use this when you want the model to decide its own internal effort or when targeting models that don’t expose a reasoning knob.
Typical interpretations: