BlogModelle
Modellqualität nach der Quantisierung prüfen
Bevor ein quantisiertes Modell das Original ersetzt, wiederholen Sie dieselben Aufgabentests, mit denen Sie das Original freigegeben haben, und ergänzen Sie die Prüfungen, bei denen Quantisierung am ehesten Schaden anrichtet: strukturierte Ausgabe, Ihre längsten Eingaben, seltene Kategorien und Sprachen sowie alle Verhaltensregeln, die das Modell einhalten muss. Messen Sie die Serving-Performance bei Ihrem Latenzziel mit Ihrem eigenen Traffic. Wechseln Sie nur, wenn die Qualität in jedem wichtigen Ausschnitt hält und sich die Ersparnis als weniger GPUs oder mehr Anfragen pro GPU zeigt.
Was Quantisierung verändert
Quantisierung speichert Gewichte, manchmal auch Aktivierungen oder den KV-Cache, mit weniger Bits, um Speicher zu sparen, und versucht dabei die Genauigkeit zu erhalten. Die Dokumentation von Hugging Face Transformers listet viele Verfahren: Einige brauchen Kalibrierungsdaten, andere quantisieren zur Laufzeit, und die Unterstützung unterscheidet sich je nach Hardware. vLLM veröffentlicht eine Kompatibilitätstabelle nach GPU-Generation, ein Format, das auf einer Karte läuft, muss also auf einer anderen nicht laufen.
Kurtic und Kollegen führten über 500.000 Evaluierungen mit der Llama-3.1-Familie durch. Sie fanden 8-Bit-Gleitkomma für Gewichte und Aktivierungen praktisch verlustfrei, gut abgestimmte 8-Bit-Ganzzahlformate mit 1 bis 3 Prozent Einbuße und reine 4-Bit-Gewichtsquantisierung konkurrenzfähiger als erwartet. Diese Ergebnisse sind Durchschnitte über akademische Benchmarks und praxisnahe Aufgaben für eine Modellfamilie. Ihr Modell, Ihre Aufgabe und Ihr Format können sich anders verhalten, besonders an den Rändern.
Die Tests, die Sie wiederholen sollten
Lassen Sie Original und quantisiertes Modell nebeneinander auf identischen Eingaben laufen, mit denselben Prompts, Dekodiereinstellungen und demselben Bewertungscode.
- Das zurückgehaltene Aufgabenset aus der ursprünglichen Freigabe, bewertet pro Klasse und für jeden kritischen Ausschnitt, nicht nur insgesamt
- Strukturierte Ausgabe: Parse-Quote, Schema-Gültigkeit und Argumente von Tool-Aufrufen, bei denen ein einziges falsches Token das Ergebnis zerstört
- Ihre längsten echten Eingaben, besonders wenn auch der KV-Cache quantisiert ist
- Seltene Kategorien und weniger verbreitete Sprachen, bei denen kleine Verschiebungen der Wahrscheinlichkeiten die Antwort ändern
- Verhaltensprüfungen, die Sie für das Original durchführen, etwa Ablehnungen und Vorrang von Anweisungen
- Eine Übereinstimmungsprüfung: der Anteil der Fälle, in denen beide Modelle dieselbe Antwort geben, wobei jede Abweichung in einem kritischen Ausschnitt von einer Person gelesen wird
Öffentliche Benchmarks filtern vor, Ihre Tests entscheiden
Das lm-evaluation-harness von EleutherAI führt Dutzende Standardbenchmarks aus und kann vLLM als Backend nutzen, ein Vergleich von Original und quantisiertem Checkpoint auf einigen davon ist also günstig. Werten Sie einen deutlichen Rückgang als Grund, früh abzubrechen. Werten Sie fehlenden Rückgang als Erlaubnis, Ihre eigenen Tests zu fahren, nicht als Freigabe. Standardbenchmarks enthalten selten Ihre Dokumentformate, Kategorien oder Ihr Ausgabeschema.
Ein durchgerechneter Vergleich mit Kosten pro GPU
Quantisierung lohnt sich nur, wenn sie ändert, wie viele GPUs Sie betreiben oder wie viel jede bei Ihrem Latenzziel bedient. Kurtic und Kollegen stellten fest, dass das kosteneffizienteste Format vom Deployment abhing: 4-Bit-Gewichte für synchrones Serving, 8-Bit für Gewichte und Aktivierungen bei Continuous Batching. Messen Sie, statt anzunehmen. Eine hypothetische Auswertung für ein Extraktionsmodell:
- Original, 16 Bit, zwei GPUs pro Replika: Feld-F1 0,871, gültiges JSON 99,9 Prozent, 6 Anfragen pro Sekunde im Ziel, also 3 pro GPU
- 8 Bit für Gewichte und Aktivierungen, eine GPU pro Replika: Feld-F1 0,868, gültiges JSON 99,8 Prozent, 4 Anfragen pro Sekunde im Ziel, also 4 pro GPU
- Kritischer Ausschnitt, Bankdaten auf gescannten Rechnungen: bei beiden 97 von 100 richtig
Die Kapazität pro GPU steigt um ein Drittel, der kritische Ausschnitt bleibt unverändert, und der Rückgang des Gesamt-F1 um 0,003 liegt innerhalb der vor dem Test vereinbarten Toleranz von 0,005. Nach diesen Kriterien geht das quantisierte Modell in einen Schattenbetrieb auf Live-Traffic, während das Original für einen Rollback bereitsteht. Wären bei den Bankdaten auch nur zwei Fälle mehr falsch gewesen, hätte die Antwort nein gelautet, unabhängig von der Ersparnis.
Wann der Vergleich wiederholt werden muss
Ein quantisierter Checkpoint ist ein neues Modell. Wiederholen Sie den Vergleich nach jeder neuen feingetunten Version, nach einem Wechsel des Quantisierungsverfahrens oder seiner Kalibrierungsdaten und nach einem Update des Inferenzservers oder seiner Kernels, denn vLLM lässt Sie zwischen Kernel-Backends für quantisierte Schichten wählen. Versionieren Sie Testset, Bewertungscode und Ergebnisse gemeinsam, damit der nächste Vergleich dieselbe Grundlage nutzt, statt sie neu aufzubauen.
Fragen
Ist 8-Bit-Gleitkomma-Quantisierung immer unbedenklich?
Kurtic und Kollegen beschreiben es in einer Studie, die sie als bislang umfassendste ihrer Art bezeichnen, für die Llama-3.1-Familie als praktisch verlustfrei. Das ist ein starker Beleg, aber es ist nicht Ihr Modell und nicht Ihre Aufgabe, und die FP8-Unterstützung hängt von der GPU-Generation ab. Führen Sie den Vergleich trotzdem durch. Meist bestätigt er das Ergebnis schnell.
Sollten wir auch den KV-Cache quantisieren?
Das schafft Speicher für mehr gleichzeitige oder längere Anfragen, und vLLM bietet mehrere Datentypen mit geringerer Genauigkeit für den KV-Cache. Behandeln Sie es als eigene Änderung mit eigenem Testlauf, gewichtet auf Ihre längsten Eingaben, damit Sie wissen, welche Änderung einen Verlust verursacht hat.
Wer sollte ein quantisiertes Modell freigeben?
Dieselbe verantwortliche Person, die das Original freigegeben hat, mit denselben Abnahmekriterien. Cloudsail kann den direkten Vergleich in Ihrer Umgebung durchführen und Testset sowie Skripte übergeben, die Entscheidung bleibt aber bei Ihrem Team.
Verwandte Leistungen
Training eigener Modelle
Ein kleines Open-Weight-Modell, für eine Aufgabe trainiert und bei Kosten und Genauigkeit mit Ihrem aktuellen Modell verglichen.
KI-Engineering und -Architektur
Assistenten, Sprachschnittstellen und Agenten in den Produkten, die Sie verkaufen, samt Serving und Retrieval darunter.
Mehr aus dem Blog
Feingetunte Modelle bewerten
Wie Sie zeigen, dass ein feingetuntes Modell das bisherige ersetzen sollte: vorab festgelegte Abnahmekriterien, ein fairer Vergleich auf zurückgehaltenen Fällen sowie Kosten und Latenz in derselben Tabelle.
GPU-Kapazität für Inferenz planen
Wie Sie die GPU-Kapazität für ein selbst betriebenes Modell bemessen: was eine Replika begrenzt, wie Sie sie bei Ihrem Latenzziel benchmarken, wie viele Repliken die Spitzenlast braucht und wie Sie ungenutzte Stunden vermeiden.
Latenzbudget für LLM-Funktionen
Wie Sie herausfinden, warum eine KI-Funktion langsam ist: jede Anfrage in Warteschlange, Retrieval, Modell und Tools aufteilen, den größten veränderbaren Anteil beheben und die Ausreißer unter Last messen.
Mit einem Engineer sprechen
Bringen Sie eine Aufgabe mit, die Sie verbessern möchten. Das Gespräch dauert 30 Minuten und braucht keinen Zugriff auf Ihre Systeme oder Ihre Daten.
Die Buchung läuft über Google Kalender.
Lieber zuerst schreiben? Hinterlassen Sie Ihre E-Mail-Adresse und ein paar Zeilen, dann antworten wir mit Terminvorschlägen.
Sehen Sie in Ihrem E-Mail-Programm nach dem Entwurf
Senden Sie ihn von dort ab, und ein Engineer antwortet Ihnen persönlich mit Terminvorschlägen für ein 30-minütiges Gespräch. Hat sich kein Entwurf geöffnet, schreiben Sie uns an miki@cloudsail.com.