RSS DEV-Gemeinschaft

Entschlüsseln Sie die Macht von LLM-basiertem ETL: Wandeln Sie variable CSV in sauberes JSON mit C#, Semantic Kernel & Llama 3.2-3B um

Dieses Projekt demonstriert einen LLM-gesteuerten ETL-Prozess in einer .NET 8 Konsolenanwendung. Herkömmliche ETL-Prozesse haben Schwierigkeiten mit sich ändernden CSV-Spaltennamen, aber dieser Ansatz verwendet ein LLM, um Spaltenzuordnungen zur Laufzeit zu inferieren. Durch das Stichprobensampling der ersten Zeilen einer CSV fragt die Anwendung ein leichtgewichtiges llama3.2-3B-Modell ab, um zu identifizieren, welche CSV-Spalten einem festen Kundenschema entsprechen. Die inferierte Zuordnung wird dann verwendet, um die gesamte CSV-Datei zu transformieren. Der Prozess wandelt dynamische CSV-Daten in einen strukturierten Kunden-Datensatz mit den Feldern Id, Name, Email, SignupDate und IsActive um. Die Methoden `Convert` und `Lookup` kümmern sich um die Datenharmonisierung und Typkonvertierungen, einschließlich der flexiblen Datumsanalyse. Die Anwendung streamt die vollständige CSV-Datei, verarbeitet jede Zeile mithilfe der LLM-generierten Zuordnung und gibt zeilenweise getrennte JSON-Daten aus. Diese Methode eliminiert die Notwendigkeit fragiler Konfigurationsdateien und geht elegant mit unordentlichen realen Daten um. Die gesamte Lösung ist mit etwa 150 Zeilen C#-Code erstellt und nutzt Semantic Kernel und Ollama. Dies zeigt die Leistungsfähigkeit von LLMs für die dynamische Datenintegration und bietet eine robuste und effiziente Alternative zu herkömmlichen ETL-Methoden.
favicon
dev.to
Unlock the Power of LLM-Driven ETL: Transform Variable CSV to Clean JSON with C#, Semantic Kernel & Llama 3.2-3B
Bild zum Artikel: Entschlüsseln Sie die Macht von LLM-basiertem ETL: Wandeln Sie variable CSV in sauberes JSON mit C#, Semantic Kernel & Llama 3.2-3B um