Skip to main content

kubeswarm LLM Providers - Anthropic, OpenAI, Gemini, Ollama

kubeswarm auto-detects the LLM provider from the model name. Built-in support for Anthropic Claude, OpenAI GPT, Google Gemini and any OpenAI-compatible endpoint like Ollama or vLLM. No configuration needed for built-in providers.

Built-in Providers

ProviderModel patternsAPI key env varDocs
Anthropicclaude-*ANTHROPIC_API_KEYanthropic.com
OpenAIgpt-*, o*OPENAI_API_KEYplatform.openai.com
Google Geminigemini-*GOOGLE_API_KEYai.google.dev

OpenAI-compatible (Ollama, vLLM, LM Studio)

Any endpoint that implements the OpenAI Chat Completions API works:

spec:
model: qwen2.5:7b
envFrom:
- configMapRef:
name: ollama-config
---
apiVersion: v1
kind: ConfigMap
metadata:
name: ollama-config
data:
AGENT_PROVIDER: openai
OPENAI_BASE_URL: http://host.docker.internal:11434/v1
OPENAI_API_KEY: "unused"
EndpointOPENAI_BASE_URL
Ollamahttp://host.docker.internal:11434/v1
vLLMhttp://vllm.svc:8000/v1
LM Studiohttp://host.docker.internal:1234/v1
Azure OpenAIhttps://<name>.openai.azure.com/openai/deployments/<deploy>

Override auto-detection

Set AGENT_PROVIDER explicitly:

envFrom:
- configMapRef:
name: provider-config
---
apiVersion: v1
kind: ConfigMap
metadata:
name: provider-config
data:
AGENT_PROVIDER: openai # auto | anthropic | openai | gemini | mock

Custom providers (gRPC plugin)

For providers without built-in support (AWS Bedrock, custom endpoints), deploy a gRPC service implementing the LLMProvider proto contract:

spec:
plugins:
llm:
address: bedrock-proxy.svc:50051

See gRPC Plugins for details.