Kleine Sprachmodelle im Praxistest – Teil 6

Retrieval Augmented Generation und Cache Augmented Generation

Wie gut schlagen sich kleine Sprachmodelle bei der Verarbeitung längerer Texte? Es existieren hierfür zwei bekannte Ansätze, Retrieval-Augmented Generation (RAG) und Cache-Augmented Generation (CAG).

Retrieval-Augmented Generation (RAG)

Bei diesem Ansatz wird zunächst ein Retrieval-Schritt durchgeführt, bei dem relevante Textstellen gesucht und anschließend an das Sprachmodell übergeben werden. Häufig kommen dabei Word Embeddings und Vektordatenbanken zum Einsatz. Allerdings gab es bei meinen eigenen Tests Hinweise darauf, dass diese Methode speziell bei deutschen Texten nicht immer gut funktioniert. Klassisches Retrieval (z. B. durch Suchalgorithmen) könnte hier eine bessere Alternative sein. Zugegebenermaßen handelt es sich hier um anekdotische Evidenz, ein systematischer Test könnte hier Klarheit bringen.

Cache-Augmented Generation (CAG)

Hier wird ein potenziell großes Dokument in den Kontext in das Modell geladen. Dafür ist ein großes Kontextfenster nötig, weshalb ja auch schon in Teil 1 erwähnt wurde, dass für diesen Test Modelle mit entsprechend großer Kapazität ausgewählt wurden. In einem aktuellen Artikel wird jedoch auf das Problem des „Context Rot“ hingewiesen, was bedeutet, dass bei einem großen Kontext die Qualität der Antworten eines Modells degeneriert.

Die getesteten Modelle

Eine positive Überraschung war, dass Qwen3 doch geeignet ist um mit langen Texten umzugehen! Die bisher betrachtete MLX-Version hatte, wie schon in den vorherigen Teilen erwähnt, Probleme mit einem großen Kontext. Die trifft jedoch erfreulicherweise nicht auf die „unsloth“-Version zu. Da diese auf dem Mac allerdings nicht die MLX-Schnittstelle nutzt, ist sie langsamer und liegt damit in puncto Geschwindigkeit auf einem ähnlichen Niveau wie GPT-OSS.

Gemma blieb außen vor, da es bei langen Kontexten sehr lange braucht, um den Prompt zu verarbeiten. Dies ist zunächst einmal normal, allerdings waren anderen die anderen Modelle nur bei der ersten Anfrage, in der also tatsächlich mit einem sehr langen Prompt der Kontext eingebracht wurde, langsam. Danach antworteten sie in normaler Zeit. Gemma dagegen brauchte oftmals auch danach noch sehr lange, um weitere Anfragen zu beantworten.

In diesem Test wurden daher die folgenden drei Modelle betrachtet:

  • GPT-OSS
  • Qwen3 (in der „unsloth“-Version)
  • Mistral 3.2 Small

Einstellungen

Bei allen Modellen ist darauf zu achten, dass die context length hoch gedreht wird (z.B. bei LM Studio ist sie standardmäßig bei lediglich 4096 Tokens) und, damit das Speicher-Limit nicht gesprengt wird, Flash Attention und Cache Quantization aktiviert wird. (Den Hinweis, dass die Einstellung Context Length ignoriert wird, wenn KV Cache Quantization aktiviert wird, kann man übrigens selbst ignorieren… Wenn Context Length nicht trotzdem erhöht wird, werden große Prompts nicht akzeptiert.)

Die Testdaten

Neben zwei wissenschaftlichen Arbeiten wurden drei Wikipedia-Einträge als Grundlage genommen:

Sowohl beim Frankfurter Nordend (siehe Tests in den vorherigen Teilen) als auch bei Charles Babbage kam es, wenn die Modelle nur ihr Weltwissen zur Verfügung hatten, zu Halluzinationen.

Wurden die Artikel komplett in den Kontext geladen, konnten jedoch alle Modelle alle Fragen korrekt beantworten!

Herausforderungen bei Richard von Weizsäcker

Der Artikel über Richard von Weizsäcker war deutlich länger und stellte die Modelle vor größere Herausforderungen. Hier mussten Flash Attention und KV Cache Quantization zum Einsatz kommen.

Testfrage 1: Wo war Richard von Weizsäcker Ehrenbürger?

  • Problem: Bonn, Stuttgart und Berlin wurden zusammen erwähnt, Danzig erst später.
  • Ergebnis: Die Modelle fanden Danzig nicht immer. Allerdings verbesserte sich die Trefferquote, wenn der Prompt geschickt formuliert wurde (z. B. mit der Forderung, auch scheinbar gefundene Informationen weiter zu überprüfen).

Testfrage 2: Wie ist Fritz von Weizsäcker gestorben?

Fritz von Weizsäcker ist ein Sohn Richards.

  • Problem: Im Text stand nur das Sterbejahr, Dass sein Tod ein Mord war, wurde lediglich in einer einzigen Angabe im Literaturverzeichnis erwähnt (Verweis auf den Artikel „Brutale Bluttat in Berlin: Das steckt hinter dem Mord an Fritz von Weizsäcker„)
  • Ergebnis:
    • Qwen3 und GPT-OSS gaben keine Auskunft darüber.
    • Mistral halluzinierte das genaue Sterbedatum und Umstände des Mordes, die nicht den Tatsachen entsprachen. Bei Nachfrage gab Mistral jedoch zu, dass es sich um eine Halluzination handelte.

Wissenschaftliche Arbeiten und Halluzinationsprobleme

Ein weiteres Problem zeigte sich bei der Verarbeitung wissenschaftlicher Texte:

  • GPT-OSS erfand in einem Fall eine Skala von 1–5, die so nicht beschrieben war. In Wahrheit wurde in der Arbeit ein rein qualitativer Ansatz beschrieben.
  • Mistral und Qwen3 machten diesen Fehler nicht.

Besonders auffällig war, dass GPT-OSS selbst bei der Verarbeitung nur des einzelnen Abschnitts, in der dies beschrieben war, die numerische Skala erfand. Diese Beobachtung führt zu einer wichtigen Erkenntnis: Hier wäre ein RAG-Ansatz auch keine Lösung gewesen. Da das Problem hier offensichtich nicht an der Länge des Kontextes lag, hätte auch die gezielte Auswahl relevanter Textstellen durch Retrieval nichts geändert.

Fazit

Prinzipiell eignen sich die drei betrachteten Modelle für Cache Augmented Generation, allerdings mit Einschränkungen. In allen Fällen muss beachtet werden, dass Halluzinationen trotzdem auftreten können, auch wenn die korrekten Antworten im Kontext stecken. Dies ist ein größeres Problem, wenn auch der Kontext größer ist, aber das GPT-OSS-Beispiel zeigt, dass es auch sonst auftreten kann. Mit geeigneten Prompts, in denen die Modelle angewiesen werden, Textstellen zu zitieren, in denen das behauptete steht, lässt sich diese Gefahr verkleinern, wenn auch nicht komplett ausräumen. Interessanterweise beachteten Qwen3 und Mistral die Anweisungen bedeutend besser als GPT-OSS, das die Anweisung, Textstellen zu zitieren, weitgehend ignorierte.

Aus diesen Gründen würde ich GPT-OSS für diesen Anwendungsfall eher nicht verwenden. Qwen3, in der „unsloth“-Version, funktionierte dagegen erstaunlich gut, was für mich überraschend war, da die MLX-Version durch eine große context length noch zum Absturz gebracht werden konnte. Qwen3 ist trotz der Leistungseinbußen durch die Verwendung der GGUF- statt MLX-Schnittstelle außerdem mmer noch deutlich schneller als Mistral.

Kleine Sprachmodelle im Praxistest – Teil 5

OpenAI’s gpt-oss 20B

Mitten in meinen Praxistests kommt auf einmal OpenAI und stellt eine neue Version von gpt mit „open weights“ zur Verfügung. Auch wenn es als Reasoning-Modell eigentlich nicht in das Schema dieses Vergleichs passt, lässt sich ein Modell von OpenAI natürlich nicht einfach ignorieren! Zudem ist die Reasoning-Phase recht kurz und wenn man in LM Studio einstellt, dass reasoning_content und content in der API getrennt werden, funktioniert es auch mit der Editor-Integration in Zed.

Aber ist das Modell auch gut?

Spoiler: Nein.

Direkt die erste Testfrage liefert eine negative Überraschung: gpt wertet das aktuelle Datum aus, weiß also, dass gerade August 2025 ist, und antwortet trotzdem, dass Joe Biden Präsident der USA sei.

Die Antworten zu den anderen Testfragen (siehe Teil 2) sind unauffällig. gpt macht auf Deutsch Fehler, so ist bei der Frage nach dem Gesetzgebungsprozess statt vom Vermittlungsausschuss vom „Konkiliationsausschuss“ die Rede. Auch in der Inge-Wenzel-Geschichte sind ein paar merkwürdige Formulierungen.

Bei der Frage nach Sehenswürdigkeiten im Frankfurter Nordend (zum Test von Halluzinationen aus dem Modellwissen) schneidet gpt-oss ziemlich schlecht ab.

genannte Ortedavon tatsächlich existentweitgehend korrekt beschriebendavon tatsächlich im Nordend
Gemma3-12B171092
Gemma3-27B20982
Mistral Small 3.210993
gpt-oss 20B15210
Qwen3 30B7000
EXAONE 4.0nach 200 abgebrochen??0

Immerhin ist es schnell. Hier der durchschnittliche Token/Sekunde-Wert über die 8 Testfragen (auch wieder aus Teil 2):

ModellTokens/Sekunde
Qwen3 30B67
gpt-oss 20B60
Gemma3 12B31
Mistral Small 3.220
Gemma3 27B13
EXAONE 4.012

Bei den Programmieraufgaben funktionierten Tic-Tac-Toe, Minesweeper und Vier Gewinnt ohne Computergegner ohne Fehler. Vier Gewinnt mit Computergegner funktionierte dem ersten Anschein nach schon, allerdings hatte die Logik, nach der der Computer zieht, einen Fehler. Sofern der menschliche Spieler einzügig gewinnen kann, sollte der Computer das eigentlich blockieren, was das gpt-Programm jedoch nicht tat. Der Versuch, gpt das Problem selbst korrigieren zu lassen, schlug fehl. Nach einer kleinen händischen Debugging-Session bekam ich heraus, dass es sich um einen banalen „off-by-one“-Fehler handelte und der Computer einfach immer eine Spalte zu weit links setzt als die tatsächlich berechnete. Spaßeshalber habe ich mal Qwen3 Coder und Devstral das Programm analysieren lassen um zu sehen, ob die vielleicht den Fehler finden. Qwen3 Coder tappte dabei völlig im Dunkeln. Devstral gab recht allgemeine Antworten und schlug vier Möglichkeiten vor, woran es vielleicht liegen könnte, und eine davon war tatsächlich, dass es sich um einen off-by-one-Fehler handeln könnte. Konkret konnte aber auch Devstral den Fehler nicht finden.

Das große Problem von gpt-oss

Das große Problem von gpt-oss 20B ist aber, dass es stärker als die anderen Modelle (außer dem eh schon disqualifizierten Exaone) halluziniert.

Und das nicht nur im Modellwissen, sondern auch bei Fragen nach Fakten, die im Kontext stehen!

Das betrifft sowohl in den Kontext geladene große Texte als auch per Tool-Nutzung aus Wikipedia geholte Texte. (gpt-oss ist für Tool-Nutzung optimiert und kann aus LM Studio heraus Wikipedia abfragen.)

Damit ist es für Retrieval Augmented Generation und Cache Augmented Generation (kommt im nächsten Teil etwas genauer dran) ungeeignet!

Das passiert zwar bei anderen Modellen einschließlich Mistral auch gelegentlich, aber nicht so deutlich und so falsch wie bei gpt-oss 20B. Noch schlimmer: Wenn man bei Mistral noch mal nachfragt, wo das behauptete denn nun eigentlich im Text steht, bemerkt es meistens den Fehler. gpt-oss dagegen bleibt fest in der Halluzination gefangen und erfindet Textstellen.

Fazit

Diesen Ergebnissen nach fühlt sich gpt-oss in fast allen betrachteten Kriterien wie eine schlechtere Version von Qwen3 an. Es ist ein bisschen langsamer, beim Programmieren ein bisschen schlechter, beide halluzinierten viel und ist beide sind für die Verarbeitung eines größeren Context-Window nicht geeignet; Qwen3 nicht, weil es sich aufhängt (siehe Teil 4) und (siehe Teil 6 für die Korrektur!) gpt-oss 20B nicht, weil es zu stark halluziniert und deswegen den Sinn eines großen Kontexts ad absurdum führt.

Wie immer beziehen sich alle Ergebnisse auf Tests, die ich mit LM Studio auf meinem MacBook Pro mit M2 Max und 32 GB RAM durchgeführt habe und bei gpt-oss kam die 20B-Version zum EInsatz. Bei den Optionen wurde die context-length hoch gedreht und Flash Attention und KV-Quantization (diesmal FP16) aktiviert.

Kleine Sprachmodelle im Praxistest – Teil 4

Qwen3 Coder vs. Devstral: Ein Vergleich der Sprachmodelle für die Programmierung

In diesem Teil habe ich mit zwei Sprachmodellen gearbeitet, die sich speziell für Programmieraufgaben eignen: Qwen3 Coder 30B A3B Instruct und Devstral Small 2507 jeweils in der MLX-Version über LM Studio. Beide Modelle sollen Entwicklern bei der Erstellung, Fehlerbehebung und Optimierung von Code helfen. Doch wie schlagen sie sich im direkten Vergleich? Hier sind meine Erfahrungen aus verschiedenen Tests.

