Del 3: Opsætning

Start-Script &
VS Code Integration

Start scriptet til Llama.cpp

For at køre dine GGUF-filer direkte med hardwareacceleration på din Intel iGPU, skal du oprette et bash-script. Her er koden til start_llm.sh:

start_llm.sh
#!/bin/bash
# Aktiver dit IPEX-LLM miljø her
# conda activate ipex-llm

# 1. Optimeringsvariabler til Intel iGPU (SYCL Level-Zero)
export SYCL_CACHE_PERSISTENT=1
export SYCL_PI_LEVEL_ZERO_USE_IMMEDIATE_COMMANDLISTS=1

# 2. Angiv stien til din valgte GGUF-model
MODEL_PATH="./models/qwen2.5-coder-7b-q4_k_m.gguf"

# 3. Start llama-server med hardware-acceleration
./llama-server \
  -m "$MODEL_PATH" \
  -c 8192 \
  -ngl 99 \
  -t 8 \
  --host 127.0.0.1 \
  --port 8080
-ngl 99 (Number of GPU Layers)

Den afgørende parameter. Ved at sætte tallet kunstigt højt (99), tvinger du llama.cpp til at lægge alle modellens beregningslag over i iGPU'en.

-c 8192 (Context)

Sætter modellens "hukommelse" til 8192 tokens. God størrelse til at analysere mellemstor kode. Hvis du løber tør for RAM, kan du halvere til 4096.

Verifikation: llm_load_tensors

Kør chmod +x start_llm.sh og eksekvér scriptet. Kig efter linjen: llm_load_tensors: offloaded 33/33 layers to GPU. Hvis de to tal er ens, arbejder din Intel iGPU med fuld kapacitet.

VS Code integration (Continue.dev)

Fordi din llama-server kører i baggrunden på port 8080 og opfører sig som OpenAIs API, kan du bruge udvidelsen Continue.dev til Visual Studio Code (som fungerer glimrende på Linux Mint). Det giver dig en AI sidebar og tab-autocomplete.

  • 1
    Konfigurer API-forbindelsen i config.json

    Tilføj din lokale server under "models":

    "models": [
      {
        "title": "Lokal LLM",
        "provider": "openai",
        "model": "qwen2.5-coder-7b", 
        "apiBase": "http://127.0.0.1:8080/v1",
        "apiKey": "EMPTY"
      }
    ]
  • 2
    Den perfekte system-prompt

    Tilføj en "systemMessage" i roden af din JSON-fil, så du slipper for høflighedsfraser og primer den til dit miljø (f.eks. FreeRTOS og PyVISA):

    "systemMessage": "Du er en senior softwareingeniør med ekspertise i avanceret C++ og Python. Din primære opgave er at levere præcis, optimeret og produktionsklar kode. Du SKAL udelade overflødige forklaringer, høflighedsfraser, introduktioner og opsummeringer. Gå direkte til koden. \n\nNår du arbejder med C++, forventes dyb indsigt i hardware-nær programmering, hukommelseshåndtering, objektorienteret design og FreeRTOS-arkitektur. \n\nI Python foretrækkes robust fejlhåndtering, objektorienteret struktur og erfaring med hardware-integration, herunder seriel kommunikation og biblioteker som PyVISA til instrumentstyring."