KI-gestützte Quellcodedokumentation

Eine Lösung zur automatischen KI-gestützten Dokumentation kompletter Quellcodebasen in einer vollständig privaten Umgebung.

KI-gestützte Quellcodedokumentation hero background

Herausforderungen

Die zentrale Herausforderung des Projekts bestand darin, den Quellcode möglichst schnell vollständig zu dokumentieren. Dabei mussten mehrere wichtige Anforderungen berücksichtigt werden:

  • Java-, Kotlin- und React-(TypeScript)-Dateien sollten gemäß Industriestandards wie JavaDoc und JSDoc dokumentiert werden
  • Die gesamte Codebasis umfasste rund 3.200 Dateien
  • Obwohl der Quellcode teilweise bereits dokumentiert war (hauptsächlich komplexe Bereiche), verlangte die neue Anforderung eine vollständige standardisierte Dokumentation der gesamten Codebasis
  • Für die Umsetzung standen etwas mehr als zwei Monate zur Verfügung
  • Die gesamte Codebasis musste vollständig privat bleiben
Herausforderungen

Ansatz

Um alle Herausforderungen zu bewältigen, setzte unser Team auf moderne KI-gestützte Methoden zur Code-Dokumentation:

  • Auswahl eines Open-Source-LLM-Modells, das sich besonders gut für die Arbeit mit Quellcode eignet
  • Durchführung erster Tests zur automatischen Dokumentation von Beispielcode mit dem gewählten Modell
  • Bewertung der Ergebnisse und Messung der Dokumentationsqualität
  • Bereitstellung einer Hosting-Umgebung mit leistungsstarker GPU-Infrastruktur
  • Entwicklung und Test einer Anwendung zur automatischen Dokumentation von Quellcodedateien
  • Ausführung der Anwendung zur Verarbeitung der gesamten Codebasis
Ansatz

Lösung

Zunächst testeten wir die automatische Code-Dokumentation mit sechs Open-Source-Modellen: Gemma3, DeepSeek-R1, Phi4, Llama3.3, CodeLlama und Qwen 2.5 Coder. Nach dem Vergleich der Ergebnisse entschieden wir uns für Qwen 2.5 Coder 32B.

Anschließend wählten wir einen GPU-Hosting-Anbieter aus. Die Inferenz mit der vollständigen Qwen-2.5-Version erforderte viel Grafikspeicher — rund 65 GB.

Eine Nvidia H100 mit 80 GB Speicher eignete sich dafür sehr gut und erreichte eine Generierungsgeschwindigkeit von etwa 30–50 Tokens pro Sekunde.

Im nächsten Schritt entwickelten wir eine Anwendung, die mit dem Ollama-Server kommunizierte und Änderungen an den jeweiligen Quellcodedateien vornahm.

Zusätzlich erstellten wir mehrere Prompts, die zuverlässig mit Java-, Kotlin- und TypeScript-Dateien funktionierten. Die Anwendung protokollierte jeden Versuch, lieferte Statistiken und arbeitete fehlertolerant.

Abschließend starteten wir den Hauptlauf. Das LLM für Code-Dokumentation benötigte rund 10 Stunden, um die gesamte Codebasis zu verarbeiten. Teile des Prozesses wurden parallel auf zwei H100-basierten Stationen ausgeführt.

Zuvor stellten wir sicher, dass der Übertragungskanal geschützt war und das Remote-System keine Logs speicherte.

Lösung

Hauptfunktionen

  • KI-gestützte automatische Dokumentation von Java-, Kotlin- und TypeScript-Quellcode
  • Eingesetztes LLM-Modell: Qwen 2.5 Coder 32B, bereitgestellt über Ollama auf einer H100-GPU
  • Mehr als 3.000 Dateien in rund 10 Stunden dokumentiert
  • Hosting-Budget: 25 US-Dollar
Hauptfunktionen

Illustration

Screenshot-1

Zugehörige Fallbeispiele