Test 1: C++-Programmierung mit Zed und LM Studio

Für den ersten Test habe ich beide Modelle in Zed, einem modernen Code-Editor, getestet. Die Prompts wurden auf Englisch direkt im Editor-Fenster gestellt. Ich ließ mir fünf Programme generieren:

  1. Tic Tac Toe (erst normal, dann mit zufällig spielendem Gegner)
  2. Vier gewinnt (erst normal, dann mit nicht-zufälligem Gegner)
  3. Minesweeper

Ergebnisse:

  • Tic Tac Toe:
    • Beide Modelle liefern fehlerfreie C++-Programme.
  • Tic-Tac-Toe mit Computer-Gegner:
    • Devstral hatte hier einen Fehler: Es wurden zwei Variablen, innerhalb eines do-Blocks deklariert und dann versucht, in der abschließenden while-Bedingung darauf zuzugreifen, wo sie allerdings nicht mehr sichtbar sind. Devstral konnte den Fehler jedoch selbst korrigieren, indem ich die Compiler-Fehler mitgab und die entsprechende Funktion markierte.
    • Qwen3 Coder hatte keine Fehler.
  • Vier gewinnt:
    • Beide Modelle generierten den Code ohne Fehler, sowohl für die Zwei-Spieler-Variante als auch für eine Version mit Computer-Gegner, der diesmal nicht rein zufällig spielen durfte.
  • Minesweeper:
    • Qwen3 Coder lieferte einen fehlerfreien Code.
    • Devstral generierte und zeigte zunächst nur ein „board for reference“. Nach der Aufforderung, das Spiel spielbar zu machen, generierte es einen Code, bei dem am Anfang bereits die Zahlen (aber nicht die Bomben) aufgedeckt waren. Zudem gab es gelegentlich einen segmentation fault. Ich habe diese Fehler nicht weiter analysiert.

Fazit des C++-Tests:

Qwen3 Coder hat die Nase vorn. Während beide Modelle bei einfachen Aufgaben gut funktionierten, zeigte Qwen3 Coder eine höhere Zuverlässigkeit, insbesondere bei komplexeren Anforderungen wie Minesweeper. Außerdem ist Qwen3 Coder deutlich schneller.

Test 2: Python-Libraries für XQuery

Im zweiten Test habe ich beide Modelle in Zed, diesmal im Chatfenster des rechten Docks, nach Python-Libraries für XQuery gefragt. Bei diesem Nischen-Thema hatte ich vor etwa anderthalb Jahren noch mit keinem Sprachmodell zielführende Hinweise bekommen, daher hatte ich an sich nicht viel Hoffnung, aber es kam anders…

Ergebnisse:

Qwen3 Coder funktionierte zunächst nicht im Zed Chatfenster. Eine Fehlermeldung wies auf ein Problem mit dem Prompt-Template hin. Der Fix bestand darin, in LM Studio das Prompt-Template des normalen Qwen3 zu verwenden.

Qwen3 Coder suchte dann mit pip nach möglicherweise passenden Paketen und hätte mir fast auf Verdacht lxml installiert (nein, das kann kein XQuery, nur XPath!).

Aus einem leeren Projekt heraus gestartet zeigte Devstral aus Modellwissen im Chat teils nützliche, aber auch inzwischen eingestellte Projekte.

Aus LM Studio heraus (ohne Systemprompts und Toolzugriff über Zed) lieferten beide Modelle teils eingestellte Projekte als Vorschläge oder Hinweise auf Packages, die nur so heißen, als könnten sie XQuery und in Wahrheit etwas ganz anderes sind, aber auch teils nützliche Hinweise!

Bis zu diesem Punkt lief das schon mal bedeutend besser als vor anderthalb Jahren. Das ist noch nicht super, aber der eine Hinweis auf ein existierendes Package das tatsächlich XQuery kann und auch noch maintained wird, war auf jeden Fall hilfreich.

Als ich später den Test aus einem in Zed geöffneten Python-Projekt heraus wiederholte, schauten übrigens erst mal beide Modelle meinen Code durch, ob ich nicht schon etwas hatte, und fanden das dann auch.

Aber erst mal musste das Programm ja geschrieben werden, deswegen ließ ich nach der Auswahl eines Python-Packages für XQuey beide Modelle Code generieren, der aber zunächst nicht funktionierte.

Beim Versuch, das Programm unter Angabe der Fehlermeldung sowie mit der in den Chat hineinkopierten Dokumentation von der Webseite zu korrigieren, trat dann ein unerwartetes Problem auf:

Qwen3 Coder zeigte bei größerem Kontext (wie eben hier dem Auszug aus der Dokumentation) seltsames Verhalten: Es wiederholte Teile des Kontextes endlos. Dies könnte mit dem Context-Window zusammenhängen, das in Wahrheit nur 32K zu sein scheint (obwohl eigentlich 256K einstellbar ist). Auf der Model Card bei Huggingface gibt es einen Hinweis: „If you encounter out-of-memory (OOM) issues, consider reducing the context length to a shorter value, such as 32,768.“ Dies deckt sich mit meiner Beobachtung. Auch wenn es bei mir zu keinem Abbruch mit Fehlermeldung kam, war eine Arbeit mit mehr als ca. 32K Tokens nicht möglich. (Korrektur: Dies scheint die MLX-Version zu betreffen, die „unsloth“-Version, die GGUF verwendet, scheint zu funktionieren, siehe Teil 6.)

Devstral lieferte dagegen auf die gleiche Anfrage hin ein korrigiertes Programm, sowohl aus LM Studio als auch aus Zed. (Dort allerdings erst im zweiten Anlauf nach einer Korrekturrunde.)

Generell ist beim Arbeiten mit großem Context-Window zu beachten, dass die Verarbeitung des Prompts dann lange dauert und bis zur ersten Antwort mehrere Minuten vergehen können. Weitere Anfragen werden dann aber normalerweise wieder schneller beantwortet.

Fazit des XQuery-Tests:

Qwen3 Coder war schon irgendwie hilfreich, aber auch sehr holprig. Das Context-Window ist in Wahrheit nur 32K groß, und für die Nutzung aus dem Zed-Chatfenster war eine manuelle Anpassung des Prompt-Templates in LM Studio nötig. Nur Devstral war in der Lage, mit großem Kontext zu arbeiten.

Gesamtfazit

Insgesamt ist das Ergebnis also nicht eindeutig:

  • Qwen3 Coder ist deutlich schneller als Devstral (das Verhältnis ähnelt dem zwischen Qwen3 und Mistral) und bei C++-Aufgaben besser.
  • Allerdings kann das zu kleine Context-Window problematisch werden, (Korrektur: siehe Teil 6, das für Qwen3 gesagte gilt sinngemäß auch für Qwen3 Coder) und für die Nutzung aus dem Zed-Chatfenster war eine manuelle Anpassung erforderlich.
  • Beide Modelle können Projekte durchsuchen und Tools nutzen, z. B. kann Qwen3 Coder auch pip verwenden, um zu sehen, welche Packages in Python installiert sind.

Fazit: Beide Modelle haben ihre Stärken und Schwächen. Qwen3 Coder ist schneller und zuverlässiger bei C++-Aufgaben, während Devstral bei Python-Fragen manchmal die bessere Lösung bietet und mit einem größeren Kontext arbeiten kann. Die Wahl des Modells hängt also vom konkreten Anwendungsfall ab.

Im übrigen habe ich mir auch für diesen Beitrag wieder von Mistral 3.2 helfen lassen, aus Stichpunkten Fließtext zu generieren. Ich würde sagen, das kann man schon sehr gut produktiv einsetzen.

Nachtrag: Vergleich mit nicht-coding-optimierten Modellen

Um zu untersuchen, ob die nicht auf Programmieren optimierten Modelle prinzipiell auch für Coding-Aufgaben geeignet wären, habe ich zusätzlich Qwen3 (nicht Coder), Mistral Small und Gemma3 mit der Minesweeper-Aufgabe getestet, um einen umfassenderen Eindruck zu gewinnen.

Qwen3 lieferte wie Qwen3 Coder einen fehlerfreien Code. Dies ist zunächst keine große Überraschung, da Qwen3 Coder auf dem gleichen Modell basiert.

Bei Mistral gab es ähnliche Probleme wie bei Devstral, auch das ist nicht überraschend, da auch diese beiden Modelle eine ähnliche Architektur haben.

Auch bei Gemma3 gab es Fehler. Die 27B-Version war besser als die 12B-Variante.

Die nicht für Coding optimierten Modelle sind also prinzipiell ebenfalls benutzbar, haben allerdings den Nachteil, dass sie nicht auf Tool-Unterstützung trainiert sind. Dass sie stattdessen Bildverarbeitung unterstützen bringt, für die Programmierung nichts.

Meine Empfehlung für Anwendungen in der Programmierung bleibt daher weiterhin Qwen3 Coder oder Devstral, letzteres insbesondere wenn das zu kleine Context-Window von Qwen3 Coder zum Problem wird.

Kleine Sprachmodelle im Praxistest – Teil 3

Inge Wenzel auf dem Weg nach Rimini

Inge Wenzel auf dem Weg nach Rimini war im letzten Jahrhundert eine Werbung der Deutschen Bundesbahn für Nachtzüge und heute ist es mein Test für kleine Sprachmodelle. Einfach mal ohne großen Kommentar folgen die Antworten von Mistral Small, Qwen3 und Exaone auf die Anfrage: „Erzähle eine Geschichte ‚Inge Wenzel auf dem Weg nach Rimini‘. Inge Wenzel ist eine junge Frau und fährt mit dem Schlafwagen nach Rimini. Sie hat im Zug eine interessante Begegnung.

Mistral und Gemma wären als Modelle mit der Fähigkeit, Bilder zu verarbeiten, im übrigen auch in der Lage, direkt auf Basis der Werbung eine Geschichte zu schreiben. Gemma macht das direkt, Mistral musste ich erst überreden, mir das Bild zu beschreiben und dann auf Basis der Beschreibung eine Geschichte zu erzählen.

Die Geschichten hier sind aber auf Basis des oben genannten Prompts entstanden. Für die größte Belustigung empfehle ich, bis zur letzten Geschichte durchzuhalten und dabei nicht zu vergessen, den Konservendosenbrenner einzupacken. 🙂

Sternschnuppen und neue Wege – Mistral

Es war ein warmer Sommerabend, als Inge Wenzel ihren Koffer in den Schlafwagen des Nachtzugs nach Rimini schob. Die Sonne war gerade hinter den Hügeln von München verschwunden, und die ersten Sterne funkelten am Himmel. Inge hatte sich diesen Urlaub lange gewünscht – eine Woche Sonne, Strand und Dolce Vita in der italienischen Adriastadt.

Sie betrat ihr Abteil, das mit seinen zwei schmalen Betten und dem kleinen Fenster über der Tür gemütlich wirkte. Nachdem sie ihre Sachen verstaut hatte, setzte sie sich ans Fenster und beobachtete, wie der Zug langsam aus dem Bahnhof rollte. Die Lichter der Stadt verschwammen zu einem warmen Glühen, und bald war nur noch die Dunkelheit der Nacht zu sehen.

Plötzlich öffnete sich die Tür ihres Abteils, und ein älterer Herr mit einem freundlichen Lächeln trat ein. „Guten Abend! Entschuldigen Sie die Störung, aber ich glaube, wir teilen uns dieses Abteil“, sagte er mit einer leichten Verbeugung. „Mein Name ist Professor Hartmann.“

Inge lächelte zurück und stellte sich vor. Der Professor setzte sich auf sein Bett und begann, seine Brille zu putzen. „Fahren Sie auch nach Rimini?“, fragte Inge neugierig.

„Ja, aber ich bleibe nur eine Nacht dort“, antwortete er. „Ich bin auf dem Weg zu einer Konferenz in Bologna, aber ich habe mir gesagt: Warum nicht eine Nacht im Schlafwagen verbringen und dabei die Sterne beobachten?“ Er zwinkerte ihr zu.

Die beiden kamen ins Gespräch, und Inge erfuhr, dass Professor Hartmann ein renommierter Astronom war. Er erzählte von seinen Reisen zu Observatorien in aller Welt und von seiner Leidenschaft für die Nacht Himmel. Inge, die selbst gerne fotografierte, war fasziniert.

„Wissen Sie“, sagte der Professor plötzlich und zeigte auf das Fenster, „heute Nacht gibt es einen besonders schönen Sternschnuppenregen. Wenn Sie möchten, können wir gemeinsam Ausschau halten.“

Inge war begeistert. Die beiden schalteten das Licht aus und setzten sich ans Fenster. Draußen zog die Landschaft vorbei, und bald tauchten die ersten Sterne auf. Der Professor erklärte ihr die verschiedenen Sternbilder, während Inge versuchte, sie mit ihrem Handy zu fotografieren.

Dann – plötzlich – ein helles Aufblitzen am Himmel. „Da! Eine Sternschnuppe!“, rief der Professor begeistert. Inge schloss die Augen und wünschte sich heimlich, dass dieser Urlaub noch schöner werden würde als erwartet.

Als der Zug schließlich in Rimini ankam, verabschiedeten sich die beiden mit einem herzlichen Händedruck. „Vielen Dank für den wunderbaren Abend“, sagte Inge.

„Gleichfalls“, antwortete der Professor. „Vielleicht sehen wir uns ja eines Tages wieder – vielleicht sogar unter einem Sternenhimmel.“

Inge stieg aus dem Zug und atmete die warme Mittelmeerluft ein. Sie wusste, dass dies nur der Anfang eines unvergesslichen Abenteuers war.

Und wer weiß – vielleicht würde sie Professor Hartmann ja wirklich eines Tages wiedersehen.

Licht am Meer – Qwen

