mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2026-10-12 22:33:48 +00:00
Fixing some things left over
This commit is contained in:
1 parent
bbbcdddc91
commit
b28f2bcf6c
7 files changed
+147
-18
No files matched your search
@@ -146,21 +146,55 @@ public static partial class ProviderExtensions
|
||||
/// </remarks>
|
||||
private static ReasoningConfigurationState GetOpenAICompatibleReasoningState(IDictionary<string, object> parameters)
|
||||
{
|
||||
var reasoningState = ReasoningConfigurationState.NOT_CONFIGURED;
|
||||
var states = new List<ReasoningConfigurationState>();
|
||||
if (TryGetParameter(parameters, "reasoning", out var reasoning))
|
||||
{
|
||||
reasoningState = reasoning switch
|
||||
if (reasoning is IDictionary<string, object> reasoningObject)
|
||||
{
|
||||
IDictionary<string, object> reasoningObject when TryGetParameter(reasoningObject, "effort", out var effort) => GetLevelState(effort),
|
||||
IDictionary<string, object> reasoningObject when TryGetParameter(reasoningObject, "summary", out var summary) => GetLevelState(summary),
|
||||
IDictionary<string, object> => ReasoningConfigurationState.NOT_CONFIGURED,
|
||||
_ => GetLevelState(reasoning),
|
||||
};
|
||||
if (TryGetParameter(reasoningObject, "effort", out var effort))
|
||||
states.Add(GetLevelState(effort));
|
||||
|
||||
if (TryGetParameter(reasoningObject, "enabled", out var enabled))
|
||||
states.Add(GetLevelState(enabled));
|
||||
|
||||
if (TryGetParameter(reasoningObject, "max_tokens", out var maxTokens))
|
||||
states.Add(GetBudgetState(maxTokens));
|
||||
|
||||
if (TryGetParameter(reasoningObject, "summary", out var summary))
|
||||
states.Add(GetReasoningSummaryState(summary));
|
||||
|
||||
if (TryGetParameter(reasoningObject, "generate_summary", out var generateSummary))
|
||||
states.Add(GetReasoningSummaryState(generateSummary));
|
||||
}
|
||||
else
|
||||
states.Add(GetLevelState(reasoning));
|
||||
}
|
||||
|
||||
return MergeReasoningStates(reasoningState, GetReasoningEffortState(parameters));
|
||||
if (TryGetParameter(parameters, "include_reasoning", out var includeReasoning) &&
|
||||
GetLevelState(includeReasoning) is ReasoningConfigurationState.EXPLICITLY_ENABLED)
|
||||
states.Add(ReasoningConfigurationState.EXPLICITLY_ENABLED);
|
||||
|
||||
states.Add(GetReasoningEffortState(parameters));
|
||||
return MergeReasoningStates(states);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Detect summary settings that imply reasoning is enabled.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Turning a summary off controls visibility only and does not disable the model's reasoning.
|
||||
/// </remarks>
|
||||
private static ReasoningConfigurationState GetReasoningSummaryState(object? value) => value switch
|
||||
{
|
||||
string text when text.Equals("auto", StringComparison.OrdinalIgnoreCase) ||
|
||||
text.Equals("concise", StringComparison.OrdinalIgnoreCase) ||
|
||||
text.Equals("detailed", StringComparison.OrdinalIgnoreCase)
|
||||
=> ReasoningConfigurationState.EXPLICITLY_ENABLED,
|
||||
|
||||
true => ReasoningConfigurationState.EXPLICITLY_ENABLED,
|
||||
_ => ReasoningConfigurationState.NOT_CONFIGURED,
|
||||
};
|
||||
|
||||
/// <summary>
|
||||
/// Detect a top-level <c>reasoning_effort</c> parameter.
|
||||
/// </summary>
|
||||
@@ -444,6 +478,7 @@ public static partial class ProviderExtensions
|
||||
text.Equals("minimal", StringComparison.OrdinalIgnoreCase) ||
|
||||
text.Equals("medium", StringComparison.OrdinalIgnoreCase) ||
|
||||
text.Equals("high", StringComparison.OrdinalIgnoreCase) ||
|
||||
text.Equals("xhigh", StringComparison.OrdinalIgnoreCase) ||
|
||||
text.Equals("max", StringComparison.OrdinalIgnoreCase);
|
||||
}
|
||||
|
||||
@@ -516,4 +551,4 @@ public static partial class ProviderExtensions
|
||||
value = parameters[foundKey];
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user