2025-07-23 18:25:15 +00:00
{
"type" : "object" ,
"title" : "LanguageModel" ,
"definitions" : {
2025-07-23 23:53:43 +00:00
"AmazonBedrockLanguageModel" : {
2025-07-23 18:25:15 +00:00
"type" : "object" ,
"properties" : {
"provider" : {
2025-07-23 23:53:43 +00:00
"const" : "amazon-bedrock" ,
"description" : "Amazon Bedrock Configuration"
2025-07-23 18:25:15 +00:00
} ,
"model" : {
"type" : "string" ,
2025-07-23 23:53:43 +00:00
"description" : "The name of the language model."
} ,
"displayName" : {
"type" : "string" ,
"description" : "Optional display name."
} ,
"accessKeyId" : {
"$ref" : "./shared.json#/definitions/Token" ,
"description" : "Optional access key ID to use with the model. Defaults to the `AWS_ACCESS_KEY_ID` environment variable."
} ,
"accessKeySecret" : {
"$ref" : "./shared.json#/definitions/Token" ,
"description" : "Optional secret access key to use with the model. Defaults to the `AWS_SECRET_ACCESS_KEY` environment variable."
} ,
2025-08-25 14:32:59 +00:00
"sessionToken" : {
"$ref" : "./shared.json#/definitions/Token" ,
"description" : "Optional session token to use with the model. Defaults to the `AWS_SESSION_TOKEN` environment variable."
} ,
2025-07-23 23:53:43 +00:00
"region" : {
"type" : "string" ,
"description" : "The AWS region. Defaults to the `AWS_REGION` environment variable." ,
2025-07-23 18:25:15 +00:00
"examples" : [
2025-07-23 23:53:43 +00:00
"us-east-1" ,
"us-west-2" ,
"eu-west-1"
2025-07-23 18:25:15 +00:00
]
} ,
2025-07-23 23:53:43 +00:00
"baseUrl" : {
"type" : "string" ,
"format" : "url" ,
"pattern" : "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$" ,
"description" : "Optional base URL."
2025-08-08 21:49:00 +00:00
} ,
"headers" : {
"$ref" : "./shared.json#/definitions/LanguageModelHeaders"
2025-07-23 23:53:43 +00:00
}
} ,
"required" : [
"provider" ,
"model"
] ,
"additionalProperties" : false
} ,
"AnthropicLanguageModel" : {
"type" : "object" ,
"properties" : {
"provider" : {
"const" : "anthropic" ,
"description" : "Anthropic Configuration"
} ,
"model" : {
"type" : "string" ,
"description" : "The name of the language model."
} ,
2025-07-23 18:25:15 +00:00
"displayName" : {
"type" : "string" ,
"description" : "Optional display name."
} ,
"token" : {
"$ref" : "./shared.json#/definitions/Token" ,
2025-07-23 23:53:43 +00:00
"description" : "Optional API key to use with the model. Defaults to the `ANTHROPIC_API_KEY` environment variable."
2025-07-23 18:25:15 +00:00
} ,
"baseUrl" : {
"type" : "string" ,
"format" : "url" ,
"pattern" : "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$" ,
"description" : "Optional base URL."
2025-08-08 21:49:00 +00:00
} ,
"headers" : {
"$ref" : "./shared.json#/definitions/LanguageModelHeaders"
2025-07-23 18:25:15 +00:00
}
} ,
"required" : [
"provider" ,
"model"
] ,
"additionalProperties" : false
} ,
2025-07-23 23:53:43 +00:00
"AzureLanguageModel" : {
2025-07-23 18:25:15 +00:00
"type" : "object" ,
"properties" : {
"provider" : {
2025-07-23 23:53:43 +00:00
"const" : "azure" ,
"description" : "Azure Configuration"
2025-07-23 18:25:15 +00:00
} ,
"model" : {
"type" : "string" ,
2025-07-23 23:53:43 +00:00
"description" : "The deployment name of the Azure model."
2025-07-23 18:25:15 +00:00
} ,
"displayName" : {
"type" : "string" ,
"description" : "Optional display name."
} ,
2025-07-23 23:53:43 +00:00
"resourceName" : {
"type" : "string" ,
"description" : "Azure resource name. Defaults to the `AZURE_RESOURCE_NAME` environment variable."
2025-07-23 18:25:15 +00:00
} ,
2025-07-23 23:53:43 +00:00
"token" : {
2025-07-23 18:25:15 +00:00
"$ref" : "./shared.json#/definitions/Token" ,
2025-07-23 23:53:43 +00:00
"description" : "Optional API key to use with the model. Defaults to the `AZURE_API_KEY` environment variable."
2025-07-23 18:25:15 +00:00
} ,
2025-07-23 23:53:43 +00:00
"apiVersion" : {
2025-07-23 18:25:15 +00:00
"type" : "string" ,
2025-07-23 23:53:43 +00:00
"description" : "Sets a custom api version. Defaults to `preview`."
2025-07-23 18:25:15 +00:00
} ,
"baseUrl" : {
"type" : "string" ,
"format" : "url" ,
"pattern" : "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$" ,
2025-07-23 23:53:43 +00:00
"description" : "Use a different URL prefix for API calls. Either this or `resourceName` can be used."
2025-08-08 21:49:00 +00:00
} ,
"headers" : {
"$ref" : "./shared.json#/definitions/LanguageModelHeaders"
2025-07-23 18:25:15 +00:00
}
} ,
"required" : [
"provider" ,
"model"
] ,
"additionalProperties" : false
} ,
2025-07-23 23:53:43 +00:00
"DeepSeekLanguageModel" : {
2025-07-23 18:25:15 +00:00
"type" : "object" ,
"properties" : {
"provider" : {
2025-07-23 23:53:43 +00:00
"const" : "deepseek" ,
"description" : "DeepSeek Configuration"
2025-07-23 18:25:15 +00:00
} ,
"model" : {
"type" : "string" ,
"description" : "The name of the language model."
} ,
"displayName" : {
"type" : "string" ,
"description" : "Optional display name."
} ,
"token" : {
"$ref" : "./shared.json#/definitions/Token" ,
2025-07-23 23:53:43 +00:00
"description" : "Optional API key to use with the model. Defaults to the `DEEPSEEK_API_KEY` environment variable."
2025-07-23 18:25:15 +00:00
} ,
"baseUrl" : {
"type" : "string" ,
"format" : "url" ,
"pattern" : "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$" ,
"description" : "Optional base URL."
2025-08-08 21:49:00 +00:00
} ,
"headers" : {
"$ref" : "./shared.json#/definitions/LanguageModelHeaders"
2025-07-23 18:25:15 +00:00
}
} ,
"required" : [
"provider" ,
"model"
] ,
"additionalProperties" : false
} ,
"GoogleGenerativeAILanguageModel" : {
"type" : "object" ,
"properties" : {
"provider" : {
"const" : "google-generative-ai" ,
"description" : "Google Generative AI Configuration"
} ,
"model" : {
"type" : "string" ,
"description" : "The name of the language model."
} ,
"displayName" : {
"type" : "string" ,
"description" : "Optional display name."
} ,
"token" : {
"$ref" : "./shared.json#/definitions/Token" ,
"description" : "Optional API key to use with the model. Defaults to the `GOOGLE_GENERATIVE_AI_API_KEY` environment variable."
} ,
"baseUrl" : {
"type" : "string" ,
"format" : "url" ,
"pattern" : "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$" ,
"description" : "Optional base URL."
2025-08-08 21:49:00 +00:00
} ,
"headers" : {
"$ref" : "./shared.json#/definitions/LanguageModelHeaders"
2025-07-23 18:25:15 +00:00
}
} ,
"required" : [
"provider" ,
"model"
] ,
"additionalProperties" : false
} ,
2025-07-23 23:53:43 +00:00
"GoogleVertexAnthropicLanguageModel" : {
2025-07-23 18:25:15 +00:00
"type" : "object" ,
"properties" : {
"provider" : {
2025-07-23 23:53:43 +00:00
"const" : "google-vertex-anthropic" ,
"description" : "Google Vertex AI Anthropic Configuration"
2025-07-23 18:25:15 +00:00
} ,
"model" : {
"type" : "string" ,
2025-07-23 23:53:43 +00:00
"description" : "The name of the Anthropic language model running on Google Vertex." ,
2025-07-23 18:25:15 +00:00
"examples" : [
2025-07-23 23:53:43 +00:00
"claude-sonnet-4"
2025-07-23 18:25:15 +00:00
]
} ,
"displayName" : {
"type" : "string" ,
"description" : "Optional display name."
} ,
"project" : {
"type" : "string" ,
"description" : "The Google Cloud project ID. Defaults to the `GOOGLE_VERTEX_PROJECT` environment variable."
} ,
"region" : {
"type" : "string" ,
"description" : "The Google Cloud region. Defaults to the `GOOGLE_VERTEX_REGION` environment variable." ,
"examples" : [
"us-central1" ,
"us-east1" ,
"europe-west1"
]
} ,
"credentials" : {
"$ref" : "./shared.json#/definitions/Token" ,
"description" : "Optional file path to service account credentials JSON. Defaults to the `GOOGLE_APPLICATION_CREDENTIALS` environment variable or application default credentials."
} ,
"baseUrl" : {
"type" : "string" ,
"format" : "url" ,
"pattern" : "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$" ,
"description" : "Optional base URL."
2025-08-08 21:49:00 +00:00
} ,
"headers" : {
"$ref" : "./shared.json#/definitions/LanguageModelHeaders"
2025-07-23 18:25:15 +00:00
}
} ,
"required" : [
"provider" ,
"model"
] ,
"additionalProperties" : false
} ,
2025-07-23 23:53:43 +00:00
"GoogleVertexLanguageModel" : {
2025-07-23 18:25:15 +00:00
"type" : "object" ,
"properties" : {
"provider" : {
2025-07-23 23:53:43 +00:00
"const" : "google-vertex" ,
"description" : "Google Vertex AI Configuration"
2025-07-23 18:25:15 +00:00
} ,
"model" : {
"type" : "string" ,
2025-07-23 23:53:43 +00:00
"description" : "The name of the language model." ,
2025-07-23 18:25:15 +00:00
"examples" : [
2025-07-23 23:53:43 +00:00
"gemini-2.0-flash-exp" ,
"gemini-1.5-pro" ,
"gemini-1.5-flash"
2025-07-23 18:25:15 +00:00
]
} ,
"displayName" : {
"type" : "string" ,
"description" : "Optional display name."
} ,
"project" : {
"type" : "string" ,
"description" : "The Google Cloud project ID. Defaults to the `GOOGLE_VERTEX_PROJECT` environment variable."
} ,
"region" : {
"type" : "string" ,
"description" : "The Google Cloud region. Defaults to the `GOOGLE_VERTEX_REGION` environment variable." ,
"examples" : [
"us-central1" ,
"us-east1" ,
"europe-west1"
]
} ,
"credentials" : {
"$ref" : "./shared.json#/definitions/Token" ,
"description" : "Optional file path to service account credentials JSON. Defaults to the `GOOGLE_APPLICATION_CREDENTIALS` environment variable or application default credentials."
} ,
"baseUrl" : {
"type" : "string" ,
"format" : "url" ,
"pattern" : "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$" ,
"description" : "Optional base URL."
2025-08-08 21:49:00 +00:00
} ,
"headers" : {
"$ref" : "./shared.json#/definitions/LanguageModelHeaders"
2025-07-23 18:25:15 +00:00
}
} ,
"required" : [
"provider" ,
"model"
] ,
"additionalProperties" : false
2025-07-23 23:53:43 +00:00
} ,
"MistralLanguageModel" : {
"type" : "object" ,
"properties" : {
"provider" : {
"const" : "mistral" ,
"description" : "Mistral AI Configuration"
} ,
"model" : {
"type" : "string" ,
"description" : "The name of the language model."
} ,
"displayName" : {
"type" : "string" ,
"description" : "Optional display name."
} ,
"token" : {
"$ref" : "./shared.json#/definitions/Token" ,
"description" : "Optional API key to use with the model. Defaults to the `MISTRAL_API_KEY` environment variable."
} ,
"baseUrl" : {
"type" : "string" ,
"format" : "url" ,
"pattern" : "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$" ,
"description" : "Optional base URL."
2025-08-08 21:49:00 +00:00
} ,
"headers" : {
"$ref" : "./shared.json#/definitions/LanguageModelHeaders"
2025-07-23 23:53:43 +00:00
}
} ,
"required" : [
"provider" ,
"model"
] ,
"additionalProperties" : false
} ,
"OpenAILanguageModel" : {
"type" : "object" ,
"properties" : {
"provider" : {
"const" : "openai" ,
"description" : "OpenAI Configuration"
} ,
"model" : {
"type" : "string" ,
"description" : "The name of the language model." ,
"examples" : [
"gpt-4.1" ,
"o4-mini" ,
"o3" ,
"o3-deep-research"
]
} ,
"displayName" : {
"type" : "string" ,
"description" : "Optional display name."
} ,
"token" : {
"$ref" : "./shared.json#/definitions/Token" ,
"description" : "Optional API key to use with the model. Defaults to the `OPENAI_API_KEY` environment variable."
} ,
"baseUrl" : {
"type" : "string" ,
"format" : "url" ,
"pattern" : "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$" ,
"description" : "Optional base URL."
2025-08-08 00:26:51 +00:00
} ,
"reasoningEffort" : {
"type" : "string" ,
"description" : "The reasoning effort to use with the model. Defaults to `medium`. See https://platform.openai.com/docs/guides/reasoning#get-started-with-reasonings" ,
"examples" : [
"minimal" ,
"low" ,
"medium" ,
"high"
]
2025-08-08 21:49:00 +00:00
} ,
"headers" : {
"$ref" : "./shared.json#/definitions/LanguageModelHeaders"
2025-07-23 23:53:43 +00:00
}
} ,
"required" : [
"provider" ,
"model"
] ,
"additionalProperties" : false
} ,
2025-08-05 00:25:54 +00:00
"OpenAICompatibleLanguageModel" : {
"type" : "object" ,
"properties" : {
"provider" : {
"const" : "openai-compatible" ,
"description" : "OpenAI Compatible Configuration"
} ,
"model" : {
"type" : "string" ,
"description" : "The name of the language model."
} ,
"displayName" : {
"type" : "string" ,
"description" : "Optional display name."
} ,
"token" : {
"$ref" : "./shared.json#/definitions/Token" ,
"description" : "Optional API key. If specified, adds an `Authorization` header to request headers with the value Bearer <token>."
} ,
"baseUrl" : {
"type" : "string" ,
"format" : "url" ,
"pattern" : "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$" ,
"description" : "Base URL of the OpenAI-compatible chat completions API endpoint." ,
"examples" : [
"http://localhost:8080/v1"
]
2025-08-08 21:49:00 +00:00
} ,
"headers" : {
"$ref" : "./shared.json#/definitions/LanguageModelHeaders"
2025-09-04 22:02:49 +00:00
} ,
"queryParams" : {
"$ref" : "./shared.json#/definitions/LanguageModelQueryParams"
2025-08-05 00:25:54 +00:00
}
} ,
"required" : [
"provider" ,
"model" ,
"baseUrl"
] ,
"additionalProperties" : false
} ,
2025-07-23 23:53:43 +00:00
"OpenRouterLanguageModel" : {
"type" : "object" ,
"properties" : {
"provider" : {
"const" : "openrouter" ,
"description" : "OpenRouter Configuration"
} ,
"model" : {
"type" : "string" ,
"description" : "The name of the language model."
} ,
"displayName" : {
"type" : "string" ,
"description" : "Optional display name."
} ,
"token" : {
"$ref" : "./shared.json#/definitions/Token" ,
"description" : "Optional API key to use with the model. Defaults to the `OPENROUTER_API_KEY` environment variable."
} ,
"baseUrl" : {
"type" : "string" ,
"format" : "url" ,
"pattern" : "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$" ,
"description" : "Optional base URL."
2025-08-08 21:49:00 +00:00
} ,
"headers" : {
"$ref" : "./shared.json#/definitions/LanguageModelHeaders"
2025-07-23 23:53:43 +00:00
}
} ,
"required" : [
"provider" ,
"model"
] ,
"additionalProperties" : false
} ,
"XaiLanguageModel" : {
"type" : "object" ,
"properties" : {
"provider" : {
"const" : "xai" ,
"description" : "xAI Configuration"
} ,
"model" : {
"type" : "string" ,
"description" : "The name of the language model." ,
"examples" : [
"grok-beta" ,
"grok-vision-beta"
]
} ,
"displayName" : {
"type" : "string" ,
"description" : "Optional display name."
} ,
"token" : {
"$ref" : "./shared.json#/definitions/Token" ,
"description" : "Optional API key to use with the model. Defaults to the `XAI_API_KEY` environment variable."
} ,
"baseUrl" : {
"type" : "string" ,
"format" : "url" ,
"pattern" : "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$" ,
"description" : "Optional base URL."
2025-08-08 21:49:00 +00:00
} ,
"headers" : {
"$ref" : "./shared.json#/definitions/LanguageModelHeaders"
2025-07-23 23:53:43 +00:00
}
} ,
"required" : [
"provider" ,
"model"
] ,
"additionalProperties" : false
2025-07-23 18:25:15 +00:00
}
} ,
"oneOf" : [
{
"$ref" : "#/definitions/AmazonBedrockLanguageModel"
} ,
{
"$ref" : "#/definitions/AnthropicLanguageModel"
} ,
2025-07-23 23:53:43 +00:00
{
"$ref" : "#/definitions/AzureLanguageModel"
} ,
{
"$ref" : "#/definitions/DeepSeekLanguageModel"
} ,
2025-07-23 18:25:15 +00:00
{
"$ref" : "#/definitions/GoogleGenerativeAILanguageModel"
} ,
2025-07-23 23:53:43 +00:00
{
"$ref" : "#/definitions/GoogleVertexAnthropicLanguageModel"
} ,
2025-07-23 18:25:15 +00:00
{
"$ref" : "#/definitions/GoogleVertexLanguageModel"
} ,
{
2025-07-23 23:53:43 +00:00
"$ref" : "#/definitions/MistralLanguageModel"
} ,
{
"$ref" : "#/definitions/OpenAILanguageModel"
} ,
2025-08-05 00:25:54 +00:00
{
"$ref" : "#/definitions/OpenAICompatibleLanguageModel"
} ,
2025-07-23 23:53:43 +00:00
{
"$ref" : "#/definitions/OpenRouterLanguageModel"
} ,
{
"$ref" : "#/definitions/XaiLanguageModel"
2025-07-23 18:25:15 +00:00
}
]
}