Add unified thinking effort control across all providers (#9242)
Signed-off-by: jh-block <jhugo@block.xyz> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -818,6 +818,10 @@ export type ModelInfo = {
|
||||
* Cost per token for output in USD (optional)
|
||||
*/
|
||||
output_token_cost?: number | null;
|
||||
/**
|
||||
* Whether this model supports reasoning/thinking controls
|
||||
*/
|
||||
reasoning?: boolean;
|
||||
/**
|
||||
* Whether this model supports cache control
|
||||
*/
|
||||
@@ -834,6 +838,7 @@ export type ModelInfoData = {
|
||||
model: string;
|
||||
output_token_cost?: number | null;
|
||||
provider: string;
|
||||
reasoning: boolean;
|
||||
};
|
||||
|
||||
export type ModelInfoQuery = {
|
||||
@@ -1000,6 +1005,10 @@ export type ProviderMetadata = {
|
||||
setup_steps?: Array<string>;
|
||||
};
|
||||
|
||||
export type ProviderModelInfoQuery = {
|
||||
model: string;
|
||||
};
|
||||
|
||||
export type ProviderTemplate = {
|
||||
api_url: string;
|
||||
doc_url: string;
|
||||
@@ -1482,6 +1491,8 @@ export type ThinkingContent = {
|
||||
thinking: string;
|
||||
};
|
||||
|
||||
export type ThinkingEffort = 'off' | 'low' | 'medium' | 'high' | 'max';
|
||||
|
||||
export type TokenState = {
|
||||
accumulatedCost?: number | null;
|
||||
accumulatedInputTokens: number;
|
||||
@@ -2728,6 +2739,42 @@ export type CleanupProviderCacheResponses = {
|
||||
|
||||
export type CleanupProviderCacheResponse = CleanupProviderCacheResponses[keyof CleanupProviderCacheResponses];
|
||||
|
||||
export type GetProviderModelInfoData = {
|
||||
body: ProviderModelInfoQuery;
|
||||
path: {
|
||||
/**
|
||||
* Provider name (e.g., openai)
|
||||
*/
|
||||
name: string;
|
||||
};
|
||||
query?: never;
|
||||
url: '/config/providers/{name}/model-info';
|
||||
};
|
||||
|
||||
export type GetProviderModelInfoErrors = {
|
||||
/**
|
||||
* Unknown provider, provider not configured, or authentication error
|
||||
*/
|
||||
400: unknown;
|
||||
/**
|
||||
* Rate limit exceeded
|
||||
*/
|
||||
429: unknown;
|
||||
/**
|
||||
* Internal server error
|
||||
*/
|
||||
500: unknown;
|
||||
};
|
||||
|
||||
export type GetProviderModelInfoResponses = {
|
||||
/**
|
||||
* Model metadata fetched successfully
|
||||
*/
|
||||
200: ModelInfo;
|
||||
};
|
||||
|
||||
export type GetProviderModelInfoResponse = GetProviderModelInfoResponses[keyof GetProviderModelInfoResponses];
|
||||
|
||||
export type GetProviderModelsData = {
|
||||
body?: never;
|
||||
path: {
|
||||
@@ -2759,7 +2806,7 @@ export type GetProviderModelsResponses = {
|
||||
/**
|
||||
* Models fetched successfully
|
||||
*/
|
||||
200: Array<string>;
|
||||
200: Array<ModelInfo>;
|
||||
};
|
||||
|
||||
export type GetProviderModelsResponse = GetProviderModelsResponses[keyof GetProviderModelsResponses];
|
||||
|
||||
Reference in New Issue
Block a user