namespace AIStudio.Provider.Reasoning; /// /// One way of asking a request to think, and how to recognize it. /// /// /// A dialect reads parameters and says nothing else. It does not know which provider it is being /// asked for, it keeps no state, and it never looks at the model -- what a model is able to do comes /// from the rules, and mixing the two is what made the code this replaces hard to follow. /// public interface IReasoningDialect { /// /// Which dialect this is, which is also where it stands in the order. /// ReasoningDialect Dialect { get; } /// /// Reads what these parameters say about reasoning. /// /// The parsed additional API parameters. /// What they say, which is usually nothing. ReasoningConfigurationState Detect(IDictionary parameters); }