Files
kubeconform/crdSchemas/aiservice_v1alpha1.json
T
2026-05-05 10:50:30 +01:00

488 lines
14 KiB
JSON

{
"description": "AIService is a Kubernetes-like Service to interact with a text-based LLM provider. It defines the parameters and credentials required to interact with various LLM providers.",
"properties": {
"apiVersion": {
"description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
"type": "string"
},
"kind": {
"description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"description": "The desired behavior of this AIService.",
"properties": {
"anthropic": {
"description": "Anthropic configures Anthropic backend.",
"properties": {
"model": {
"type": "string"
},
"params": {
"description": "Params holds the LLM hyperparameters.",
"properties": {
"frequencyPenalty": {
"type": "number"
},
"maxTokens": {
"type": "integer"
},
"presencePenalty": {
"type": "number"
},
"temperature": {
"type": "number"
},
"topP": {
"type": "number"
}
},
"type": "object",
"additionalProperties": false
},
"token": {
"description": "SecretReference references a kubernetes secret.",
"properties": {
"secretName": {
"maxLength": 253,
"type": "string"
}
},
"required": [
"secretName"
],
"type": "object",
"additionalProperties": false
}
},
"type": "object",
"additionalProperties": false
},
"azureOpenai": {
"description": "AzureOpenAI configures AzureOpenAI.",
"properties": {
"apiKeySecret": {
"description": "SecretReference references a kubernetes secret.",
"properties": {
"secretName": {
"maxLength": 253,
"type": "string"
}
},
"required": [
"secretName"
],
"type": "object",
"additionalProperties": false
},
"baseUrl": {
"type": "string"
},
"deploymentName": {
"type": "string"
},
"model": {
"type": "string"
},
"params": {
"description": "Params holds the LLM hyperparameters.",
"properties": {
"frequencyPenalty": {
"type": "number"
},
"maxTokens": {
"type": "integer"
},
"presencePenalty": {
"type": "number"
},
"temperature": {
"type": "number"
},
"topP": {
"type": "number"
}
},
"type": "object",
"additionalProperties": false
}
},
"required": [
"baseUrl",
"deploymentName"
],
"type": "object",
"additionalProperties": false
},
"bedrock": {
"description": "Bedrock configures Bedrock backend.",
"properties": {
"model": {
"type": "string"
},
"params": {
"description": "Params holds the LLM hyperparameters.",
"properties": {
"frequencyPenalty": {
"type": "number"
},
"maxTokens": {
"type": "integer"
},
"presencePenalty": {
"type": "number"
},
"temperature": {
"type": "number"
},
"topP": {
"type": "number"
}
},
"type": "object",
"additionalProperties": false
},
"region": {
"type": "string"
},
"systemMessage": {
"type": "boolean"
}
},
"type": "object",
"additionalProperties": false
},
"cohere": {
"description": "Cohere configures Cohere backend.",
"properties": {
"model": {
"type": "string"
},
"params": {
"description": "Params holds the LLM hyperparameters.",
"properties": {
"frequencyPenalty": {
"type": "number"
},
"maxTokens": {
"type": "integer"
},
"presencePenalty": {
"type": "number"
},
"temperature": {
"type": "number"
},
"topP": {
"type": "number"
}
},
"type": "object",
"additionalProperties": false
},
"token": {
"description": "SecretReference references a kubernetes secret.",
"properties": {
"secretName": {
"maxLength": 253,
"type": "string"
}
},
"required": [
"secretName"
],
"type": "object",
"additionalProperties": false
}
},
"type": "object",
"additionalProperties": false
},
"deepSeek": {
"description": "DeepSeek configures DeepSeek.",
"properties": {
"baseUrl": {
"type": "string"
},
"model": {
"type": "string"
},
"params": {
"description": "Params holds the LLM hyperparameters.",
"properties": {
"frequencyPenalty": {
"type": "number"
},
"maxTokens": {
"type": "integer"
},
"presencePenalty": {
"type": "number"
},
"temperature": {
"type": "number"
},
"topP": {
"type": "number"
}
},
"type": "object",
"additionalProperties": false
},
"token": {
"description": "SecretReference references a kubernetes secret.",
"properties": {
"secretName": {
"maxLength": 253,
"type": "string"
}
},
"required": [
"secretName"
],
"type": "object",
"additionalProperties": false
}
},
"type": "object",
"additionalProperties": false
},
"gemini": {
"description": "Gemini configures Gemini backend.",
"properties": {
"apiKey": {
"description": "SecretReference references a kubernetes secret.",
"properties": {
"secretName": {
"maxLength": 253,
"type": "string"
}
},
"required": [
"secretName"
],
"type": "object",
"additionalProperties": false
},
"model": {
"type": "string"
},
"params": {
"description": "Params holds the LLM hyperparameters.",
"properties": {
"frequencyPenalty": {
"type": "number"
},
"maxTokens": {
"type": "integer"
},
"presencePenalty": {
"type": "number"
},
"temperature": {
"type": "number"
},
"topP": {
"type": "number"
}
},
"type": "object",
"additionalProperties": false
}
},
"type": "object",
"additionalProperties": false
},
"mistral": {
"description": "Mistral configures Mistral AI backend.",
"properties": {
"apiKey": {
"description": "SecretReference references a kubernetes secret.",
"properties": {
"secretName": {
"maxLength": 253,
"type": "string"
}
},
"required": [
"secretName"
],
"type": "object",
"additionalProperties": false
},
"model": {
"type": "string"
},
"params": {
"description": "Params holds the LLM hyperparameters.",
"properties": {
"frequencyPenalty": {
"type": "number"
},
"maxTokens": {
"type": "integer"
},
"presencePenalty": {
"type": "number"
},
"temperature": {
"type": "number"
},
"topP": {
"type": "number"
}
},
"type": "object",
"additionalProperties": false
}
},
"type": "object",
"additionalProperties": false
},
"ollama": {
"description": "Ollama configures Ollama backend.",
"properties": {
"baseUrl": {
"type": "string"
},
"model": {
"type": "string"
},
"params": {
"description": "Params holds the LLM hyperparameters.",
"properties": {
"frequencyPenalty": {
"type": "number"
},
"maxTokens": {
"type": "integer"
},
"presencePenalty": {
"type": "number"
},
"temperature": {
"type": "number"
},
"topP": {
"type": "number"
}
},
"type": "object",
"additionalProperties": false
}
},
"required": [
"baseUrl"
],
"type": "object",
"additionalProperties": false
},
"openai": {
"description": "OpenAI configures OpenAI.",
"properties": {
"baseUrl": {
"type": "string"
},
"model": {
"type": "string"
},
"params": {
"description": "Params holds the LLM hyperparameters.",
"properties": {
"frequencyPenalty": {
"type": "number"
},
"maxTokens": {
"type": "integer"
},
"presencePenalty": {
"type": "number"
},
"temperature": {
"type": "number"
},
"topP": {
"type": "number"
}
},
"type": "object",
"additionalProperties": false
},
"token": {
"description": "SecretReference references a kubernetes secret.",
"properties": {
"secretName": {
"maxLength": 253,
"type": "string"
}
},
"required": [
"secretName"
],
"type": "object",
"additionalProperties": false
}
},
"type": "object",
"additionalProperties": false
},
"qWen": {
"description": "QWen configures QWen.",
"properties": {
"baseUrl": {
"type": "string"
},
"model": {
"type": "string"
},
"params": {
"description": "Params holds the LLM hyperparameters.",
"properties": {
"frequencyPenalty": {
"type": "number"
},
"maxTokens": {
"type": "integer"
},
"presencePenalty": {
"type": "number"
},
"temperature": {
"type": "number"
},
"topP": {
"type": "number"
}
},
"type": "object",
"additionalProperties": false
},
"token": {
"description": "SecretReference references a kubernetes secret.",
"properties": {
"secretName": {
"maxLength": 253,
"type": "string"
}
},
"required": [
"secretName"
],
"type": "object",
"additionalProperties": false
}
},
"type": "object",
"additionalProperties": false
}
},
"type": "object",
"additionalProperties": false
}
},
"type": "object"
}