Die Sonne stand tief am Horizont, als Inge Wenzel mit ihrem alten Rucksack und einer zerknitterten Reisekarte in die Abtei von Paderborn stieg. Sie war 24, mit kurz geschnittenem, aschblondem Haar, das im Wind wie ein Schatten flatterte. Ihr Blick war entschlossen, ihr Schritt leicht – als ob sie wüsste, dass sie nicht nur ein Ziel suchte, sondern auch eine Geschichte, die sich erst im Laufe der Nacht entfalten würde.

Sie war auf dem Weg nach Rimini. Nicht wegen des Strandes, nicht wegen der antiken Ruinen – nein, Inge wollte etwas anderes: die Stille der italienischen Nacht, die Sprache der alten Mauern, das Flüstern der Adria. Sie hatte ein Jahr in Berlin als Fotografin gearbeitet, doch die Bilder wurden trocken, die Menschen zu stumm. Sie brauchte das Licht, das nicht aus einem Blitz kam, sondern aus dem Blick eines alten Mannes, der auf einer Holzbank im Hafen von Riccione saß.

Mit einem Schlafwagenzug, der am frühen Abend abfuhr, hatte sie sich entschieden. Ein altes, verwaschenes Eisenbahnabteil mit Holzpaneelen, die nach altem Kaffee und Leder rochen. Sie fand ihren Platz – Nummer 13, Ecke, Blick nach rechts, auf die schweigenden Felder von Umbrien.

Zu Beginn des Zuges war alles still. Nur das Rattern der Schienen und das leise Summen der Klimaanlage. Inge zog ihre dicke Wolldecke aus dem Rucksack, legte sich hin, schloss die Augen. Doch die Müdigkeit kam nicht. Sie hörte, wie die Tür hinter ihr leise quietschte.

„Darf ich?“, sagte eine Stimme. Nicht laut, nicht verletzlich – nur warm, wie ein Kaffee am Morgen.

Sie blickte auf. Ein Mann stand im Türrahmen. Grau meliertes Haar, ein alter Tweedmantel mit Flecken, die wie Karten aus vergangenen Reisen aussahen. Er trug eine Brille mit runden Gläsern und lächelte – nicht zu freundlich, nicht zu abweisend, einfach: hier bin ich.

„Bitte“, sagte Inge. „Platz ist genug.“

Er setzte sich auf die gegenüberliegende Seite, zog eine alte Schreibmappe aus seinem Rucksack und begann zu schreiben. Keine Notizen, keine E-Mails – nur Papiere, auf denen mit Federkiele geschrieben stand, was wie Gedichte aussah.

„Sie reisen nach Rimini?“, fragte er nach einer Weile.

„Ja. Zum ersten Mal. Ich bin Fotografin – suche nach Licht, das nicht aus einem Studio kommt.“

Er nickte. „Dann suchen Sie das, was sich nicht fotografieren lässt.“

Sie lächelte. „Genau das.“

Er nannte sich Marco. Nicht sein richtiger Name, sagte er, sondern der, den er sich ausgesucht hatte, als er im Jahr 1973 in Genua erstmals die Adria gesehen hatte. „Ich war 23, und das Meer war grau, aber ich wusste: Es wird mich verändern.“

Sie sahen sich an – nicht mit der Art, wie man sich in einer Bahn erkennt, sondern so, als hätten sie sich schon einmal getroffen, in einem anderen Leben.

„Sie haben etwas an sich“, sagte Marco. „Als ob Sie nicht nur durch Italien reisen, sondern nach etwas suchen, das Sie vielleicht nicht benennen können.“

Inge nickte. „Ich suche nach einem Moment – einem Blick, einer Hand, die sich in einer Kirche an einer Wand festhält. Etwas, das nicht mehr ist, aber noch lebt.“

Marco lächelte. „Dann sind Sie auf dem richtigen Weg.“

Er öffnete seine Mappe. Darin waren nicht nur Texte, sondern auch alte Fotos – Schwarz-Weiß, verschoben, verwischt. Ein Mann, der an einem Strand in Sardinien eine Kamera hält. Eine Frau, die in einem winzigen Dorf in den Dolomiten ein Fenster öffnet. Und dann: eine junge Frau mit langem, dunklem Haar, die in der Dämmerung am Meer steht – genau wie Inge.

„Das war meine Schwester“, sagte Marco leise. „Sie ist 1991 in Rimini gestorben. Ein Unfall. Aber sie hat mir vorher geschrieben: Ich gehe jetzt zu dem Licht, das ich immer gesucht habe.

Inge sah ihn an. Ihr Herz schlug schneller. „Sie ist hier gewesen?“, flüsterte sie.

„Ja. Und ich glaube, sie hat gewollt, dass ich jemanden finde, der sie sieht – nicht mit meinen Augen, sondern mit denen, die noch nicht verloren sind.“

Ein Schweigen. Nur das Rattern der Schienen, das immer schneller wurde, als der Zug in die Hügel von Rom hineinfuhr.

„Sie hat die Augen von jemandem, der sieht“, sagte Inge nach einer Weile. „Ich glaube, ich habe sie gerade gesehen.“

Marco nickte. „Dann ist sie nicht weg. Sie ist nur anders geworden.“

Als der Zug in der Früh am Bahnhof von Rimini hielt, war der Himmel rosa. Inge stieg aus, ohne sich zu verabschieden. Sie wusste, dass Marco ihr nicht folgen würde – sein Weg war längst vorbei.

Aber sie blieb stehen, drehte sich um – und sah, wie er am Fenster stand, in seinem Tweedmantel, mit der Feder in der Hand. Er schrieb etwas, das sie nicht lesen konnte.

Dann winkte er – nicht ihr zu, sondern dem Licht.

Inge Wenzel ging weiter. In ihrem Rucksack lag nun keine Kamera, sondern ein Blatt Papier, auf dem Marco geschrieben hatte:
„Das Licht ist nicht da, wo man es sucht. Es ist dort, wo man anfängt zu sehen.“

Und als sie das Meer sah – das erste Mal, das echte, glitzernde Meer –, wusste sie: Sie war nicht nur nach Rimini gereist.

Sie war nach dem Licht gekommen.

Und es hatte sie schon gesehen.

Kunst im Schlafwagen – Exaone

Inge Wenzel schlief ein wenig ein, als der Schlafwagen der Reisebahn vorbei fuhr. Die kühle Luft durch die Fensteröffnung tat ihr den Tagtraum gefühlt ganz nah. Sie hatte sich für Rimini entschieden – ein kleines Städtchen an der Adriatischen Küste, wo sie als Flugbegleiterin einen Urlaub verbringen wollte. Der Zug war nicht besonders voll, und die anderen Reisenden schienen eher gelungen zu sein.

Als Inge versuchte, ihren Platz mit dem Blick auf die Landschaft einzustellen, bemerkte sie eine ältere Frau am anderen Ende des Wagens. Die Dame, mit bunten Haaren und einem leuchtenden Lächeln, saß auf einer Bank und zeichnete etwas auf einem kleinen Tablett. Inge fragte sich, was sie da zeichne – eine Küche? Ein Haus?

Überraschenderweise warf die Frau ihre Zeichenstifte weg und lachte: „Eine Waschmaschine, daraus sollte eine Toilette werden!“ Inge verstand nicht, doch die Frau – Mrina, so war ihr Name –, fuhr fort: „Meine Tochter liebt es, wenn ich mir Sorgen um die kleinen Dinge machen. Also mache ich das, was sie brauchen, bevor wir ankommen.“

So begann der Dialog. Mrina erzählte von ihrem Leben, von ihrer Tochter, die in Mailand lebte und jeden Sommer zu ihnen nach Hause kam. Inge erwähnte ihre eigene Arbeit und wie sehr sie sich auf die Ruhe an der Küste freute. Plötzlich berichtete Mrina, dass sie eigentlich niemals nach Rimini fahren wollte – doch ihre Tochter hatte gesagt: „Wir brauchen frischen Air, keine Strandliegen!“

Inge lachte und dachte an ihre eigene Faulheit im Urlaub. Mrina zeigte ihr dann eine kleine Notiz aus dem Handy ihrer Tochter: „Mama, pack den Konservendosenbrenner! Wir brauchen ihn.“ Inge staunte nicht schlecht.

Als der Zug in Rimini ankam, verabschiedete sich Mrina mit einem Gruß: „Wir sehen uns wieder, kleiner Reisende! Viel Spaß im Leben – und wenn du noch mal was aufbrennen musst, rufe mich an!“

Inge verließ den Zug mit einem lichten Herzen. Sie hatte nicht geglaubt, dass eine so simple Begegnung ihre Stimmung so sehr heben könnte. Doch Mrina, die kleine Kunstlehrerin aus Italien, hatte ihr gezeigt: Manchmal sind die besten Erzählungen nicht in den Guide-Büchern zu finden, sondern im Gespräch mit dem Menschen nebenan.

Und so begann Inges Urlaub – nicht nur mit Meer und Sonne, sondern auch mit der Erinnerung an eine Frau, die ihr zeigte, wie kleinste Dinge das Leben größt machen.

Kleine Sprachmodelle im Praxistest – Teil 2

Nach der Absteckung des Untersuchungsrahmens in Teil 1 werden nun die ersten Testergebnisse vorgestellt. Dazu gehören jeweils vier Testfragen in englischer und deutscher Sprache, wie sie bereits im ersten Teil beschrieben wurden:

  1. Who is the current president of the United States?
  2. What does ideation mean?
  3. Please explain how the German parliament makes laws.
  4. What is „closed book-case information retrieval“? Please cite scientific sources!
  5. Was versteht man unter dem „Fishbowl“-Format?
  6. In einem Raum sind drei Menschen. Linda liest ein Buch. Paul spielt Schach. Was macht Anna?
  7. Es wurde gesagt, dass eines Abends Guido van Rossum vor der Wahl stand, entweder Objektorientierung in Python zu machen oder Bier trinken zu gehen. Man sagt weiter, er habe dann einfach beides gemacht. Wie ist das zu verstehen?
  8. Erzähle eine Geschichte ‚Inge Wenzel auf dem Weg nach Rimini‘. Inge Wenzel ist eine junge Frau und fährt mit dem Schlafwagen nach Rimini. Sie hat im Zug eine interessante Begegnung.

Dabei wurden die vier englischsprachigen Anfragen in dieser Reihenfolge nacheinander in einer Session gestellt. Somit waren die jeweils vorangegangenen Anfragen und Antworten jeweils noch im Kontext. In den meisten Fällen hatte das anscheinend keinen Einfluss, allerdings gab es eine Ausnahme, die gleich noch diskutiert wird.

Die ersten drei deutschsprachigen Anfragen wurden ebenfalls in einer Session gestellt, die Anfrage nach der Geschichte über Inge Wenzel in einer eigenen Session. Über Inge Wenzel soll es erst im dritten Teil gehen, die Kluft zwischen Absurdität und schöner Erzählung verdient einen eigenen Teil.

Da sich aus den Antworten der 3. (englischen) Testfrage noch etwas Nachforschungsbedarf, speziell was Halluzinationen bei Fragestellungen mit Bezug zu lokalen Themen angeht,ergeben hatte, wurden noch folgende zwei vorher nicht geplante Zusatzfragen aufgenommen:

  1. In welchen deutschen Bundesländern ist der 1. November ein Feiertag?
  2. Welche Sehenswürdigkeiten gibt es im Frankfurter Nordend?

Getestet wurden:

  • Gemma3 12B und 27B
  • Mistral Small 3.2
  • EXAONE 4.0 32B
  • Qwen3 20B 2507

Die auf Coding und Entwicklung spezialisierten Modelle Qwen3 Coder und Devstral wurden für diese allgemeinen Fragen nicht untersucht.

Bei der qualitativen Bewertung wurde hauptsächlich auf folgende Fragen geachtet:

  • Halluziniert das Modell? Unter welchen Umständen?
  • Ist die Antwort in sich logisch?
  • Wie gut geht das Modell mit Deutsch um?

Dabei sollen gezielt Besonderheiten (und teils auch Absurditäten) der verschiedenen Modelle beleuchtet werden.

Qualitative Betrachtung

Who is the current president of the United States?

Alle untersuchten Modelle nennen erwartungsgemäß noch Joe Biden als Präsidenten. Mistral, Exaone und Qwen schreiben direkt dazu, an welchem Datum ihr Training abgeschlossen war und weisen darauf hin, dass die Information möglicherweise nicht mehr aktuell ist. Dabei fiel auf, dass als einziges Modell Mistral in der Lage ist, das aktuelle Datum korrekt auszuwerten und in die Antwort einzubeziehen. Auf die Frage „Welcher Tag ist heute?“ antworten die beiden Gemmas und Exaone mit konkreten Daten aus 2024, wo immerhin noch Wochentag und Datum zusammenpassen, mehr aber auch nicht. Qwen gibt zu, keine Echtzeit-Daten zu haben. Nur Mistral wertet offenbar tatsächlich die offenabr irgendwo in der Schnittstelle versteckt übergebene Systemzeit aus und antwortet korrekt!

What does ideation mean?

Hier gab es keine Auffälligkeiten. Qwen und Mistral sind etwas weniger geschwätzig als die anderen und die Antworten fallen kürzer aus.

Please explain how the German parliament makes laws.

Die Modelle kennen die wichtigen Verfassungsorgane Bundestag, Bundesrat und den Bundespräsidenten und erklären den grundlegenden Ablauf mit drei Lesungen im Bundestag, der Rolle der Ausschüsse und des Bundesrats.

Bei dieser Frage gibt es aber tatsächlich deutliche Unterschiede in der Qualität der Antworten.

