For the complete documentation index, see llms.txt. This page is also available as Markdown.

Leitfaden zur Bereitstellung von llama-server & OpenAI-Endpunkt

Bereitstellung über llama-server mit einem OpenAI-kompatiblen Endpunkt

Wir werden Devstral-2 bereitstellen – siehe Devstral 2 für weitere Details zum Modell.

Erhalten Sie das neueste llama.cpp standardmäßig GitHub hier. Sie können auch die Build-Anweisungen unten befolgen. Ändern Sie -DGGML_CUDA=ON auf -DGGML_CUDA=OFF wenn Sie keine GPU haben oder nur CPU-Inferenz möchten. Für Apple Mac / Metal-Geräte, setzen Sie -DGGML_CUDA=OFF und fahren Sie dann wie üblich fort - Metal-Unterstützung ist standardmäßig aktiviert.

apt-get update
apt-get install pciutils build-essential cmake curl libcurl4-openssl-dev -y
git clone https://github.com/ggml-org/llama.cpp
cmake llama.cpp -B llama.cpp/build \
    -DBUILD_SHARED_LIBS=OFF -DGGML_CUDA=ON -DLLAMA_CURL=ON
cmake --build llama.cpp/build --config Release -j --clean-first --target llama-cli llama-mtmd-cli llama-server llama-gguf-split
cp llama.cpp/build/bin/llama-* llama.cpp

Beim Verwenden von --jinja hängt llama-server die folgende Systemnachricht an, wenn Tools unterstützt werden: Antworte im JSON-Format, entweder mit tool_call (einer Anfrage zum Aufruf von Tools) oder mit einer Antwort auf die Anfrage des Benutzers . Dies verursacht manchmal Probleme mit Fine-Tunes! Siehe das llama.cpp-Repo für weitere Details.

Lade zuerst Devstral 2 herunter:

# !pip install huggingface_hub hf_transfer
import os
os.environ["HF_HUB_ENABLE_HF_TRANSFER"] = "1"
from huggingface_hub import snapshot_download
snapshot_download(
    repo_id = "unsloth/Devstral-2-123B-Instruct-2512-GGUF",
    local_dir = "Devstral-2-123B-Instruct-2512-GGUF",
    allow_patterns = ["*UD-Q2_K_XL*", "*mmproj-F16*"],
)

Um Devstral 2 für den Produktionseinsatz bereitzustellen, verwenden wir llama-server Führen Sie in einem neuen Terminal, z. B. via tmux, die Bereitstellung des Modells aus mit:

Wenn du das Obige ausführst, erhältst du:

Dann in einem neuen Terminal, nachdem Sie pip install openaiausgeführt haben:

Das wird einfach 4 ausgeben. Du kannst zum llama-server-Bildschirm zurückgehen und möglicherweise einige Statistiken sehen, die interessant sein könnten:

Für Argumente wie die Verwendung von spekulativem Decoding, siehe https://github.com/ggml-org/llama.cpp/blob/master/tools/server/README.md

Eigenheiten von Llama-server

  • Beim Verwenden von --jinja hängt llama-server die folgende Systemnachricht an, wenn Tools unterstützt werden: Antworte im JSON-Format, entweder mit tool_call (einer Anfrage zum Aufruf von Tools) oder mit einer Antwort auf die Anfrage des Benutzers . Dies verursacht manchmal Probleme mit Fine-Tunes! Siehe das llama.cpp-Repo für weitere Details. Du kannst dies stoppen, indem du --no-jinja verwendest, aber dann Tools wird nicht mehr unterstützt. Zum Beispiel verwendet FunctionGemma standardmäßig:

    Aber weil llama-server eine zusätzliche Nachricht anhängt, erhalten wir:

    Wir haben das Problem gemeldet an https://github.com/ggml-org/llama.cpp/issues/18323 und die Entwickler von llama.cpp arbeiten an einer Lösung! Bis dahin füge bitte für alle Fine-Tunes den Prompt speziell für Tool-Calling hinzu!

🧰Tool-Calling mit llama-server

Siehe Tool Calling Guide wie Tool-Calling durchgeführt wird!

Zuletzt aktualisiert

War das hilfreich?