Referenz · internes Werkzeug, Forschung und Entwicklung

WCSAssist, unser Testfeld, um KI in eine Anwendung zu bringen, ohne dass sie etwas erfindet.

Ein Assistent für DJs im West Coast Swing, einem Paartanz, bei dem die Musik aufs Tempo genau ausgewählt wird. Der DJ beschreibt den Abend auf Französisch, das Sprachmodell setzt die Parameter, ein Algorithmus stellt das Set aus der echten Bibliothek zusammen. Das ist kein Auftrag: Es ist das Werkzeug, an dem wir erproben, was wir bei der KI-Integration anbieten.

01/AusgangslageUnser Ausgangspunkt

Wer ein Sprachmodell um eine Playlist bittet, bekommt erfundene Titel

WCSAssist ist aus einem Bedarf von DJs entstanden, doch die Frage, die es beantwortet, geht über den Tanz hinaus: wie man ein Sprachmodell integriert, ohne dass es etwas erfindet und ohne dass wir die Kontrolle verlieren. Zu jedem naiven Reflex, was das Werkzeug tut.

  1. 01Direkt gefragt, erfindet das Modell Titel, Stücke, die nicht in der Bibliothek sind, und abwegige Spieldauern.Das Modell rührt nie eine Stückkennung an: Es liefert Parameter (Tempobereich, Intensitätskurve, Genres, Filter), und ein Algorithmus stellt zusammen.
  2. 02Ein West-Coast-Swing-Set wird aufs Tempo genau zusammengestellt, von Hand, über Stunden.Wiederverwendbare Generierungsprofile, Intensitätskurven, Regeln für Übergänge und das Ende des Abends, und ein Qualitätsscore pro Set.
  3. 03Die Metadaten einer ganzen Bibliothek (Genre, Jahr, Land) von Hand zu korrigieren, ist nicht zu schaffen.Eine Stapelanalyse, bei der jeder Vorschlag eine Quelle aus einer vertrauenswürdigen Domain nennen muss, sonst lehnt der Server ihn ab; die Nutzenden haken an, was sie übernehmen.
  4. 04Eine KI-Funktion in der Produktion kostet Geld und läuft aus dem Ruder, wenn niemand hinschaut.Jeder Aufruf wird gespeichert (Anfrage, Antwort, Modell, Dauer, Kosten); ein Tageskontingent schützt vor Ausreißern.
02/Was wir gebaut habenHeute im Einsatz

Das Modell stellt die Regler ein, der Algorithmus stellt zusammen

Vier Schritte, von denen nur einer dem Sprachmodell anvertraut ist: die Anfrage in Parameter zu übersetzen.

  • 01
    Generierung im Dialog. Der Abend wird auf Französisch beschrieben; das Modell liefert Parameter, der Algorithmus wählt die Stücke aus und ordnet sie.
  • 02
    Kontrolle und Korrekturschleife. Eine Zusammenfassung des Sets wird dem Modell zur Beurteilung erneut vorgelegt; fällt das Urteil negativ aus, werden die Parameter korrigiert und das Set einmal neu erzeugt.
  • 03
    Kuratierung mit Quellenangabe. Genres, Jahr, Land, Eignung für den Tanz: Jeder Vorschlag trägt seine Quellen, und die Entscheidung bleibt bei den Nutzenden.
  • 04
    Audioanalyse. Tempo, Energie, Tonart und Tanzbarkeit pro Stück, erkannte Tempo-Auffälligkeiten, Verteilung der Bibliothek in Diagrammen.
  • 05
    Generierungsprofile. Intensitätskurven, Regeln für Übergänge und das Abklingen, um jede Art von Abend zu rahmen.
  • 06
    Import und Export mit Spotify. Verbindung des Kontos, Import von Bibliothek und Playlists, Export der erzeugten Sets.
  • 07
    Administrationskonsole. Sprachmodelle, beim Deployment festgelegte und einsehbare Prompts, vollständige Protokolle der Aufrufe, Kontingente pro Nutzerkonto.
  • 08
    Anreicherung im Hintergrund. Metadaten zwischen Spotify, MusicBrainz, Discogs und Last.fm abgeglichen, trotz abweichender Schreibweisen von Titeln und Interpreten.
03/Vier BildschirmeKonto eines Gründers, persönliche Daten unkenntlich gemacht

Vier Bildschirme, maßstabsgetreu