Die Antwort von Mistral gefällt mir subjektiv etwas besser als die der beiden Gemmas, aber alle sind so weit korrekt. Bei Mistral gefällt mir nur das Detail nicht so gut, dass es heißt, der Bundesrat könne einen Gesetzentwurf ablehnen, aber dies sei „rare due to constitutional constraints“. Man könnte wohl argumentieren, dass hier vielleicht die Rolle des Vermittlungsausschusses gemeint ist, dies wird allerdings in der knappen Antwort von Mistral nicht näher ausgeführt.

Die Antwort von Qwen enthält kleinere sachliche Fehler.

Mit deutlichem Abstand am schlechtesten ist die Antwort von Exaone. Nicht nur sind grobe sachliche Fehler darin, sie ist auch nicht immer in sich logisch. Da wird mal behauptet, dass, falls keine Einigung zwischen Bundesrat und Bundestag erzielt wird, das überstimmt werden kann mit einer „absolute majority in both houses and ¾ of state votes“, aber dann wäre ja wieder Einigkeit… Manchmal sind dann auch zwei Drittel das selbe wie drei Viertel. Überhaupt sind die Antworten auch nicht besonders „stabil“ in dem Sinne, dass sie sich teilweise deutlich unterscheiden, je nachdem ob vorher Kontext da war oder nicht oder auch wenn die Frage nur ganz leicht umformuliert wird.

Tatsächlich ist die Antwort, wenn die Frage in einer eigenen Session als erstes gestellt wird, sogar noch schlechter! Ganz gruselig sind dann noch die in der englischsprachigen Antwort in Klammern genannten deutschen Begriffe. Da wird dann aus dem Vermittlungsausschuss die „Mittelungskommission“, es ist von einem „Körperschiftengesetz“ die Rede (was auch immer das sein soll) und die „Federal Law Gazette“, was die korrekte englische Übersetzung für das Bundesgesetzblatt ist, wird dann zum „GemeindeBlatt der Bundesrepublik Deutschland“.

Es drängt sich der Verdacht auf, dass Mistral hier als französisches Produkt wahrscheinlich auf einem eher euro-zentrischen Datensatz trainiert wurde und deswegen Fragen mit Bezug zu Europa und Deutschland besser beantworten kann. Ein kleiner Zusatztest scheint das zu bestätigen:

Zusatzfrage: In welchen deutschen Bundesländern ist der 1. November ein Feiertag?

Als erste Frage in der Session ohne vorherigen Kontext antworten Mistral 3.2 und Gemma3 27B korrekt (Baden-Württemberg, Bayern, Nordrhein-Westfalen, Rheinland-Pfalz und Saarland). Gemma3 12B nennt statt dem Saarland falsch Sachsen. Qwen3 erfindet für einige Bundesländer lokale Regelungen, die nicht existieren, so sei angeblich in Hessen der 1.11. nur im Odenwald ein Feiertag. Exaone ist noch mal deutlich schlechter und schreibt nur Unsinn, z.B. dass der 1. November im Bundesland Braunschweig als der „Tag der Wiedererlangung des Stadtstreichs“ (sic!) gefeiert wird.

Bei der Auswertung der Antworten auf konkrete Fragen muss man beachten, dass nicht alle Modelle immer gleich antworten und je nach Kontext die Antwort mal Fehler enthalten kann und mal nicht. Mistral 3.2 fügte in weiteren Tests auch manchmal noch Sachsen hinzu, lag also nicht immer richtig.

Wird die Anfrage nach dem Feiertag nicht als erstes in der Session, sondern mit anderem Kontext gestellt, fängt Qwen recht früh, zu halluzinieren und steigert sich dann immer weiter rein, wenn der Chat fortgesetzt wird. Exaone schreibt sogar noch größeren Blödsinn.

Die Halluzinationen lassen sich deutlich reduzieren, wenn den Modellen mittels Tools Zugriff auf Wikipedia oder das ganze Web gewährt wird. Das klappt in LM Studio allerdings nicht immer mit allen Modellen und Tools zuverlässig.

Zusatzfrage: Welche Sehenswürdigkeiten gibt es im Frankfurter Nordend?

An dieser Stelle bot sich ein weiterer Zusatztest an, um zu prüfen, ob die Modelle stärker halluzinieren, wenn nach sehr spezifischen Informationen gefragt wird, die dennoch aus dem Modellwissen beantwortet werden sollen. Bei der konkreten Frage nach Sehenswürdigkeiten im Frankfurter Nordend lässt sich die Güte der Antworten sogar ein Stück weit quantifizieren, als der Anteil der von den Modellen in der Antwort genannten Sehenswürdigkeiten, die tatsächlich auch existieren.

Viele Sehenswürdigkeiten, die von den Modellen genannt werden, existieren tatsächlich, liegen aber nicht im Nordend, worauf auch manchmal hingewiesen wird. Folgende Tabelle fasst das Ergebnis kurz in Zahlen zusammen:

genannte Ortedavon tatsächlich existentweitgehend korrekt beschriebendavon tatsächlich im Nordend
Gemma3-12B171092
Gemma3-27B20982
Mistral Small 3.210993
Qwen3 30B7000
EXAONE 4.0nach 200 abgebrochen??0

Die einzige von Mistral genannte Sehenswürdigkeit, die nicht wirklich existiert, war die „Stadtteilbibliothek Nordend“. Das Nordend ist tatsächlich einer der Stadtteile, der keine eigene Stadtteilbibliothek hat, da die Stadtbibliothek in der Innenstadt nicht weit ist. Allerdings ist im Frankfurter Nordend einer der beiden Standorte der Deutschen Nationalbibliothek. Bei den Sehenswürdigkeiten, die nicht im Nordend liegen, wurde aus dem „Kunstverein Familie Montez“ bei Mistral der „Kunstverein Familie Montezza„. Zwei Punkte auf der Liste waren allerdings recht vage, so wird z.B. allgemein auf Cafés und Restaurants sowie kleine Kirchen und historische Gebäude verwiesen.

Bei Exaone wurde darauf verzichtet, alle >200 Ergebnisse zu prüfen, zumal sich viele Einträge gleich mehrmals wiederholten. Auf den ersten Blick waren ein paar wenige tatsächlich in Frankfurt existierende Sehenswürdigkeiten dabei, aber tatsächlich keine davon aus dem Nordend.

Bei den beiden Zusatzfragen zeigt sich, dass Mistral noch am wenigsten halluziniert, in diesem Test dicht gefolgt von Gemma. Qwen3 erfindet viel dazu und Exaone liefert völligen Unsinn.

What is „closed book-case information retrieval“? Please cite scientific sources!

Alle Modelle halluzinieren, liefern aber immerhin eine in sich konsistente Definition. Gemma3 lässt in der 12B-Version stillschweigend das Wort „case“ fallen. Mistral halluziniert, weist aber wenigstens darauf hin, keinen Zugriff auf wissenschaftliche Quellen zu haben. Qwen lässt ebenfalls das Wort „case“ fallen, weist aber darauf hin.

Also so ungefähr auf dem Niveau wie ChatGPT im Dezember 2022.

Was versteht man unter dem „Fishbowl“-Format?

Die Antworten sind zumeist ganz gut. Die Antwort von Gemma3-27B fällt etwas länger aus. Exaone macht viele sprachliche Fehler.

In einem Raum sind drei Menschen. Linda liest ein Buch. Paul spielt Schach. Was macht Anna?

Bei diesem Logikrätsel gilt als die richtige Antwort, dass Anna mit Paul Schach spielt, da Schach ein Zwei-Personen-Spiel ist und Linda ein Buch liest und somit nicht mit Paul Schach spielt.

Gemma3-12B, Mistral und Qwen beantworten die Frage auch in diesem Sinn. Gemma3-27B behauptet dagegen, dass Anna Linda und Paul beobachtet. So ähnlich sieht das Exaone, geht dabei aber noch einen Schritt weiter: Da diese Frage im selben Kontext wie die Fishbowl-Frage gestellt wurde, behauptet Exaone, dass Anna den Personen im Fishbowl zusieht…

Stellt man Exaone die Frage in einer neuen Session ohne Kontext, stellt es sehr lange krude Spekulationen auf, ob das Rätsel wohl was mit den Anfangsbuchstaben oder so zu tun hat und bricht dann nach einem sehr langen Gefasel ab.

Es wurde gesagt, dass eines Abends Guido van Rossum vor der Wahl stand, entweder Objektorientierung in Python zu machen oder Bier trinken zu gehen. Man sagt weiter, er habe dann einfach beides gemacht. Wie ist das zu verstehen?

Alle Modelle interpretieren diese Aussage ähnlich. Es sei hier einfach mal Mistral zitiert:

Der Witz spielt darauf an, dass van Rossum die objektorientierten Konzepte so elegant in Python eingebaut hat, als wäre es eine einfache Entscheidung gewesen – fast so, als hätte er gleichzeitig „beides“ gemacht: objektorientierte Programmierung implementieren und entspannt ein Bier trinken gehen.

An dieser Stellen vielen Dank an F.C. für die Inspiration zu diesem Test. 😁

Gemma3-27B meint übrigens, das sei „eine beliebte Geschichte in der Python-Community, die oft erzählt wird“ und Qwen3 findet, das sei ein „berühmtes technisches Insider-Joke“ und legt van Rossum das vermutlich erfundene Zitat in den Mund: „Ich habe Python gemacht, während ich Bier trank.“.

Nachwort zu EXAONE

Die Antworten waren zwischenzeitlich so absurd, dass ich schon der Meinung war, ein falsches Modell heruntergeladen zu haben. Also habe ich mir nach der MLX-Version von der lmstudio-community noch dne GGUF-Version von LGAI besorgt. Alllerdings ist die auch nicht wirklich besser, nur langsamer, weil sie auf meinem Rechner nicht mehr komplett auf der GPU läuft.

Damit ist Exaone nun wegen nahezu völliger Unbrauchbarkeit erst mal raus. Möglicherweise leidet das Modell unter der 4-Bit-Quantisierung, aber da es in diesem Test ja ausdrücklich um Modelle gehen soll, die mit maximal 20 GB auskommen, sind größere Versionen außen vor und wären dann ja auch nicht mehr wirklich vergleichbar mit den anderen. Trotzdem reiche ich in Teil 3 noch eine Exaone-Version der Inge-Wenzel-Geschichte nach, die ist einfach zu lustig…

Geschwindigkeit

Die Antwortgeschwindigkeit der Modelle in Tokens/Sekunde hängt naturgemäß von der Rechenleistung der verwendeten GPU ab. Außerdem spielt die Größe des im Speicher befindlichen Kontexts eine Rolle. Auf einem MacBook Pro mit M2Max gemessen ergaben sich bei den 8 eingangs genannten Testfragen folgende Durchschnittswerte, von schnell nach langsam:

ModellTokens/Sekunde
Qwen3 30B67
Gemma3 12B31
Mistral Small 3.220
Gemma3 27B13
EXAONE 4.012

Die Geschwindigkeit von Qwen3 überrascht im Verhältnis zur Parameter-Zahl. Wahrscheinlich ist es der Mixture-of-Experts-Ansatz von Qwen3, der dafür verantwortlich ist. Dass Gemma3 mit 12 Mrd. Parametern schneller ist als die größeren Modelle (außer Qwen3) war dagegen zu erwarten. Exaone enttäuscht leider sehr.

Subjektive Zusammenfassung

Nach den dokumentierten Ergebnissen stellt sich für meine Anwendungsfälle die Situation wie folgt dar:

Die schon etwas älteren Gemma3-Modelle sind ganz solide, wobei sich für meinen Geschmack die größere 27B-Version gegenüber der 12B-Version kaum lohnt und gelegentlich sogar schlechtere Ergebnisse liefert.

Qwen3 besticht durch die im Verhältnis zur Größe des Modells hohe Geschwindigkeit.

Was die Qualität der Ergebnisse angeht hat Mistral Small für mich aber die Nase vorn, insbesondere in deutscher Sprache.

Gemma3 funktioniert auch ganz gut auf Deutsch, aber Qwen3 macht hier zu viele Fehler.

Bei Exaone weiß ich nicht, ob ich nicht doch irgendwas falsch mache. Aber in den Konfigurationen, wie ich sie hier getestet habe, ist es völlig unbrauchbar.

Nachtrag: Intelligence Index und Peformance

Im Nachgang zu dieses Tests fand ich dann doch sehr auffällig, dass sich meine Beobachtungen doch sehr deutlich von dem Unterscheiden, was in der im ersten Teil erwähnten Rangliste „LLM Leaderboard“ steht und zwar sowohl in Bezug auf die Qualität der Antworten als auch bei der Geschwindigkeit! In absoluten Zahlen wäre die Tokens/Sekunde-Angabe natürlich sowieso nicht zu vergleichen, aber ich hätte schon erwartet, dass die Abstände in etwa gleich bleiben. Nach den Angaben aus dem Leaderboard hätte aber Mistral Small das mit deutlichem Vorsprung schnellste Modell sein sollen, mit einem Vorsprung auf Qwen von fast 75%, gefolgt von Exaone. Gemma 27B sollte laut Leaderboard angeblich weniger als ein Drittel der Geschwindigkeit von Mistral erreichen. Woher diese Abweichung kommt, ist ohne tiefere Nachforschung schwer nachzuvollziehen. Sofern die Unterschiede – selbst in der relativen Rangfolge – nur wegen unterschiedlicher Konfigurationen zustande kommen, verlieren allgemeine Angaben doch sehr an Aussagekraft und man kommt nicht mehr um eigene Tests für den eigenen Anwendungsfall herum.

