Providers
SwarmVault uses a capability-driven provider abstraction that supports multiple LLM backends through a unified interface.
Supported Providers
| Type | Description | Requires API Key |
|---|---|---|
heuristic | Local fallback using term frequency and regex | No |
openai | OpenAI API (GPT-4o, etc.) | Yes |
anthropic | Anthropic API (Claude) | Yes |
gemini | Google Gemini API | Yes |
ollama | Local Ollama instance | No |
openrouter | OpenRouter preset over the OpenAI-compatible adapter | Yes |
groq | Groq preset over the OpenAI-compatible adapter | Yes |
together | Together preset over the OpenAI-compatible adapter | Yes |
xai | xAI preset over the OpenAI-compatible adapter | Yes |
cerebras | Cerebras preset over the OpenAI-compatible adapter | Yes |
openai-compatible | Any OpenAI-compatible API | Varies |
custom | Load from a custom module | Varies |
Provider Capabilities
Each provider declares its capabilities:
responses— OpenAI Responses API formatchat— Chat completions formatstructured— Structured/JSON outputtools— Tool/function callingvision— Image understandingembeddings— Text embeddingsstreaming— Streaming responseslocal— Runs locally without network
Privacy & Data Flow
SwarmVault keeps the default data path local:
- Code files are parsed on your machine via tree-sitter and are not sent to external APIs
- Documents and text are sent only to the provider you configure for semantic extraction
- Images are sent only when you configure a vision-capable provider
- The built-in
heuristicprovider stays fully offline and requires no API keys
Adding a model provider changes the semantic extraction path for non-code content, but graph building, community detection, and report generation still happen locally.
Provider Interface
All providers implement:
generateText(request)— Generate plain textgenerateStructured(request, schema)— Generate validated structured output
See individual provider pages for configuration details.