Use Canonical Models to set context window sizes (#6723)

This commit is contained in:
David Katz
2026-02-17 11:43:10 -05:00
committed by GitHub
parent 576590d4c8
commit 3959805198
54 changed files with 465 additions and 581 deletions
+113 -102
View File
@@ -741,6 +741,36 @@
}
}
},
"/config/canonical-model-info": {
"post": {
"tags": [
"super::routes::config_management"
],
"operationId": "get_canonical_model_info",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelInfoQuery"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Model information retrieved successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ModelInfoResponse"
}
}
}
}
}
}
},
"/config/check_provider": {
"post": {
"tags": [
@@ -1095,36 +1125,6 @@
}
}
},
"/config/pricing": {
"post": {
"tags": [
"super::routes::config_management"
],
"operationId": "get_pricing",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PricingQuery"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Model pricing data retrieved successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PricingResponse"
}
}
}
}
}
}
},
"/config/prompts": {
"get": {
"tags": [
@@ -5261,10 +5261,6 @@
"nullable": true,
"minimum": 0
},
"fast_model": {
"type": "string",
"nullable": true
},
"max_tokens": {
"type": "integer",
"format": "int32",
@@ -5334,6 +5330,89 @@
}
}
},
"ModelInfoData": {
"type": "object",
"required": [
"provider",
"model",
"context_limit",
"currency"
],
"properties": {
"cache_read_token_cost": {
"type": "number",
"format": "double",
"nullable": true
},
"cache_write_token_cost": {
"type": "number",
"format": "double",
"nullable": true
},
"context_limit": {
"type": "integer",
"minimum": 0
},
"currency": {
"type": "string"
},
"input_token_cost": {
"type": "number",
"format": "double",
"nullable": true
},
"max_output_tokens": {
"type": "integer",
"nullable": true,
"minimum": 0
},
"model": {
"type": "string"
},
"output_token_cost": {
"type": "number",
"format": "double",
"nullable": true
},
"provider": {
"type": "string"
}
}
},
"ModelInfoQuery": {
"type": "object",
"required": [
"provider",
"model"
],
"properties": {
"model": {
"type": "string"
},
"provider": {
"type": "string"
}
}
},
"ModelInfoResponse": {
"type": "object",
"required": [
"source"
],
"properties": {
"model_info": {
"allOf": [
{
"$ref": "#/components/schemas/ModelInfoData"
}
],
"nullable": true
},
"source": {
"type": "string"
}
}
},
"ParseRecipeRequest": {
"type": "object",
"required": [
@@ -5397,74 +5476,6 @@
}
}
},
"PricingData": {
"type": "object",
"required": [
"provider",
"model",
"input_token_cost",
"output_token_cost",
"currency"
],
"properties": {
"context_length": {
"type": "integer",
"format": "int32",
"nullable": true,
"minimum": 0
},
"currency": {
"type": "string"
},
"input_token_cost": {
"type": "number",
"format": "double"
},
"model": {
"type": "string"
},
"output_token_cost": {
"type": "number",
"format": "double"
},
"provider": {
"type": "string"
}
}
},
"PricingQuery": {
"type": "object",
"required": [
"provider",
"model"
],
"properties": {
"model": {
"type": "string"
},
"provider": {
"type": "string"
}
}
},
"PricingResponse": {
"type": "object",
"required": [
"pricing",
"source"
],
"properties": {
"pricing": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PricingData"
}
},
"source": {
"type": "string"
}
}
},
"PrincipalType": {
"type": "string",
"enum": [