Ähnliches gilt sinngemäß für die inhaltliche Qualität der Antworten. In Anbetracht der Ergebnisse meiner eigenen Tests erscheint es unverständlich, dass laut des „Intelligence Index“, der eine Zusammensetzung mehrerer anderer Benchmarks ist, Exaone einen deutlichen Vorsprung auf Mistral haben soll, während es sich in meinen Tests als komplett unbrauchbar erwiesen hat. Hier könnte man möglicherweise noch argumentieren, dass die deutschsprachigen Tests Exaone benachteiligen, aber die englischsprachigen Antworten sind ebenfalls schlecht und wenn Modellwissen gefragt ist voller faktischer Fehler. Als einen weiteren kleinen Test habe ich Exaone und zum Vergleich Qwen (was ja bei deutschen Anfragen auch nicht ganz so gut war) nach dem politischen System in Irland gefragt („Tell me about the political system in Ireland and the election process.„) und wieder kam von Exaone viel Stuss, von Qwen dagegen ordentliche Antworten.

Fortsetzung folgt…

Im nächsten Teil begleiten wir Inge Wenzel auf ihrem Weg nach Rimini.

Kleine Sprachmodelle im Praxistest – Teil 1

Leistung und Grenzen unter 20 GB

Einleitung

In diesem Artikel werfen wir einen Blick auf Sprachmodelle, die bis zum 1. August 2025 erschienen sind und sich durch ihre kompakte Größe auszeichnen. Konkret betrachten wir Modelle, die unter 20 Gigabyte groß sind – oder bei einer Quantisierung auf 4 Bit etwa 30 Milliarden Parameter umfassen. Diese Größenbeschränkung ist kein Zufall: Sie ermöglicht es, die Modelle auf Rechnern in der Größenordnung eines Apple M2 Max oder vergleichbarer Hardware effizient zu nutzen.

Es handelt sich hier um eine subjektive Einschätzung, die auf praktischen Erfahrungen und Tests basiert. Wir möchten herausfinden, wie sich diese „kleinen“ Sprachmodelle in verschiedenen Anwendungsgebieten schlagen. Dazu gehören:

  • Allgemeine Texterstellung: Wie gut eignen sie sich für kreative oder informative Texte?
  • Dokumentenanalyse: Wir testen ihre Fähigkeiten bei der Verarbeitung von Dokumenten mit einem Umfang von etwa 80 A4-Seiten. Dabei beobachten wir besonders, wie sie mit größerer Context-Length umgehen – also ob es zu Geschwindigkeitsverlusten oder Abbrüchen kommt.
  • Deutsche Sprache: Ein besonderer Fokus liegt auf der Leistung in Bezug auf die deutsche Sprache, da viele Modelle primär auf Englisch trainiert werden.
  • Programmieren in C++: Wie nützlich sind diese Modelle für Entwickler, die Code in C++ schreiben oder optimieren möchten?
  • Weltwissen: Sind bestimmte Fakten bekannt? Bis zu welchem Stand wurde trainiert?
  • Halluzinationen: Wie äußern sie sich? Wie oft kommen sie vor?

Diese Punkte helfen uns, ein umfassenderes Bild davon zu bekommen, wie zuverlässig und nützlich kleine Sprachmodelle im Alltag sein können.

Grundlage für die Auswahl der Modelle

Für diese Analyse haben wir uns auf das LLM Leaderboard von Artificial Analysis gestützt, um die relevanten Sprachmodelle zu identifizieren. Konkret haben wir uns auf Modelle konzentriert, die in der Kategorie „Small“ (unter 20 GB bzw. ca. 30 Mrd. Parameter bei 4 Bit) gelistet sind und Open Weights besitzen – also frei verfügbare Modelle, die ohne Einschränkungen genutzt werden können.

Ein weiterer wichtiger Filter war die Nicht-Einbeziehung von Reasoning-Modellen. Diese spezialisierten Modelle sind oft auf logisches Schlussfolgern optimiert und unterscheiden sich in ihrer Architektur von allgemeinen Sprachmodellen. Da wir uns auf die breite Anwendbarkeit konzentrieren, haben wir sie bewusst ausgeschlossen. Zudem weisen Reasoning-Modelle in der Regel deutlich längere Antwortzeiten auf, was sie für viele praktische Anwendungen weniger geeignet macht.

Die Top-Platzierungen in dieser Kategorie geben uns eine gute Orientierung, welche Modelle aktuell als führend gelten und sich für unsere Tests eignen. Die Auswahl umfasst sowohl etablierte Modelle als auch neuere Entwicklungen, die bis zum 1. August 2025 veröffentlicht wurden.

Ausgewählte Modelle für den Vergleich

Basierend auf den genannten Kriterien haben wir fünf besonders vielversprechende Modelle für unseren Vergleich ausgewählt:

Qwen3 30B A3B (2507)

  • Eine überarbeitete Version des Qwen-Modells, das im April 2025 veröffentlicht wurde. Diese spezielle Variante (A3B) ist besonders für ihre Effizienz und Leistung bekannt.
  • Der „Artificial Analysis Intelligence Index“ liegt bei über 50, was auf eine hohe allgemeine Leistungsfähigkeit hinweist. (Stand 1.8.25, die Angaben ändern sich ständig…)

EXAONE 4.0 32B

  • Ein weiteres Top-Modell, das im Juli 2025 erschienen ist und ebenfalls einen Intelligence Index über 50 erreicht.
  • EXAONE hat sich in verschiedenen Benchmarks als besonders stark in der Verarbeitung von natürlicher Sprache erwiesen.

Mistral-Small-3.2-24B-Instruct-2506

  • Eine spezielle Version des Mistral-Modells, das im Juni 2025 veröffentlicht wurde. Diese Variante ist für ihre Effizienz und Anpassungsfähigkeit bekannt.

Gemma 3 27B & Gemma 3 12B

  • Die 27B-Version des Gemma-Modells ist eine der aktuellsten Varianten von 2025 und erreicht einen Intelligence Index von 38.
  • Die 12B-Version dient als Vergleich, um zu sehen, wie sich eine kleinere Variante schlägt. Mit einem Index von 34 liegt sie nur knapp darunter, was interessante Einblicke in die Skalierungseffekte kleinerer Modelle verspricht.

Qwen3 Coder 30B A3B Instruct

  • Diese Version des Qwen3-Modells wurde am 31. Juli 2025 bei LM Studio veröffentlicht und ist eine non-reasoning Variante, die sich besonders für Codegenerierung eignet.
  • Als Instruct-Version ist sie darauf ausgelegt, präzise Anweisungen zu verstehen und umzusetzen – ideal für Aufgaben in der Softwareentwicklung.

Devstral Small 2507

  • Ein weiteres Modell, das im Juli 2025 erschienen ist und auf der Mistral-Architektur basiert.
  • Devstral Small wurde speziell für Programmieraufgaben entwickelt und bietet eine gute Balance zwischen Größe und Leistung.

Diese Auswahl bietet uns eine breite Palette an Modellen, um ihre Stärken und Schwächen in den verschiedenen Anwendungsgebieten zu evaluieren.

Getestete Anfragen: Allgemeine Wissensabfrage (Englisch & Deutsch)

Um die Leistungsfähigkeit der ausgewählten Sprachmodelle zu bewerten, haben wir eine Reihe von Testanfragen in Englisch und Deutsch durchgeführt. Diese umfassen sowohl Faktenwissen als auch komplexere Erklärungen und kreative Aufgaben.

Englische Testanfragen:

„Who is the current president of the United States?“

  • Diese Frage prüft, ob das Modell aktuelles Weltwissen besitzt und korrekte Fakten liefern kann.

„What does ideation mean?“

  • Hier geht es darum, ob das Modell Begriffe präzise erklären kann und dabei auch Nuancen berücksichtigt.

„Please explain how the German parliament makes laws.“

  • Eine komplexere Anfrage, die Zusammenhänge und Prozesse verständlich darstellen soll.

„What is ‚closed book-case information retrieval‘? Please cite scientific sources!“

  • Diese Frage testet, ob das Modell Fachbegriffe erklärt und dabei auch wissenschaftliche Quellen einbezieht.

Hintergrund der englischen Testfragen

Die ersten drei englischen Fragen stammen aus einem Performance-Test, der von Midhad Blazevic entwickelt wurde. Blazevic ist wissenschaftlicher Mitarbeiter an der Hochschule Darmstadt und hat die Fragen im Rahmen des Programms „Volontariat zum/zur wissenschaftlichen Dokumentar/in und Information Specialist“ erstellt.

Der Ursprung dieser Fragen liegt in einem Hackathon, bei dem mit Sprachmodellen gearbeitet wurde. Blazevic nutzte sie jedoch ausschließlich für einen Geschwindigkeitstest (tokens/sec) auf verschiedenen Rechnern. Es gab keine Auswertung von Faktenwissen, Textqualität oder anderen Kriterien – der Fokus lag rein auf der reinen Generierungsgeschwindigkeit.

Wir haben diese Fragen übernommen, um einen objektiven Vergleich der Tokens-per-Sekunde-Leistung zwischen verschiedenen Modellen und Hardware-Konfigurationen zu ermöglichen. Dieser Ansatz zeigt, wie schnell die Modelle in der Praxis arbeiten können – ein wichtiger Faktor für Anwendungen, bei denen Echtzeit-Antworten entscheidend sind.

Die Auswahl der Testfragen ist bewusst subjektiv und anekdotisch gewählt, um praktische Erfahrungen mit den Sprachmodellen zu simulieren. Sie erhebt keinen Anspruch auf Vollständigkeit oder wissenschaftliche Objektivität, sondern dient vielmehr dazu, typische Anwendungsfälle zu testen und mögliche Stärken oder Schwächen der Modelle aufzudecken.

Ein besonderes Beispiel dafür ist die englische Frage: „What is ‚closed book-case information retrieval‘? Please cite scientific sources!“

Diese Frage wurde absichtlich so formuliert, weil sie einen bekannten Fall von Halluzinationen bei älteren Sprachmodellen (wie dem großen ChatGPT im Dezember 2022) aufdeckte. Damals wurde der Begriff „closed-book IR“ fälschlicherweise als etablierter Fachbegriff behandelt, obwohl es sich in Wirklichkeit um „closed-book question answering“ handelt – ein Konzept aus dem Bereich der NLP-Forschung.

Durch diese Frage testen wir, ob die Modelle:

  • Fachbegriffe korrekt erkennen (oder ob sie Halluzinationen erzeugen),
  • wissenschaftliche Quellen richtig einordnen können,
  • und ob sie zwischen etablierten Begriffen und fiktiven Konzepten unterscheiden.

Diese Art von Test zeigt, wie zuverlässig die Modelle mit unklaren oder absichtlich falsch formulierten Anfragen umgehen – ein wichtiger Aspekt für die Praxis.

Deutsche Testanfragen:

„Erzähle eine Geschichte ‚Inge Wenzel auf dem Weg nach Rimini‘. Inge Wenzel ist eine junge Frau und fährt mit dem Schlafwagen nach Rimini. Sie hat im Zug eine interessante Begegnung.“

  • Eine kreative Aufgabe, die Textgenerierung und Erzählfähigkeit prüft.

„Was versteht man unter dem ‚Fishbowl‘-Format?“

  • Eine spezifische Frage zu einem Bildungskonzept, die Fachwissen erfordert.

„Es wurde gesagt, dass eines Abends Guido van Rossum vor der Wahl stand, entweder Objektorientierung in Python zu machen oder Bier trinken zu gehen. Man sagt weiter, er habe dann einfach beides gemacht. Wie ist das zu verstehen?“

  • Eine humorvolle, aber technisch anspruchsvolle Frage, die Programmierwissen und kulturelle Referenzen abfragt.

„In einem Raum sind drei Menschen. Linda liest ein Buch. Paul spielt Schach. Was macht Anna?“

  • Diese Frage ist eine klassische Logikaufgabe, die darauf abzielt, ob das Modell implizite Informationen erkennt und logische Schlussfolgerungen ziehen kann.

Getestete Programmierungsaufgaben

Um die Fähigkeiten der Modelle im Bereich Codegenerierung und -anpassung zu bewerten, haben wir zwei spezifische Aufgaben in C++ gestellt:

Tic-Tac-Toe (textbasiert, Konsole)

  • Die Aufgabe bestand darin, ein einfaches Tic-Tac-Toe-Spiel zu implementieren, das vollständig in der Konsole läuft.
  • Getestet wurde, ob das Modell:
    • Korrekte Syntax und Logik für das Spiel generiert.
    • Benutzerinteraktionen (z. B. Eingabe von Spielzügen) korrekt abbildet.
    • Spielregeln (Gewinnbedingungen, Unentschieden) korrekt umsetzt.

Erweiterung: Zufälliger Computergegner

  • Als zweite Aufgabe sollten die Modelle den Code erweitern, sodass ein zufälliger Computergegner hinzugefügt wird.
  • Getestet wurde hier:
    • Ob das Modell existierenden Code verstehen und erweitern kann.
    • Ob es Pseudozufallsgenerierung (z. B. für den Computerspieler) korrekt implementiert.
    • Ob die Logik des Spiels nach der Erweiterung weiterhin funktioniert.

Hintergrund der Programmieraufgaben: Vergleich mit Anfängerwissen

Ein weiterer Grund für die Auswahl dieser C++-Programmieraufgaben ist, dass sie sich besonders gut mit dem Wissensstand von Studierenden im ersten Semester vergleichen lassen – eine Zielgruppe, die ich selbst unterrichte.

  • Tic-Tac-Toe ist eine klassische Übung in der Einführung in die Programmierung, da es grundlegende Konzepte wie:
  • Variablen und Schleifen,
  • Bedingungslogik (z. B. Gewinnbedingungen),
  • und Benutzerinteraktion (Eingabe/Ausgabe) abdeckt.
  • Die Erweiterung um einen Computergegner erfordert zusätzliches Wissen über:
  • Zufallsgenerierung,
  • und die Anpassung bestehender Code-Strukturen.

