Konfigurasi, kustomisasi, pengaturan platform, dan referensi API untuk Pi.

llama.cpp

Pi mendukung server router llama.cpp. Router menemukan beberapa model GGUF dan memuat atau mengeluarkannya sesuai permintaan.

Gunakan build llama.cpp saat ini dengan dukungan router. Ikuti build instructions atau instal prebuilt release untuk platform Anda.

Mulai perute

Mulai llama-server tanpa --model atau -m. Melewati model akan memulai mode model tunggal, bukan mode router.

llama-server \
  --models-dir ~/models \
  --no-models-autoload \
  --jinja \
  --host 127.0.0.1 \
  --port 8080 \
  -ngl 999 \
  -c 32768

Opsi penting:

  • --models-dir ~/models menemukan file GGUF lokal.
  • --no-models-autoload terus memuat secara eksplisit melalui /llama.
  • --jinja mengaktifkan templat obrolan dan panggilan alat yang kompatibel.
  • -ngl 999 memindahkan sebanyak mungkin lapisan ke GPU.
  • -c 32768 menyetel jendela konteks untuk setiap model yang dimuat. Abaikan untuk menggunakan konteks asli model, yang mungkin memerlukan lebih banyak memori.

Model file tunggal dapat ditempatkan langsung di direktori model. Letakkan model multimodal dan multi-shard di subdirektori terpisah:

~/models/
├── llama-3.2-1b-Q4_K_M.gguf
├── gemma-3-4b-it-Q4_K_M/
│   ├── gemma-3-4b-it-Q4_K_M.gguf
│   └── mmproj-F16.gguf
└── large-model-Q4_K_M/
    ├── large-model-Q4_K_M-00001-of-00003.gguf
    ├── large-model-Q4_K_M-00002-of-00003.gguf
    └── large-model-Q4_K_M-00003-of-00003.gguf

Mulai ulang router setelah menambahkan file secara manual. Untuk ukuran konteks per model dan opsi lainnya, gunakan llama.cpp model presets.

Konfigurasikan Pi

Mulai Pi dan konfigurasikan penyedia:

/login llama.cpp

Masukkan URL router dan opsional API key. URL bawaannya adalah http://127.0.0.1:8080.

Variabel lingkungan dapat mengonfigurasi nilai yang sama tanpa /login:

export LLAMA_BASE_URL=http://127.0.0.1:8080
export LLAMA_API_KEY=optional-secret
pi

Jika server menggunakan API key, mulailah llama-server dengan nilai --api-key yang cocok. Pertahankan --host 127.0.0.1 untuk akses lokal saja.

Kelola model

Berlari:

/llama
  • Pilih model yang dibongkar untuk memuatnya.
  • Pilih model yang dimuat untuk membongkarnya.
  • Pilih Unduh model…, cari Hugging Face, lalu pilih repositori dan kuantisasi. Nilai owner/repository[:quant] yang tepat juga berfungsi.
  • Tekan Escape saat memuat atau mengunduh untuk mengonfirmasi pembatalan.

Pencarian Hugging Face menggunakan HF_TOKEN saat disetel, lalu centang $HF_TOKEN_PATH, $HF_HOME/token, $XDG_CACHE_HOME/huggingface/token, dan ~/.cache/huggingface/token. Pencarian juga berfungsi tanpa autentikasi, dengan tunduk pada batas kecepatan yang lebih rendah. Pi memperingatkan sebelum mengunduh repositori yang terjaga keamanannya dan tautan ke halaman aksesnya. Server llama.cpp melakukan pengunduhan, jadi prosesnya juga harus memiliki HF_TOKEN ketika repositori yang dipilih memerlukan akses.

Jika model lain dimuat, Pi menanyakan apakah akan membongkarnya terlebih dahulu atau tetap memuatnya. Pi tidak membongkar model secara diam-diam dan tidak pernah menghapus file model. Router mungkin digunakan bersama dengan klien lain, jadi /llama selalu menampilkan status router saat ini.

Hanya model yang dimuat yang muncul di /model. Setelah memuat model, jalankan /model untuk memilihnya untuk sesi Pi saat ini.

Jika router terputus, /llama menampilkan Coba lagi dan Tutup. Coba lagi sambungkan kembali dan segarkan status model tanpa memutar ulang operasi yang terputus.

Pemecahan masalah

Periksa apakah router dapat dijangkau:

curl http://127.0.0.1:8080/health
curl http://127.0.0.1:8080/models
  • Tidak ada model di /llama: Periksa --models-dir, tata letak direktori, dan mulai ulang router.
  • Model hilang dari /model: Muat dengan /llama terlebih dahulu.
  • Pemuatan gagal atau menggunakan terlalu banyak memori: Turunkan -c atau bongkar model lain.
  • Server tidak dalam mode router: Mulai tanpa --model, -m, atau -hf.