Screenshots des Werkzeugs im laufenden Betrieb, im Konto eines der beiden Gründer. Sein Vorname, die Avatare, die Albumcover und das gewählte Modell sind unkenntlich gemacht; das Menü, die obere Leiste und eine Fehlermeldung des Players unten am Bildschirm sind abgeschnitten. Titel und Interpreten bleiben lesbar.

Fenster zur Playlist-Generierung in WCSAssist: Name des Sets, Beschreibung des Abends auf Französisch, Auswahl der Stücke, Tageskontingent
Ansicht 01Das Generierungsfenster. Cover, Avatare und gewähltes Modell unkenntlich gemacht; Menü und unterer Bildschirmrand abgeschnitten.

Der DJ beschreibt den Abend, nicht die Playlist

Der DJ schreibt, was er möchte: Publikum, Stimmung, Steigerung. Das Modell übersetzt das in Parameter, der Algorithmus schöpft aus der echten Bibliothek, und das Set erhält einen Score.

Detailansicht eines Sets in WCSAssist: Tempokurve Stück für Stück, Score, Titelliste mit Tempo, Energie und Stil
Ansicht 02Die Detailansicht eines Sets: die Tempokurve und die Liste der Stücke. Vorname und Cover unkenntlich gemacht; Menü und unterer Bildschirmrand abgeschnitten.

Eine Tempokurve, die der DJ auf einen Blick erfasst

Die Kurve zeigt, ob der Abend sich steigert, wieder abflacht und tanzbar bleibt. Jedes Stück behält sein Tempo, seine Energie und seine Bewertung der Eignung für den Tanz.

KI-Analysen in WCSAssist: Vorschlag zu einem Stück mit Erklärung, konsultierte Quellen, freizugebende Korrekturen von Tempo, Genres und Tags
Ansicht 03Ein Kuratierungsvorschlag mit seinen Quellen. Cover unkenntlich gemacht; Menü und unterer Bildschirmrand abgeschnitten.

Keine Quelle, kein Vorschlag

Das Modell erklärt seinen Vorschlag und nennt die konsultierten Seiten. Ohne Quelle aus einer vertrauenswürdigen Domain lehnt der Server ab; mit Quelle haken die Nutzenden an, was sie übernehmen, und nichts wird von selbst angewendet.

Bibliothek in WCSAssist: Zahl der Stücke, Suche, Filter nach Tempo, Genre, Tag und Land, Liste mit Tempo, Energie und Bewertung
Ansicht 04Die filterbare Bibliothek. Cover unkenntlich gemacht; Menü und unterer Bildschirmrand abgeschnitten.

Die Bibliothek, Stück für Stück analysiert

Tempo, Energie, Tonart, Popularität, Eignungsbewertung: Die Filter lassen sich kombinieren, um ein Stück für das Ende des Abends oder einen zu korrigierenden Titel zu finden.

04/TechnologienWas wir gewählt haben und warum

Verlässliche KI ist eine Frage der Architektur

Wir überlassen dem Modell, was es gut kann (eine Anfrage verstehen), und behalten den Rest in getestetem, protokolliertem und überprüfbarem Code.

  • OberflächeNext.js und React, MUI-Komponenten, Diagramme für die Tempo- und Energiekurven.
  • ServerAPI mit .NET 10 in getrennten Schichten, Befehle und Abfragen getrennt, Migrationen beim Start angewendet.
  • DatenbankPostgreSQL.
  • KI-SchichtDerselbe Prompt für mehrere Modelle, ein Modell auf unserem eigenen Server, erreichbar über einen OpenAI-kompatiblen Endpunkt, oder die Modelle von Anthropic; das Modell wechselt, ohne die Fachlogik anzutasten.
  • IntegrationenSpotify für die Bibliothek; MusicBrainz, Discogs, Last.fm und ReccoBeats zur Anreicherung, als Hintergrundaufgaben.
  • Auslieferung und HostingDocker-Container, automatisierte Pipeline, auf unseren Servern in Frankreich ausgerollt.

Und jetzt

Eine KI-Funktion, die Ihre Anwendung ergänzen soll, ohne dass sie etwas erfindet?

WCSAssist ist die Methode, die wir bei unseren Kunden anwenden, erprobt an unserem eigenen Werkzeug. Beschreiben Sie uns Ihren Fall, wir sagen Ihnen, was machbar ist, mit Zeitrahmen und Preisrahmen.

Ihr Projekt besprechen

Antwort binnen 24 Stunden an Werktagen, von einem der beiden Gründer. Oder telefonisch: +33 7 59 96 14 99.