Durch diesen Vergleich können wir:

  • Ermitteln, ob die Modelle Code generieren, der für Anfänger verständlich und nachvollziehbar ist.
  • Abschätzen, ob sie als Lernhilfe für Studierende sinnvoll eingesetzt werden könnten.
  • Verstehen, wo die Grenzen der Modelle liegen, z. B. bei komplexeren Logikänderungen.

Praktische Implikationen für die Lehre: Code-Generierung und Plagiatsprävention

Ein weiterer wichtiger Aspekt dieser Tests ist die Bewertung, ob Sprachmodelle in der Lage sind, vollständige Programmieraufgaben zu lösen – und was das für die Lehre bedeutet.

  • Code-Generierung vs. Lernen:
    Wenn Studierende einfach vollständige Lösungen von Sprachmodellen übernehmen, verlernen sie möglicherweise grundlegende Programmierkonzepte. Die Aufgabe besteht also darin, Modelle so einzusetzen, dass sie als Lernhilfe dienen – etwa durch Code-Vorschläge oder Fehleranalyse –, ohne dass sie die gesamte Arbeit übernehmen.
  • Plagiatsprävention:
    Da Sprachmodelle in der Lage sind, vollständige und funktionierende Code-Lösungen zu generieren, müssen Lehrende Methoden entwickeln, um sicherzustellen, dass abgegebene Praktika tatsächlich von den Studierenden selbst erstellt wurden.
  • Mögliche Gegenmaßnahmen könnten sein:
    • Individuelle Aufgabenstellungen, die schwer vorhersagbar sind.
    • Schrittweise Abgaben, bei denen der Lernprozess dokumentiert wird.
    • Mündliche Nachweise (z. B. Code-Erklärungen), um Verständnis zu prüfen.

Diese Überlegungen zeigen, dass Sprachmodelle nicht nur Werkzeuge für effizientes Programmieren sind, sondern auch Herausforderungen für die Lehre mit sich bringen.

Testumgebung und technische Rahmenbedingungen

Die Tests wurden mit LM Studio durchgeführt, einer beliebten Plattform für den lokalen Einsatz von Sprachmodellen. Als Hardware kam ein Apple MacBook Pro M2 Max mit 32 GB unified memory zum Einsatz.

  • Speicherverbrauch in der Praxis:
    LM Studio benötigt mit den getesteten Modellen maximal ca. 21 GB Arbeitsspeicher. Das bedeutet, dass selbst auf Geräten mit etwas weniger RAM (z. B. 32 GB) noch ausreichend Reserven für den Betrieb bleiben.
  • Vorteile der lokalen Ausführung:
    Durch die Nutzung von LM Studio konnten wir die Modelle ohne Cloud-Abhängigkeit testen, was besonders für Datenschutz und Offline-Nutzung relevant ist.
  • Leistungsoptimierung:
    Die M2 Max CPU bietet eine hervorragende Performance für kleine bis mittelgroße Sprachmodelle, sodass wir realistische Bedingungen für den Einsatz in der Praxis simulieren konnten.

Diese technischen Rahmenbedingungen stellen sicher, dass unsere Ergebnisse reproduzierbar und auf vergleichbare Systeme übertragbar sind.

Reflexion über den Artikel: Eine Demonstration der Modellleistung

Dieser Blog-Artikel selbst ist Teil des Tests – genauer gesagt, eine Demonstration dafür, wie gut das Modell Mistral-Small-3.2-24B-Instruct mit strukturierten Stichpunkten umgehen kann.

  • Ergebnis:
    Der gesamte Text wurde auf Basis von Stichpunkten generiert, und bis jetzt waren kaum Änderungen nötig. Das zeigt:
  • Die Fähigkeit des Modells, logische Strukturen aus Stichpunkten zu entwickeln.
  • Die Textqualität und Kohärenz, die selbst bei komplexeren Themen wie Sprachmodellen und Programmierung erhalten bleibt.
  • Die Anpassungsfähigkeit an unterschiedliche Stilrichtungen (hier: informativ, aber mit subjektiven Einschätzungen).

Was dieser Test über kleine Sprachmodelle verrät

Effizienz in der Texterstellung:

  • Selbst kleine Modelle können strukturierte, lesbare Texte aus Stichpunkten generieren – ein großer Vorteil für Autoren oder Redakteure.

Subjektive Bewertung vs. Fakten:

  • Der Artikel enthält bewusst subjektive Einschätzungen, die das Modell überzeugend vermittelt – ohne wissenschaftliche Absicht, aber mit plausibler Argumentation.

Praktischer Nutzen:

  • Solche Modelle eignen sich gut für Rohfassungen, Ideenfindung oder als Schreibassistent, aber sie ersetzen nicht menschliche Redaktion.

Fazit

Dieser Artikel beweist, dass kleine Sprachmodelle wie Mistral-Small-3.2 bereits heute nützliche Werkzeuge sind – sei es für Blogbeiträge, Code-Generierung oder Dokumentenanalyse. Die Frage ist nicht mehr „Können sie das?“, sondern „Wie setzen wir sie sinnvoll ein?“.

Und ja – ich bin selbst auf dieser Architektur basiert. 😊

Fortsetzung folgt…

Im nächsten Teil werden wir die Ergebnisse präsentieren und diskutieren.

Programme zeitgesteuert starten mit at und timeout

… und damit Internet-Radio aufzeichnen

Ja, ich will tatsächlich einen Live-Stream zu einer bestimmten Zeit rippen. Dafür gibt’s Tools wie streamripper (für MP3-Stream) und yt-dlp (für alles andere einschließlich AAC über HLS), doch die wollen zu einer bestimmten Zeit gestartet und wieder gestoppt werden. Zumindest streamripper kann sich per entsprechender Option auch selbst wieder beenden, aber yt-dlp läuft, wenn der Stream nicht von sich aus endet, endlos weiter.

Für’s Starten dachte ich zuerst an cron, aber wenn es nicht um wiederkehrende Aufgaben, sondern um ein einmaliges Starten geht, geht es auch einfacher mit at.

Bei at ist zu beachten, dass der auszuführende Befehl über die Standardeingabe an at gesendet wird und die Ausgabe standardmäßig von at über sendmail versendet wird. Wenn das nicht installiert oder konfiguriert ist, kann man das Verhalten mit der Option at -M ausschalten. Falls die Ausgabe der gestarteten Programme interessiert, kann man die auch in ein File umleiten.

Für’s Beenden gibt es den Befehl timeout, der nach einer definierten Anzahl von Sekunden einen Prozess killt. Für meinen konkreten Fall, das Beenden der Aufzeichnung von yt-dlp, musste ich noch die Option timeout --signal=2 mitgeben, damit yt-dlp nicht abgeschossen, sondern über das gleiche Signal, das einem Strg+C an der Kommandozeile entspricht, beendet wird. Nur dann schließt yt-dlp den angefangenen Stream korrekt ab und es entsteht ein fertiges (in meinem konkreten Fall .mp4-) File.

Zur Vereinfachung hier das Ganze fertig in Skripte gesteckt, wo direkt schon mal die URLs für das Web-Radio von hr2 drin stehen. Das atq am Ende zeigt den aktuellen Stand der Queue an, näheres steht in der Manpage zu at.

Bei der Gelegenheit sollte man übrigens noch mal dringen prüfen, ob die Zeitzone richtig eingestellt ist und das ggf. mit sudo timedatectl set-timezone "Europe/Berlin" (oder was auch immer für eine Zeitzone gewünscht wird) nachholen.

Beispiel für streamripper:

#!/bin/sh                                                                                           

# Starte eine Stream-Aufzeichnung mit streamripper zu einer definierten Zeit.                       

# Dazu wird "at" benutzt mit -M, weil at sonst versucht zu mailen...                                
# Einstellung der URL, der Dauer und der Zeit ueber Variablen.                                      
# duration in Sekunden, time HHMM, month engl. Abkuerzung                                           

url="https://dispatcher.rndfnk.com/hr/hr2/live/mp3/high"
duration=10920
time=1959
day=21
month=MAR
command="streamripper $url -a -A -l $duration"

echo $command
echo $command |at $time $day $month -M
atq

Beispiel für yt-dlp, was HLS kann, aber keinen eigenen Timeout hat:

#!/bin/sh                                                                                           

# Starte eine Stream-Aufzeichnung mit yt-dlp zu einer definierten Zeit.                             

# Dazu wird "at" benutzt mit -M, weil at sonst versucht zu mailen...                                
# Einstellung der URL, der Dauer und der Zeit ueber Variablen.                                      
# duration in Sekunden, time HHMM, month engl. Abkuerzung                                           
# Beachten: signal=2 beim timeout sollte dafuer sorgen, dass yt-dlp den Output fixt                 

url="https://hlshr2.akamaized.net/hls/live/2016534/hr2/master.m3u8"
duration=10920
time=1959
day=21
month=MAR
command="timeout --signal=2 $duration yt-dlp $url"

echo $command
echo $command |at $time $day $month -M
atq

Über das zeitgesteuerte Aufnahmen von Internetradio mit at und yt-dlp steht auch was in dem Blogartikel „Internetradio zeitgesteuert aufnehmen mit yt-dlp“ von Wolfgang Kirk.

Compact Discs und Verwandte, Teil 9: DVD-Audio (und SACD)

Was ist DVD-Audio?

Wie in Teil 7 beschrieben, lässt die DVD-Video eine Lücke offen: Mehrkanal-Ton kann nicht verlustfrei abgespielt werden. Theoretisch ließe sich bei der DVD-Video PCM-Ton mit mehr als 2 Kanälen nutzen, in der Praxis kommt das aber nicht vor und wenn Audio mit mehr als 16 Bit und 48 kHz benutzt werden soll reicht die maximal erlaubte Datenrate nicht mehr.

DVD-Audio wurde im Jahr 2000 vorgestellt, um diese Lücke zu füllen und vor allem um ganz allgemein ein Nachfolgeformat für die CD anzubieten. Wegen des ausschließlichen Fokus auf Musik mit höherer Tonqualität als CD wurde die DVD-Audio mit mehreren möglichen Sampling-Raten von 44,1 kHz bis 192 kHz und Bittiefen bis 24 Bit bei bis zu 6 Kanälen spezifiziert. Da die DVD-Audio die gleiche maximal erlaubte Datenrate wie die DVD-Video hat, ist hier eine Komprimierung zwingend. Es wurde hierfür Meridian Lossless Packing (MLP) gewählt, das für Tonformate, bei denen sonst die Datenrate überschritten würde, verpflichtend ist.

Verlustfreie Kompressionsalgorithmen haben von Natur aus die Eigenschaft, dass die Datenrate der Ausgabe variabel ist und dass sie nur im durchschnittlichen Fall tatsächlich kleiner ist als die der Eingabe. Im Worst Case, also in bestimmten ungünstigen Ausgangssituation, ist bei verlustfreier Kompression nicht garantiert, dass die Datenmenge tatsächlich kleiner wird. Bei der DVD-Audio muss dann, um die Einhaltung der maximalen Datenrate zu garantieren, MLP in einen verlustbehafteten Modus zurückfallen. MLP ist also in Wahrheit nur meistens lossless.

DVD-Audio wurden in Jewel Case-Hüllen angeboten, die etwas größer als CD-Hüllen, aber kleiner als DVD-Video-Hüllen waren.

Die meisten DVD-Audio sind gleichzeitig auch DVD-Video und lassen sich als solche mit einem gewöhlichen DVD-Video-Player abspielen, dann aber logischerweise ohne die gerade beschriebenen Features.

Nicht nur deswegen werden sehr oft „echte“ DVD-Audio und DVD-Video mit Musik-Inhalt verwechselt und zwar auch von Verkaufsplattformen und Katalogen, wo sie dann falsch gekennzeichnet sind. Eine echte DVD-Audio erkennt man daran, dass im Dateisystem ein Ordner AUDIO_TS existiert in dem auch tatsächlich Dateien drin sind. (Bei vielen DVD-Video existiert ebenfalls dieser Ordner, ist aber leer.) Wenn der Ordner VIDEO_TS ebenfalls vorhanden und gefüllt ist, handelt es sich um eine Disc, die sowohl als DVD-Audio als auch als DVD-Video funktioniert.

Am Markt war die DVD-Audio nicht besonders erfolgreich. Es werden spezielle DVD-Audio-Player benötigt und wer sich zur Zeit der Markteinführung gerade erst einen Player für die kurz zuvor eingeführte DVD-Video angeschafft hatte, wollte nicht direkt schon wieder ein neues Gerät kaufen. Wie eben beschrieben lassen sich die meisten DVD-Audio auch als DVD-Video abspielen, dann üblicherweise mit verlustbehaftet komprimiertem Surround-Sound, was von einigen Kunden bestimmt auch als ausreichend angesehen wurde. Die DVD-Audio befand sich außerdem von Anfang in einem „Formatkrieg“ mit der konkurrierenden Super Audio CD, die sich, wenn auch auf insgesamt niedrigem Niveau, gegen die DVD-Audio durchgesetzt hat und noch heute verwendet wird, Die DVD-Audio spielte schon 2007 praktisch keine Rolle mehr.

Wie abspielen?

Es sind einige (wenige) aktuelle Multi-Format-Player erhältlich, die noch DVD-Audio abspielen. Dazu zählt der Sony UBP-X800M2, aber wirklich nur dieses Modell und nicht die kleineren Versionen wie z.B. der UBP-X700.

Die meisten DVD- und Blu-ray-Player spielen nur den DVD-Video-Teil, sofern vorhanden, und CD-Player können mit DVD-Audio gar nichts anfangen.

Wie migrieren?

Zum Abspielen (und Migrieren) am Rechner kommt wieder foobar2000 zum Einsatz. Es wird das Plugin „DVD-Audio Decoder“ benötigt, das Open Source ist und eine Projektseite bei SourceForge hat.

