Ableton + ChatGPT verbinden - So generierst du mit KI Musik!

00:00 Einführung
00:30 Übersicht
01:34 Schritt-für-Schritt
02:30 Ableton als MIDI Controller
04:00 Python Skript
05:25 API Key und Start
06:27 Abschließende Tipps
08:27 MIDI Response Error
09:40 Wichtige Hinweise

Ableton + ChatGPT verbinden – So generierst du mit KI Musik!

Oh, was ist das? Ich nenne das mal acht Bit Musik. Heute geht es um Ableton und ChatGPT, aber nicht als zwei separate Programme, sondern vereint zusammen. Unser Ziel ist es, den Durchbruch zu machen, dass unser Language Model schlussendlich mit der DAW direkt Musik erzeugen kann. Ich zeige dir Schritt für Schritt, wie das geht, damit auch du mit KI und Ableton Musik machen kannst.

Überblick

Um dir den Einstieg ins Thema zu vereinfachen, habe ich eine Übersicht erstellt. Links haben wir ChatGPT:

  • ChatGPT: Man kann dem Chatbot auf einer Website Fragen stellen und kriegt erstaunlich gut formulierte Antworten auch im Bereich Musik zurück.

  • OpenAI API: Eine API ist ein Programmteil. Sie definiert die Programmanbindung auf Quelltextebene für andere Programme. Wir können also von außen auf diese Schnittstelle zugreifen.

Wichtige Libraries

Zwei Libraries müssen ebenfalls installiert sein:

  1. Python OSC: Ein Server, welcher die Signale von Daten in OSC übersetzt.

  2. Ableton OSC: Stellt die Daten dann Ableton Live zur Verfügung.

Wie das alles genau geht, zeige ich euch später. Als letztes haben wir Ableton Live auf Deutsch, ein Programm für Musikproduktion, welches ich wohl nicht genauer erklären muss. Über all dem schwebt noch das GPT Ableton Python Script, welches quasi den ganzen Prozess anstößt. Dort stehen alle Instruktionen drin, inklusive dem Prompt für ChatGPT, den Library-Instruktionen und den Anweisungen für OSC generierten Noten an Ableton weiterzugeben.

Schritt-für-Schritt Anleitung

Ich zeige dir nun Schritt für Schritt, welche Schritte nötig sind, dass du die beiden Programme via Open Sound Control (OSC) und Python Scripts miteinander verbinden kannst. So kannst du ebenfalls Inspiration für deine eigene Musikproduktion erhalten.

Installation von OpenAI

Um diesen ganzen Prozess mal zu starten, gehen wir auf OpenAI und dann kopieren wir uns diesen Command:

pip install openai

Dann öffnen wir das Terminal und kopieren diesen Code da rein. Du siehst, bei mir ging das ziemlich schnell, weil ich OpenAI eben schon installiert hatte.

API Key generieren

Als zweites brauchen wir unseren API Key. Den finden wir unter OpenAI Developers und API Reference Seite. Gehe auf die API Keys Page, logge dich kurz ein und erstelle einen neuen Secret Key.

# Beispiel für die Nutzung des API-Keys im Skriptopenai.api_key = 'DEIN_API_KEY_HIER'

Ableton OSC Setup

Nun müssen wir Ableton überzeugen, dass unser Programm ein virtueller MIDI Controller ist. Für diesen Zweck gibt es Ableton OSC in einer Alpha Version. Wir scrollen herunter, und sehen die Installation:

# Ableton OSC herunterladen und entpacken# Download: Ableton OSC

Nach dem Entpacken müssen wir das Skript an einem bestimmten Ort innerhalb von Ableton ablegen. Wir installieren dies als sogenanntes Third Party Script unter folgenden Pfaden:

  • Windows: C:\Users\[Dein_Username]\Ableton\Live x.x.x\User Library\Remote Scripts

  • macOS: /Users/[Dein_Username]/Music/Ableton/User Library/Remote Scripts

Falls der Ordner Remote Scripts nicht existiert, musst du einen neuen Ordner erstellen und dort den Ableton OSC Folder hineinziehen. Ein kleiner Hinweis: In Remote Scripts darf der Ableton OSC Folder nicht Master am Ende haben.

Python Script & Verbindung

Nun kommt das Python Script von Burnt Guitarrist ins Spiel, das den Fluss zwischen Ableton und ChatGPT regelt. Das laden wir runter und entpacken es.

Das Python Script im Detail

Hier ein Beispiel, wie das Script aussieht:

import openaiimport pythonoscimport abeltonosc# Konstanten definierenpitches = [....]start_time, velocity = ...result_types = ["melody", "drums", "bass"]# Prompt an ChatGPTprompt = "Hi GPT, bitte schreibe mir Melodien, mache mir ein OSC Pattern und so weiter..."# Antwort von der APIresponse = openai.Completion.create(prompt=prompt)formatted_response = ...# Clips erstellen und Daten einspeisencreate_clips(formatted_response)

Die Konstanten wie pitch, start time und velocity werden definiert. Der Prompt, also die Anweisung an GPT, ist extrem wichtig, denn das leitet ChatGPT an, ein korrektes Format auszugeben.

Rechte & API Key im Script

Zum Starten muss das Python Script im Terminal laufen. Sollte ein permission denied Error auftreten, ändern wir die Zugriffsrechte wie folgt:

chmod 755 gpt_abelton_script.py

Vergiss nicht, deinen OpenAPI Key im Script zu speichern.

Hinweise & Stolpersteine

Zwei Stolpersteine könnten auftreten:

  1. API response code richtig eintragen.

  2. Statt einfach python, muss man python3.X, je nach Version, eingeben.

Noch ein Stolperstein ist das Bezahlen: Ohne einen bezahlten Account kannst du deine API Keys nicht nutzen. Ein Bezahl-Account bei OpenAI ist nötig.

Fazit und Ausblick

Ja Herbert, das finde ich auch. Was denkst du über die Zukunft dieser Art von Musikproduktion? Schreib es mir unten in die Kommentare, das interessiert mich wirklich sehr. Was mich auch freut, ist ein Like oder dein Kanalabo. Das bedeutet mir persönlich sehr viel.

Erfahrungen und Tipps

Während meiner Tests habe ich festgestellt, dass ChatGPT manchmal interessante Ergebnisse liefert, die als Grundlage für neuen Song dienen können. Oft jedoch, zeigte es Schwächen bei Melodien und Patternlängen. Der Prompt ist und bleibt entscheidend, und man sollte darauf achten, ihn klar und spezifisch zu formulieren.

Apropos Bezahlung: Meine bisherigen Sessions kosteten insgesamt nur $0,39, was für mich völlig akzeptabel war. Es bleibt spannend zu sehen, wie sich die Technologien weiterentwickeln werden und welchen Einfluss KI auf die Musikproduktion haben wird.

Tschüss, bis bald!

28/06/2024

Danke für dein Interesse an mehreren Kursen. Möchtest du die Diplom Info Seite sehen?
Je grösser das Diplom, desto grösser der Rabatt.

Reminder: Diploma Konfigurator Reminder: Diploma Konfigurator

Jetzt Whatsapp Chatten

  • AGB / DSB
  • This field is for validation purposes and should be left unchanged.