« Le keep-alive honnête réduit les traînes quand TLS et TCP restent tièdes à travers un tunnel. Les slots ne sont pas de simples workers HTTP : ils engagement le cache KV dimensionné par le contexte. Comparez le serveur llama.cpp à une API agrégée de type vLLM comme deux lignes budgétaires sur une enveloppe mémoire unique. »

Sur cette page : Frictions · Matrice · Sondes curl · Seuils charge · Achat ou location · Jalons · FAQ

Les équipes sur Mac mini M4 doivent lier transport, parallélisme et KV avant la signature finance. Croisez LM Studio contre llama.cpp, OpenClaw et vLLM, routage multi-modèles et llama.cpp contre Ollama pour aligner passerelles et RAM unifiée.

Frictions typiques

  1. Rotation des connexions : chaque client qui referme TCP refroidit TLS ; la traîne ressemble alors à un modèle lent.
  2. gonflement des slots : augmenter le nombre de conversations sans calcul KV fait jaunir la mémoire unifiée alors que les tokens par seconde restent flatteurs.
  3. Récits vLLM flous : indiquer sur quel saut vit le KV — frontal Mac ou worker Linux GPU — et pas seulement la marque.

Matrice de décision

Contrat avant prod : ajustez quant, contexte réel et streaming ; le non-stream masque des trous qui consomment du KV. Si Linux porte vLLM et le Mac proxifie, dupliquez le diagnostic transport par saut.

Pour la feuille finance, reliez chaque ligne du tableau à une colonne de carnet de tests : identifiant de build, fenêtre de soak, captures Activity Monitor et coût horaire du nœud. Les décideurs signent plus vite lorsque latence, mémoire et euros apparaissent sur la même page.

Axe Serveur llama.cpp API type vLLM Mac distant
Keep-alive Sockets tièdes aident ; alignez les timeouts proxy inactifs. Passerelles multiplexent ; les flux inactifs brûlent quand même le budget décodeur. Mesurez A B sur le même VPN avec et sans Connection: close.
Slots Les drapeaux de parallélisme mappent vers un KV estimable. Surveillez délais de file et rejets, pas seulement les codes deux cents. Plafonnez le parallélisme passerelle au contrat KV du Mac.
Budget KV Poids et KV cohabitent en mémoire unifiée. Les hôtes GPU diffèrent ; gardez les fronts Mac peu profonds. Réservez des gigaoctets pour macOS et vos démons avant le modèle.
Surface ops Binaire épinglé, peu de pièces mobiles. Plus de routes à figer et auditer. Journalisez qui termine TLS sur la machine louée.
Acceptation coût Location plus énergie sur une ligne. Séparez passerelle Mac et GPU Linux plus sortie. Joignez les deux aux journaux de soak pour la finance.

Sondes curl exécutables

Deux passes : keep-alive puis Connection: close pour isoler la taxe handshake. Adaptez hôte, jeton et modèle ; même chemin pour llama.cpp sur /v1/chat/completions et passerelles OpenAI-compatibles. Logguez durée, code HTTP et TLS à côté des métriques modèle. Ajoutez une troisième passe avec stream:true si votre charge réelle décode au fil de l’eau : le premier jeton révèle souvent la contention avant la moyenne des jetons suivants.

curl -sS --http1.1 -H "Authorization: Bearer JETON" -H "Content-Type: application/json" -d '{"model":"local","messages":[{"role":"user","content":"ping"}],"max_tokens":32}' http://127.0.0.1:8080/v1/chat/completions

Remplacez JETON par votre secret, local par l’identifiant servi et l’URL par votre hôte ou le port tunnel SSH.

Seuils d’essai et de charge

Soixante tours curl -w "%{http_code} %{time_total}\n", puis soak mixte 600 s si la passe rapide est verte. Rejet si p95 TTFT > 1,2 s (prompts courts), p95 écart jetons streamés > 120 ms, > 2 % de 5xx ou timeout, ou pression rouge > 45 s. En doublant le parallèle : p95 TTFT dans +15 % du flux simple ; gardez ≥ 3 Go RAM libre sous plafond déclaré. Coupez slots, contexte, quant ou agrégation amont avant de blâmer le VPN.

Achat ou location du Mac distant

Acheter pour capacité multi-trimestres, base sécurité figée et amortissement au bilan. Louer pour combustion horaire lisible, soaks pré-lancement ou bacs M4 homogènes sans logistique. La location donne souvent des mesures plus stables : hôte éveillé, moins de bruit qu’un portable. Même exigence documentaire pour l’achat ; rejouez binaires, quants et curl sur le nœud retenu. Documentez aussi qui porte la garantie matériel et le délai de remplacement disque, car un incident disque pendant un soak invalide la comparaison si vous ne le notez pas.

Six jalons d’acceptation

  1. Artefacts : checksum poids, commit ou digest, gabarit tokenizer.
  2. Transport : HTTP, idle proxy, MTU VPN, pools client.
  3. Slots : contexte max × flux parallèles vs RAM libre.
  4. Curl A/B : tiède vs Connection: close, puis stream.
  5. Soak 600 s : TTFT, p95 flux, RSS, swap, pression.
  6. Coût : €/h location ou amortissement + risque.
  • 600 s décodage stable avant go.
  • p95 TTFT +15 % max si parallèle ×2.
  • ≥ 3 Go marge RAM sous plafond.

FAQ

Pool HTTP partagé ? Oui sous boucles d’outils ; cap connexions = politique slots serveur.

vLLM sur Linux seul ? Budget Mac si KV ou TLS sticky côté Apple Silicon.

Signal rapide ? Curl tiède vs fermé puis deux streams contexte max ; pression → baissez slots avant noyau.

Sans compte : tarifs, achat, blog technique, accueil.

Synthèse : connexions réutilisées, slots bornés par le KV, curl avant charge lourde, €/h ou amortissement joint au soak 600 s.