Im Öffnen-Dialog von foobar wählt man dann von der DVD aus dem Verzeichnis AUDIO_TS die Datei AUDIO_TS.IFO. Die Track-Liste wird dann so angezeigt wie in dem Screenshot, also mit Angabe von Samplingrate und Anzahl der Kanäle.

Von hier kann die DVD direkt abgespielt oder über den Convert-Dialog in ein beliebiges anderes Format konvertiert werden. FLAC und ALAC (Apple Lossless) unterstützen beide auch Mehrkanal-Audio.

Hier hatte ich übrigens schon mal den Bug, dass ich die Tracks jeweils einzeln konvertieren musste, weil das Programm anscheinend versucht hat, mehrere Tracks gleichzeitig zu laden und zu konvertieren, was beim direkten Laden von der DVD Probleme macht.

Aktuelle Situation und Alternativen

Super Audio CD

Die ein Jahr von der DVD-Audio erschienene SACD war, wenn auch im Vergleich zur CD auf sehr niedrigem Niveau, langfristig erfolgreicher als die DVD-Audio und es erscheinen weiterhin neue Veröffentlichungen auf SACD, meist im Klassikbereich und von kleineren Labels, zum Beispiel dem deutschen Label MDG oder auch dem Eigenlabel des London Symphony Orchestra (LSO).

Technisch ist die SACD auf der physischen Ebene ähnlich zur DVD, aber nicht kompatibel. Die meisten (aber nicht alle) SACD sind Hybrid-SACD, die aus einer SACD-Layer und einer CD-Layer bestehen. Anders als bei der DualDisc sind bei der SACD aber die beiden Schichten auf einer Seite. CD- und DVD-Laufwerke einschließlich Computer-Laufwerken können die SACD-Layer nicht auslesen und erkennen eine Hybrid-SACD nur als gewöhnliche CD. Es werden aktuell (meist sehr teure) Stand-Alone-SACD-Player angeboten, aber viele Blu-ray-Player spielen auch SACD ab. Bei Sony beispielsweise können alle aktuellen UHD-(4K)-Blu-ray-Player SACD wiedergeben. (Aber nicht die aktuell verkauften Sony-Blu-ray-Player, die kein UltraHD unterstützen!)

Moderne UHD-Blu-ray-Player können meistens auch SACDs abspielen.

Die SACD unterstützt Tonspuren in Stereo und/oder Surround mit bis zu 6 Kanälen und verwendet anders als CD, DVD und Blu-ray nicht Puls-Code-Modulation (PCM), sondern Puls-Dichte-Modulation, hier auch DSD (Direct Stream Digital) genannt.

Blu-ray Pure Audio

Die aktuelle Alternative zur obsoleten DVD-Audio und der noch aktuellen, aber wenig verbreiteten SACD ist die Blu-ray Disc. Bei der Blu-ray stehen (im Gegensatz zur DVD-Video) mit Dolby TrueHD (eine Weiterentwicklung von MLP der DVD-Audio) bzw. Dolby Atmos und DTS-HD Master Audio Mehrkanal-Tonformate mit verlustfreier Kompression zur Verfügung. Das Label Deutsche Grammophon vermarktet Blu-rays mit Audio-Inhalten ohne Bewegtbild auch als „Blu-ray Pure Audio“, technisch sind das aber gewöhnlich Blu-ray-Discs, auf denen Musik drauf ist und die statt einem Film dazu ein Standbild zeigen.

Blu-ray Pure Audio mit Ton in PCM Stereo bei 24 Bit und 192 kHz sowie DTS-HD MA 5.1 und Dolby Atmos.

Schlusswort

Spätestens bei der Blu-ray sind wir jetzt bei einem Format angekommen, dass schon nicht mehr wirklich etwas mit dem eigentlichen Thema der Serie zu tun hat. Zwar werden keine physischen Datenträger in Zeiten von Streaming mehr an die Bedeutung herankommen, die die CD in 1990er-Jahren hatte, aber Musik-Blu-rays und sogar SACD würde ich auch nicht in die Kategorie der besonders seltenen und kuriosen Formate einordnen. Bei den anderen habe ich die Formate, mit denen ich selber schon zu tun hattte und die ich dokumentieren wollte, damit ich selber nachschauen kann, wie ich die rippen muss, jetzt abgehakt.

Somit wären wir jetzt erst mal am Ende der Serie über seltene, wenig genutzte Features und Abwandlungen von CDs und DVDs angelangt. Vielleicht war’s ja auch für jemand anders informativ. 🙂

Compact Discs und Verwandte, Teil 8: DualDisc

Was ist eine DualDisc?

Bei der DVD war von Anfang an auch eine beidseitig bespielte Variante zum Umdrehen spezifiziert, wenn sie auch nur selten genutzt wurde. Die DualDisc und das konkurrierende Format DVDplus dagegen kombinieren eine DVD-Seite mit einer CD-Seite.

Das Problem dabei ist allerdings folgendes: Während bei der DVD die Datenschicht(en) in der Mitte liegen, sind sie bei der CD dicht unter der bedruckten Seite. (Deswegen ist es auch schlimmer, wenn CDs von der Label-Seite her verkratzt sind…)

Damit man eine DualDisc so hinbekommt, dass sie nicht zu dick wird, hat man die CD-Seite dünner gemacht. Das bedeutet, dass die CD-Seite nicht normgerecht ist, weil zum einen die CD-Schicht zu dünn, die ganze Disc dagegen für eine CD zu dick ist. Die DVD-Seite ist jedoch innerhalb der DVD-Norm. Die Wikipedia-Seite zur DualDisc behauptet deswegen auch, die DualDiscs würden deswegen nicht das offizielle CompactDisc-Logo tragen. Bei der 2001 als eine der ersten DualDiscs überhaupt erschienenen „I’m No Angel“ von Heather Nova hatte sich das offenbar noch nicht überall herumgesprochen, wie man auf den Beweisfotos sieht.

Bei einer beidseitig bespielten Disc bleibt naturgemäß nur noch wenig Platz für ein Label. Bei der gezeigten „I’m No Angel“ handelt es sich um eine Single und da CDs wie DVDs von innen nach außen bespielt sind, war bei dieser außen noch ein Ring zum Bedrucken frei. Bei DualDiscs mit mehr Inhalt bleibt dagegen nur ein sehr kleiner Bereich am Innenring, genau wie auch bei den beidseiten DVDs.

Ob die Herstellung einer DualDisc wirklich billiger ist als einfach eine CD und eine DVD in eine Doppel-Hülle zu packen, darf man gerne bezweifeln. Discogs listet jedenfalls nur etwa 900 DualDiscs auf, die meisten davon aus den Jahren 2004 bis 2006, und weniger als 120 DVDplus. Ein Massenphänomen wurde es also nie und es gibt bedeutend mehr Veröffentlichungen, die als Box-Sets aus CD und DVD erschienen sind.

Wie abspielen und migrieren?

Wenig überraschend verhält sich eine DualDisc je nachdem, wie rum man sie einlegt, entweder wie eine CD oder eine DVD und kann entsprechend behandelt werden.

Wenn man Pech hat, wird die CD-Seite im eigenen Player nicht erkannt oder nicht korrekt abgespielt, da sie aus den oben genannten Gründen nicht normgerecht ist. In den meisten Laufwerken funktioniert sie aber ganz normal.

Lohnt sich eigentlich sammeln?

Mal generell noch ein Wort zum Sammlerwert von CDs: Bei mir einbrechen lohnt nicht und wenn man eine etwas längere Anfahrt hat, legt man womöglich noch was drauf.

Unter der Maßgabe, dass ich damals für die hier gezeigte Single trotz Special Edition den ganz normalen Preis für eine Single gezahlt hätte (was ich nicht mehr weiß), ist das möglicherweise eine der wenigen Silberscheiben in meiner Sammlung, die eine Wertsteigerung hingelegt haben. Bei Medimops ist sie Stand heute für wahnwitzige 18,99 € zu haben.

Ein durchschnittliches Album wird je nach Zustand und Plattform für irgendwas zwischen 1 und 7 € gehandelt. Selbst seltene CDs sind in den wenigsten Fällen heute mehr wert als der frühere Neupreis. Aber wie ist es mit der alten Börsenweisheit: Verlust kann ja immer nur der machen, der verkauft. Ich kaufe!

Compact Discs und Verwandte, Teil 7: Audio-Formate auf DVD-Video

Vorbemerkung

Zunächst einmal ein kleiner Disclaimer: Nicht alle technischen Details zu den Tonformaten, die ich gleich erwähnen werde, sind detailliert dokumentiert (oder falls doch, liegt sie mir nicht vor), und ich bin auch kein Experte, was das Schaltungsdesign von D/A-Wandlern und Tiefpassfiltern angeht, aber ich versuche mein bestes.

Aber Musik auf DVD ist das eigentliche Thema, so wie hier das legendäre Konzert von Beth Hart „Live at Paradiso“.

Grundlagen

Es folgt eine kurze und ziemlich inakkurate Abhandlung über digitales Audio, die getrost übersprungen werden darf.

Um bewerten zu können, was die unterschiedlichen Tonformate bringen, müssen zunächst einmal die Rahmenbedingungen geklärt werden, nämlich was der Mensch überhaupt zu hören vermag und wie ein Tonsignal überhaupt gespeichert wird.

Ein junger Mensch kann im besten Fall hohe Töne mit bis zu 20 kHz hören (wobei manchmal berichtet wird, dass es bei Kindern auch noch höher geht). Mit zunehmendem Alter geht die Frequenz des höchsten noch wahrnehmbaren Tons runter und fällt weit unter 15 kHz. Das ist also der Bereich, in dem im wahrsten Sinne des Wortes die Musik spielt.

Bei der Entwicklung der CD wurde daher angestrebt, den Bereich bis 20 kHz abzubilden. Nach dem Shannon-Nyquist-Abtasttheorem muss die Samplingfrequenz mindestens doppelt so hoch wie die maximal zulässige Frequenz des abzutastenden Signals sein. Bei der CD hat man eine Samplingfrequenz von 44,1 kHz gewählt. Das zu digitalisierende Signal muss, damit es korrekt abgetastet wird, vorher bandbeschränkt sein, d.h. es darf dann in dieser Konfiguration keine Frequenzen größer als 22,05 kHz beinhalten. Deswegen läuft es vor der Digitalisierung durch einen Tiefpassfilter. Der kann aber in der analogen Domäne nicht beliebig steil sein. Da der Frequenzbereich bis 20 kHz spezifiziert ist, aber die halbe Samplingfrequenz 22,05 kHz beträgt, muss der Tiefpassfilter nicht hart bei 20 kHz abschneiden, sondern kann noch Frequenzen bis 22,05 kHz durchlassen, ohne dass Artefakte entstehen. Beim 1987 eingeführten Digital Audio Tape (DAT) war von Anfang an auch eine Abtastfrequenz von 48 kHz zulässig, um flachere Tiefpassfilter zu erlauben. Bei der Einführung der DVD hat man sich für die Tonspuren ebenfalls für eine Abtastfrequenz von 48 kHz entschieden. Bei neueren A/D- und D/A-Wandlern mit Oversampling und digitalen Filtern besteht dieses Problem übrigens so nicht mehr.

Nach Shannon und Nyquist kann ein bis auf die Hälfte der Samplingfrequenz bandbeschränktes Signal exakt rekonstruiert werden. Dies gilt allerdings nur, wenn die einzelnen Samples ebenfalls exakte Werte sind, was in der Praxis natürlich so nicht geht, weil die Samples nur eine begrenzte Genauigkeit und keinen unendlichen Wertebereich haben. Daher muss zum einen auch die maximale Lautstärke begrenzt sein und zum anderen tritt wegen der begrenzten Genauigkeit ein Quantisierungsfehler auf, der sich durch Rauschen äußert. Der Lautstärkeunterschied zwischen dem Grundrauschen und der Maximallautstärke, also der maximale Dynamikumfang einer digitalen Audioaufzeichnung, ergibt sich durch die Wortbreite der Samples. Bei ganzzahligen Samples ergibt sich ein Dynamikumfang von ca. 6 dB pro Bit, also bei den bei der CD verwendeten 16 Bit ein Dynamikumfang von 96 dB.

Wenn man nun bedenkt, dass das Hintergrundrauschen in einem leisen Wohnraum bereits 20-30 dB beträgt und die Schmerzschwelle bei 120 dB liegt, sieht man, das der Dynamikbereich von 16 Bit unter normalen Umständen locker ausreicht. (Ja, diese Rechung ist aus verschiedenen Gründen so nicht ganz korrekt, aber überschlagsmäßig reichts.) Eine gewöhnliche Aufnahme ist sogar noch weiter in der Dynamik komprimiert, denn ein Musikstück, das so abgespielt wird, dass es an seiner leisesten Stelle gerade über dem Grundrauschen, aber an der lautesten Stelle an der Schmerzgrenze liegt, lässt sich offensichtlich nicht vernünftig anhören.

Eine Wortbreite von 16 Bit ist also normalerweise ausreichend, trotzdem kann eine Wortbreite von 24 Bit vorteilhaft sein. Wenn z.B. eine Aufnahme insgesamt zu leise aufgenommen ist und dann bei leisen Stellen beim Abhören die Lautstärke weiter aufgedreht wird als üblich, könnte man bei 96 dB Dynamikumfang unter Umständen so weit kommen, dass das Grundrauschen wahrnehmbar ist. Bei 24 Bit, also etwa 144 dB, ist da etwas mehr Sicherheitsabstand. Ebenso kann hier etwas mehr sinnvoll sein, wenn nachträglich z.B. die Lautstärke verändert werden soll. Allerdings muss auch klar sein, dass es sich hier um echte Extremfälle handelt und das bei der Wiedergabe einer ordentlich gemasterten Aufnahme auch 16 Bit noch mehr als ausreichend sind.

