Semantische Unit Tests mit LLMs: Einführung der `suite`-Bibliothek

2025-05-05

Dieser Beitrag stellt `suite` vor, eine Python-Bibliothek, die Large Language Models (LLMs) für semantische Unit Tests verwendet. Im Gegensatz zu traditionellen Unit Tests bewertet `suite` die semantische Korrektheit von Funktionen, indem sie deren Implementierung mit den Docstrings vergleicht. Der Autor beschreibt detailliert die Funktionsweise von `suite`, einschließlich der Prompt-Erstellung, der Behandlung von Funktionsabhängigkeiten und der Integration mit pytest. Obwohl betont wird, dass `suite` keine traditionellen Unit Tests ersetzen sollte, dient es als wertvolle Ergänzung, die Entwicklern hilft, Fehler frühzeitig zu erkennen und die Testabdeckung zu verbessern. `suite` unterstützt asynchrone Tests und ermöglicht die Verwendung lokaler Modelle, wodurch Kosten und Datenschutzbedenken reduziert werden.

Mehr lesen
Entwicklung

Jupyter Notebooks und LLMs: Eine unerwartete Kostenoptimierung

2025-01-21

Der Autor nutzte LLMs zur Unterstützung beim Programmieren, zunächst mit einer ContinueDev + OpenRouter-Konfiguration. Die Kosten stiegen unerwartet stark an. Untersuchungen ergaben, dass Jupyter Notebook-Dateien (.ipynb) erhebliche versteckte Inhalte (Code-Ausgaben, Metadaten, base64-codierte Bilder) enthalten, was zu einer hohen Anzahl von Tokens und erhöhten LLM-Aufrufkosten führte. Die Lösung bestand darin, .ipynb-Dateien in .py-Dateien umzuwandeln und base64-codierte Bilder zu entfernen. Dies reduzierte die Kosten um 94% und auch die Latenz. Der Beitrag hebt die Bedeutung achtsamer Eingaben bei der Verwendung von LLMs hervor und empfiehlt regelmäßige Kostenkontrollen.

Mehr lesen
Entwicklung