Continue.dev

Kör Continue.dev i VS Code eller JetBrains mot staik via det OpenAI-kompatibla API:t — chat, edit, autocomplete och embeddings på svensk GPU-infrastruktur.

Konfiguration

staik är OpenAI-kompatibelt, så modellerna läggs till med provider: openai i ~/.continue/config.yaml:

YAMLconfig.yaml
name: staik
version: 0.0.1
schema: v1
models:
  - name: staik qwen3.5 35b
    provider: openai
    model: qwen3.5:35b-a3b
    apiBase: https://api.staik.se/v1
    apiKey: ${{ secrets.STAIK_API_KEY }}
    defaultCompletionOptions:
      contextLength: 131072   # halva av 262k — snabbt + headroom för output
      maxTokens: 8192
    roles:
      - chat
      - edit
      - apply
  - name: staik qwen3.5 9b
    provider: openai
    model: qwen3.5:9b
    apiBase: https://api.staik.se/v1
    apiKey: ${{ secrets.STAIK_API_KEY }}
    defaultCompletionOptions:
      contextLength: 16384    # halva av 32k
      maxTokens: 4096
    roles:
      - autocomplete
  - name: staik bge-m3
    provider: openai
    model: bge-m3:latest
    apiBase: https://api.staik.se/v1
    apiKey: ${{ secrets.STAIK_API_KEY }}
    roles:
      - embed

Lägg din nyckel i Continues secrets (eller ersätt platshållaren med sk-st-nyckeln direkt). En modell per roll: 35b för chat/edit, 9b för autocomplete och bge-m3 för embeddings (kodbasindexering).

Kontextfönster

Sätt contextLength till ungefär halva modellens fönster. Continue fyller annars gärna hela fönstret med repo-kontext, och fulla 262k blir både långsammare och äter mer av tokenbudgeten. Halva ger snabba svar och lämnar headroom för maxTokens på output. Behöver du köra riktigt stora repo-kontexter höjer du bara siffran igen.

ModellFullt fönsterHalva (contextLength)
qwen3.5:35b-a3b262 144131 072
gemma4:31b98 30449 152
qwen3.5:9b262 14416 384

config.json (äldre format)

Kör du en äldre Continue-version som fortfarande använder config.json är upplägget detsamma — chat-modell, autocomplete-modell och embeddings separat:

JSONconfig.json
{
  "models": [
    {
      "title": "staik qwen3.5 35b",
      "provider": "openai",
      "model": "qwen3.5:35b-a3b",
      "apiBase": "https://api.staik.se/v1",
      "apiKey": "sk-st-your-key",
      "contextLength": 131072,
      "completionOptions": { "maxTokens": 8192 }
    }
  ],
  "tabAutocompleteModel": {
    "title": "staik qwen3.5 9b",
    "provider": "openai",
    "model": "qwen3.5:9b",
    "apiBase": "https://api.staik.se/v1",
    "apiKey": "sk-st-your-key"
  },
  "embeddingsProvider": {
    "provider": "openai",
    "model": "bge-m3:latest",
    "apiBase": "https://api.staik.se/v1",
    "apiKey": "sk-st-your-key"
  }
}

Modeller

Sätt model-id i Continue till någon av staiks modeller. qwen3.5:35b-a3b (standard) kör på vLLM med 262k kontextfönster — räcker för stora repo-kontexter utan att falla tillbaka.

  • qwen3.5:35b-a3bstandard, 262k kontext, vLLM — chat & edit
  • qwen3.5:9bsnabb, 262k kontext — autocomplete
  • gemma4:31b96k kontext, vision
  • bge-m3:latestembeddings, 1024-dim — kodbasindexering

Att tänka på

Continue indexerar hela kodbasen med embeddings-modellen. Lägg bge-m3:latest på embed-rollen så stannar även indexeringen på svensk GPU-infrastruktur i stället för att gå mot en tredjepartsleverantör.

Vill du köra Claude Code, OpenCode eller Anthropic SDK i stället? Se Claude Code och OpenCode.