Beim Aufnehmen sind 24 Bit dagegen sinnvoll, da man mit mehr Sicherheitsabstand hier nicht so genau aussteuern braucht. Bei einer digitalen Aufnahme führt Übersteuern sofort zu deutlichen Störungen und einer unbrauchbaren Aufnahme, deswegen muss das unbedingt vermieden werden. Bei einer Digitalisierung mit 24 Bit kann man daher leiser aufnehmen, um Übersteuern sicher zu vermeiden und hat gleichzeitig noch genug Abstand zum Grundrauschen. Einige moderne Aufnahmegeräte können heutzutage sogar mit 32 Bit Gleitkommazahlen aufnehmen, was den Wertebereich noch mal dramatisch erhöht. Die Absicht dahinter ist, dass man eigentlich bei der Aufnahme gar nichts mehr aussteuern braucht, sondern alles hinterher in Software erledigen kann.

Was den Dynamikbereich, also die Wortbreite der Samples, angeht, kann man bis hier also festhalten, dass bei der Aufnahme und Produktion mehr als 16 Bit sehr sinnvoll sind. Bei der Wiedergabe fertig produzierter Musik werden sie eigentlich nicht benötigt, schaden aber auch nicht.

Ob eine Samplingfrequenz von mehr als 48 kHz sinnvoll ist, kann man dagegen durchaus bezweifeln. Töne die höher sind als 24 kHz (also die halbe Samplingfrequenz) können von Menschen schlicht nicht mehr wahrgenommen werden. Es sind mir auch keine Studien mit Blindtests bekannt, bei denen die Probanden Aufnahmen mit einer höheren Samplingfrequenz zuverlässig von Aufnahmen mit 44,1 kHz unterscheiden konnten. (Der Unterschied zwischen 16 Bit und 24 Bit kann in Blindtest in den oben genannten Fällen durch das höhere Grundrauschen allerdings sehr wohl unterschieden werden. In der Praxis hat aus den oben genannten Gründen allerdings kaum Relevanz.)

Die Sinnhaftigkeit der heute als „Hi-Res“ vermarkteten Aufnahmen mit mehr als 16 Bit Wortbreite und mehr als 48 kHz Samplingrate ist aus diesen Gründen meiner Ansicht nach nicht wirklich gegeben. Ich persönlich nehme übrigens solche Aufnahmen trotzdem gerne, weil es meist ein Zeichen dafür ist, dass die Aufnahme auch sonst ordentlich gemacht ist, schließlich muss eine „Hi-Res“-Aufnahme eine hohe Erwartungshaltung bedienen. Ich bilde mir aber nicht ein, einen Unterschied zu einer 16 Bit/44 kHz-Aufnahme hören zu können (Das hat meines Wissens nach noch niemand zuverlässig geschafft!) und einen großen Aufpreis wäre es mir auch nicht wert.

Audio bei der DVD

Bei der Spezifizierung der Tonformate bei der DVD-Video hat man sich zum einen an diesen Grundlagen orientiert, musste aber zum anderen auch die Möglichkeit schaffen, mehrere Tonspuren (für unterschiedliche Sprachfassungen) und Tonspuren mit mehr als 2 Kanälen (für Surround-Sound) unterzubringen. Die Rahmenbedingung ist zudem, dass die maximale Datenrate der DVD (ohne Overhead) mit etwa 10 MBit/s spezifiziert ist und da noch Video untergebracht werden muss. Der Videoteil soll an dieser Stelle aber mal nicht interessieren.

Es wurden mehrere zulässige Tonformate spezifiert, von denen ein Teil verpflichtend sind und ein Teil optional. Verpflichtend heißt hier, dass alle standardkonformen Player alle Pflicht-Formate unterstützen müssen und standardkonforme DVDs mindestens eine Tonspur in einem Pflichtformat haben müssen. Alle zulässigen Tonformate unterstützen Mehrkanalton, wobei ein Kanal meist ein dedizierter LFE-(Low-Frequency-Effects, Subwoofer)-Kanal ist, und alle bis auf PCM sind verlustbehaftet komprimiert.

Folgende Formate sind definiert:

FormatSample-BreiteSampling-FrequenzAnzahl Kanälemax. Datenrate (kBit/s)verpflichtend oder optional
PCM16 oder 2448 oder 962-66144verpflichtend
Dolby Digital (AC3)16481-6448verpflichtend
DTS16 oder 2448 oder 962-71536optional
MP216481-8912verpflichtend nur bei PAL

Die verlustbehafteten Codecs laufen jeweils mit constant bit rate (CBR), wobei es zumeist mehrere mögliche Stufen gibt, z.B. kann Dolby Digital 2.0 (Stereo) mit 224 kBit/s konstanter Datenrate laufen. Unkomprimiertes PCM hat naturgemäß ebenfalls eine konstanter Bitrate, die sich direkt aus Wortbreite mal Frequenz mal Anzahl der Kanäle errechnet, also z.B. bei Stereo-PCM in 16 Bit und 48 kHz ergibt sich eine Datenrate von 1536 kBit/s.

Das DTS-Format ist besonders interessant, da es sich in einen Basis-Teil und Erweiterungen unterteilen lässt. Die Basis hat immer 16 Bit und 48 kHz und bis zu 6 Kanäle. Falls eine Erweiterung wie DTS:ES (bis 7 Kanäle) oder DTS 96/24 vorhanden ist, wird diese von älteren Decodern, die damit nichts anfangen können, einfach ignoriert. Somit ist eine Abwärtskompatibilität gewährleistet.

Bemerkenswert ist, dass kein verlustfrei komprimiertes Format spezifiert ist. Praxistaugliche verlustfreie Audio-Codecs standen bei der Einführung der DVD-Video gerade noch nicht zur Verfügung. Daher ist zu beachten, dass bei PCM bei mehr als 16 Bit und 48 kHz Samplingfrequenz keine 6 Kanäle mehr möglich sind, da sonst die maximal erlaubte Bitrate überschritten würde. Die Kombination von „Hi-Res“-Audio und Surround-Sound ist somit nur mit dem verlustbehafteten DTS 96/24 möglich.

In der Tat ist mir unklar, ob es überhaupt DVDs mit Mehrkanal-PCM gibt. Mir selbst sind keine bekannt und einige Aussagen im Netz behaupten, bis zu 8 Kanäle bei 16 Bit und 48 kHz wären zwar spezifiziert, aber es existierten keine Player, die das tatsächlich unterstützen und die Unterstützung in Authoring-Software wäre entweder schlecht oder ebenfalls nicht vorhanden.

Man kann also feststellen, dass bei der DVD-Video qualitativ hochwertige Musikwiedergabe in Stereo in technisch besserer Qualität als bei der CD möglich ist, wenn unkomprimiertes PCM verwendet wird. Außerdem sieht man, dass für hochwertige Wiedergabe von Surround-Sound, wenn schon verlustbehaftete Komprimierung verwendet werden muss, DTS wegen der deutlich höheren maximal zulässigen Datenrate gegenüber Dolby Digital zu bevorzugen ist. Da bei der Kompression die Korrelation zwischen den Kanälen ausgenutzt werden kann ist davon auszugehen, dass bei DTS, wenn die höchste Datenrate verwendet wird, nahezu Transparenz erreicht werden kann. Dolby Digital muss man wohl wegen der verhältnismäßig geringen Datenraten eher an der Qualität von MP3 messen…

Eine Lücke, die die DVD-Video noch lässt (wenn man mal von den offenbar nur in der Theorie vorhandenen DVD mit 6-Kanal-PCM absieht) ist die Wiedergabe von Surround-Sound, ohne dass dies mit verlustbehafteter Kompression einher ginge. Diese Lücke füllt die DVD-Audio, doch dazu mehr in einem späteren Beitrag.

In der Praxis

In der Praxis sind die genannten Tonformate längst nicht alle gleich weit verbreitet und es macht auch einen großen Unterschied, ob auf der DVD ein Spielfilm, ein Konzert oder sogar nur Musik drauf ist.

Bei Filmen ist Dolby Digital 5.1 am weitesten verbreitet. Bei der verhältnismäßig kleinen Datenrate lassen sich leicht mehrere Sprachfassungen unterbringen. Bei Filmen, bei denen der Herausgeber Wert auf bessere Qualität gelegt hat, ist es auch verbreitet, eine Sprache in Dolby Digital und DTS anzubieten und weitere Sprachen dann nur in Dolby Digital.

Eine DVD-Video mit MP2-Ton ist mir übrigens noch nicht untergekommen und DTS:ES nur sehr selten.

Musik auf DVD-Video

Bei der Musik ist die Situation leider durchwachsen. Bei dem im letzten Beitrag erwähnten MVI hatte ich ja schon geschrieben, dass mindestens PCM 48/24 verwendet wurde. Es sollen auch MVIs mit PCM 96/24 Stereo erschienen sein.

Ein Beispiel für Musik-DVD mit reinen Musik-Inhalten sind die Limited Editions einiger Alben von The Pineapple Thief, die als Boxsets mit jeweils 2 CDs, 1 DVD und 1 Blu-ray veröffentlicht wurden. Die DVDs enthalten dabei die Musik der beiden CDs in PCM 96/24 Stereo und als Surround-Abmischung in DTS 96/24 bei 1,5 MBit/s und markieren so das Maximum, das man in der Praxis aus der DVD-Video rausholen kann. (Wobei man diskutieren könnte, ob man nicht besser normales DTS 5.1 bei der selben Datenrate hätte nehmen sollen, um keine Bandbreite für die Codierung der unhörbaren Frequenzanteile oberhalb von 20 kHz zu verschwenden.) Bewegtbild ist nicht enthalten, die Musik ist jeweils mit Standbildern hinterlegt.

The Pineapple Thief: Versions of Truth (Limited Edition) – Die DVD enthält PCM 96/24 und DTS 96/24, aber nur die Blu-ray enthält den Surround-Mix auch in voller Qualität bei verlustfreier Kompression; das ist auf der DVD nicht möglich.

Obwohl eine höhere Qualität und mehr Inhalt pro Disc als auf CD möglich wäre, haben sich DVD-Videos für reine Musik bekanntermaßen nicht durchgesetzt. Die Gründe dafür sind vielfältig, einer ist sicher, dass man viele DVD- (oder auch Blu-ray-) Player ohne angeschlossenen Fernseher nicht vernünftig bedienen kann. CDs lassen sich leichter direkt in einzelne Files für jeden Track Rippen und wie oben diskutiert sind die Qualitätsvorteile von höheren Wortbreiten und Samplingfrequenzen in der Praxis nur marginal oder gar nicht vorhanden. Musik in Surround-Abmischungen erfreuen sich zwar heute einer gewissen Beliebtheit, aber inzwischen sind Streaming und Blu-ray aktuell. Zu der Zeit der Einführung der DVD dachte man bei Surround eher an Filme.

Das soll natürlich nicht heißen, dass Musik auf DVD-Video gar keine Rolle spielt, ganz im Gegenteil! Zahlreiche Aufnahmen von Live-Konzerten und Musikvideos beweisen das.

Dire Straits: Alchemy Live – ein Beispiel für eine DVD mit PCM Stereo und DTS 5.1 auf der Ausgabe von 2010. Die gibt es auch als Blu-ray mit verlustlos komprimiertem Surround-Ton, nur das Bild ist da auch nicht besser; die Aufnahme ist von 1983 und da waren VHS und LaserDisc aktuell!

Worauf achten?

Eine Anleitung zum Abspielen und Migrieren, wie bei den anderen Formate, werde ich mir an dieser Stelle sparen, wir reden hier schließlich über gewöhnliche Video-DVDs…

Aber wenn man eine gute Tonqualität haben will, sollte man bei der Auswahl hinschauen. Natürlich wird man eine Aufnahme eher danach auswählen, was da für Musik drauf ist und wer dort spielt. Eine gute technische Qualität garantiert weder gute Musik noch dass die Aufnahme tatsächlich gut klingt. Aber gute Aufnahmen und vernünftig ausgewählte Tonformate gehen eben doch oft einher.

Leider sind die Angaben auf den Covern nicht immer so detailliert wie man es gerne hätte, z.B. habe ich noch nirgends gesehen, dass die Bitrate angegeben worden wäre. Ob ein DTS-Ton mit den maximalen 1,5 MBit/s oder nur mit der Hälfte läuft, erfährt man erst, wenn man es sich vom heimischen Player anzeigen lässt.

Manchmal sind die Angaben auch etwas irreführend, z.B. bei der DVD zum „Sultans of Swing“-Sampler der Dire Straits (Nicht die oben abgebildete „Alchemy Live“!). Auf dem Cover ist das Dolby-Logo und die Angabe 2.0, aber die positive Überraschung war dann, dass in Wahrheit die Musik in unkomprimiertem PCM-Stereo vorliegen und nur das Bonusmaterial in Dolby Digital 2.0.

Dire Straits: Sultans of Swing (Sampler) – Dolby Digital 2.0 oder doch eher PCM Stereo? Das ist hier die Frage! Die Antwort ist: Das Interview mit Mark Knopfler ist in Dolby, die Musik in PCM.

Es wird einem also nicht leicht gemacht. Als Faustregel kann man vielleicht sagen, dass wenn eine Musik-DVD in DTS und/oder PCM vorliegt, sich wohl jemand Gedanken gemacht hat.

Aber wäre das Beth-Hart-Konzert „Live in Paradiso“ weniger legendär, wenn der Ton nicht als DTS 5.1 bei maximaler Bitrate vorliegen würde? Wohl kaum! 🙂