AI Personal Learning
und praktische Anleitung
CyberKnife-Zeichenspiegel

csm-mlx: csm-Sprachgenerierungsmodell für Apple-Geräte

Allgemeine Einführung

csm-mlx basiert auf dem von Apple entwickelten MLX-Framework und ist für das Sprachdialogmodell CSM (Conversation Speech Model) speziell für das Apple Silicon optimiert. Dieses Projekt ermöglicht es Benutzern, auf einfache Weise effiziente Spracherzeugungs- und Dialogfunktionen auf Apple-Geräten auszuführen. Der Entwickler senstella veröffentlichte dieses Projekt am 15. März 2025 mit dem Ziel, mehr Menschen dazu zu bringen, die Leistungsfähigkeit von Apple-Geräten zu nutzen und die Sprachtechnologie zu erforschen. Der Kern des Projekts ist es, ein leichtgewichtiges, einfach zu bedienendes Werkzeug zur Verfügung zu stellen, das die Erzeugung natürlicher Sprache und die Verarbeitung von Dialogszenarien unterstützt.

csm-mlx: csm-Sprachgenerierungsmodell für Apple-Geräte-1


 

Funktionsliste

  • Spracherzeugung: Erzeugen Sie nach der Texteingabe natürliche menschliche Sprachaufnahmen.
  • Unterstützung des Gesprächskontexts: Generieren Sie kohärente Sprachantworten auf der Grundlage des Inhalts früherer Gespräche.
  • Optimierung von Apple-Geräten: effiziente Ausführung von Modellen auf Apple-Silizium unter Verwendung des MLX-Frameworks.
  • Laden von Open-Source-Modellen: Unterstützung für das Herunterladen von vortrainierten Modellen von Hugging Face (z.B. csm-1b).
  • Einstellbare Parameter: ermöglicht die Einstellung von Sampler-Parametern wie Temperatur (temp) und Mindestwahrscheinlichkeit (min_p) zur Steuerung des Erzeugungseffekts.

 

Hilfe verwenden

Ablauf der Installation

Um csm-mlx lokal zu verwenden, müssen Sie zunächst einige abhängige Werkzeuge und Umgebungen installieren. Nachfolgend finden Sie die detaillierten Schritte:

  1. Vorbereiten der Umgebung
    • Vergewissern Sie sich, dass Sie macOS verwenden und dass das Gerät mit Apple-Silizium betrieben wird (z. B. mit M1- oder M2-Chips).
    • Installieren Sie Python 3.10 oder höher. Sie können Python mit dem folgenden Befehl installieren brew install python@3.10 Installation über Homebrew.
    • Git installieren, ausführen brew install git(kann übersprungen werden, wenn bereits installiert).
  2. Klonprojekt
    • Öffnen Sie ein Terminal und geben Sie den folgenden Befehl ein, um das csm-mlx-Projekt herunterzuladen:
      git clone https://github.com/senstella/csm-mlx.git
      
    • Wechseln Sie in den Projektordner:
      cd csm-mlx
      
  3. Erstellen einer virtuellen Umgebung
    • Erstellen Sie eine virtuelle Python-Umgebung im Projektverzeichnis:
      python3.10 -m venv .venv
      
    • Aktivieren Sie die virtuelle Umgebung:
      Quelle .venv/bin/activate
      
  4. Installation von Abhängigkeiten
    • Installieren Sie die für das Projekt benötigten Python-Pakete und führen Sie es aus:
      pip install -r anforderungen.txt
      
    • Hinweis: Sie müssen sicherstellen, dass das MLX-Framework und Hugging Face installiert sind. huggingface_hub Bibliothek. Wenn Sie auf Probleme stoßen, können Sie eine separate pip install mlx huggingface_hub.
  5. Modelle herunterladen
    • csm-mlx mit vortrainierten Modellen csm-1b-mlx. Führen Sie den folgenden Code aus, um automatisch herunterzuladen:
      python -c "from huggingface_hub import hf_hub_download; hf_hub_download(repo_id='senstella/csm-1b-mlx', filename='ckpt.safetensors')"
      
    • Die Modelldateien werden im lokalen Cache-Verzeichnis gespeichert (normalerweise im ~/.cache/huggingface/hub).

Wie zu verwenden

Nach der Installation können Sie die Spracherzeugungsfunktion von csm-mlx mit einem Python-Skript ausführen. Hier sind die Schritte, um dies zu tun:

Grundlegende Spracherzeugung

  1. Drehbücher schreiben
    • Erstellen Sie eine Datei im Projektverzeichnis, z. B. generate_audio.pygeben Sie den folgenden Code ein:
      von csm_mlx importieren CSM, csm_1b, generieren
      from mlx_lm.sample_utils import make_sampler
      von huggingface_hub importieren hf_hub_download
      # Initialisierungsmodell
      csm = CSM(csm_1b())
      weights = hf_hub_download(repo_id="senstella/csm-1b-mlx", filename="ckpt.safetensors")
      csm.load_weights(gewicht)
      # Audio generieren
      audio = erzeugen(
      csm.
      text="Hallo, hier ist csm-mlx.",
      speaker=0,
      context=[],
      max_audio_length_ms=10000, # max_audio_length 10 Sekunden
      sampler=make_sampler(temp=0.5, min_p=0.1)
      )
      # Audio speichern
      importiere audiofile
      audiofile.write("output.wav", audio, 22050) # 22050 ist die Abtastrate
      
    • Hinweis: Das Speichern von Audio erfordert die Installation von Audiodatei Bibliothek, führen Sie die pip install audiofile.
  2. Laufende Skripte
    • Geben Sie ihn in das Terminal ein:
      python generate_audio.py
      
    • Wenn Sie es ausführen, wird im aktuellen Verzeichnis Folgendes erzeugt Ausgabe.wav Datei, doppelklicken Sie auf sie, um sie abzuspielen.

Hinzufügen von Dialogkontext

  1. Ändern des Skriptunterstützungskontexts
    • Wenn Sie möchten, dass das Modell Antworten auf der Grundlage früherer Dialoge generiert, können Sie die Option Kontext Parameter. Der Änderungscode lautet wie folgt:
      from csm_mlx import CSM, csm_1b, generate, Segment
      import mlx.core as mx
      from huggingface_hub import hf_hub_download
      # Initialisierung des Modells
      csm = CSM(csm_1b())
      weights = hf_hub_download(repo_id="senstella/csm-1b-mlx", filename="ckpt.safetensors")
      csm.load_weights(weight)
      # Erstellen Sie den Dialogkontext
      kontext = [
      Segment(speaker=0, text="Hallo, wie ist das Wetter heute?" , audio=mx.array([...])) ,
      Segment(speaker=1, text="Es ist toll, die Sonne scheint." , audio=mx.array([...]))
      ]
      # Eine Antwort generieren
      audio = generieren(
      csm.
      text="Dann lass uns spazieren gehen!" ,
      speaker=0,
      context=Kontext,
      max_audio_length_ms=5000
      )
      # Speichern Sie das Audio
      importiere audiofile
      audiofile.write("antwort.wav", audio, 22050)
      
    • Achtung!audio=mx.array([...]) Erfordert vorherige Audiodaten. Ist dies nicht der Fall, können Sie die Audiodaten zunächst mit der Basisgenerierung erzeugen und sie dann mit deren Ergebnissen füllen.
  2. Ausführen und testen
    • vollziehen python generate_audio.pyGenerierung von Sprachdateien mit Kontext antworten.wav.

Parametrisierung

  • Temperatur (temp)Steuert die Zufälligkeit der Sprache. Je kleiner der Wert (z. B. 0,5), desto stabiler die Sprache; je größer der Wert (z. B. 1,0), desto abwechslungsreicher die Sprache.
  • Maximale Länge (max_audio_length_ms)Die Einheit ist Millisekunden, z.B. 5000 bedeutet 5 Sekunden.
  • Anpassungsmethode: in make_sampler vielleicht erzeugen um die Parameter zu ändern und dann das Skript erneut auszuführen.

caveat

  • Wenn Sie beim Erzeugen von Audiodaten Speicherprobleme haben, versuchen Sie, die Größe der Datei max_audio_length_ms.
  • Stellen Sie sicher, dass Sie über eine gute Internetverbindung verfügen, da für den ersten Durchlauf des Modells die Gewichtungsdatei heruntergeladen werden muss, die einige GB groß ist.

 

Anwendungsszenario

  1. Pädagogische Hilfsmittel
    Benutzer können csm-mlx verwenden, um Spracherläuterungen für Lehrinhalte zu erzeugen. Geben Sie zum Beispiel den Text ein und erzeugen Sie natürliche Sprache für Hörübungen.
  2. Entwicklung von virtuellen Assistenten
    Entwickler können csm-mlx verwenden, um intelligente Sprachassistenten zu entwickeln. In Kombination mit der Dialogkontextfunktion kann der Assistent kohärente Antworten auf der Grundlage der Worte des Benutzers generieren.
  3. Erstellung von Inhalten
    Podcast-Produzenten können damit Skripte in Sprache umwandeln, schnell Audioclips erstellen und Aufnahmezeit sparen.

 

QA

  1. Unterstützt csm-mlx Chinesisch?
    Ja, es unterstützt chinesische Eingaben und erzeugt chinesische Sprache. Die Wirkung hängt jedoch von den Trainingsdaten ab, und es wird empfohlen, bestimmte Äußerungen zu testen, um die Qualität zu bestätigen.
  2. Wie viel Speicherplatz wird auf der Festplatte benötigt?
    Die Modelldateien sind etwa 1-2 GB groß, plus 5 GB Speicherplatz für abhängige Bibliotheken und generierte Dateien.
  3. Funktioniert es unter Windows?
    Nein, csm-mlx ist für Apple-Silizium konzipiert, basiert auf dem MLX-Framework und unterstützt derzeit nur macOS.
Darf nicht ohne Genehmigung vervielfältigt werden:Chef-KI-Austauschkreis " csm-mlx: csm-Sprachgenerierungsmodell für Apple-Geräte

Chef-KI-Austauschkreis

Der Chief AI Sharing Circle konzentriert sich auf das KI-Lernen und bietet umfassende KI-Lerninhalte, KI-Tools und praktische Anleitungen. Unser Ziel ist es, den Nutzern dabei zu helfen, die KI-Technologie zu beherrschen und gemeinsam das unbegrenzte Potenzial der KI durch hochwertige Inhalte und den Austausch praktischer Erfahrungen zu erkunden. Egal, ob Sie ein KI-Anfänger oder ein erfahrener Experte sind, dies ist der ideale Ort für Sie, um Wissen zu erwerben, Ihre Fähigkeiten zu verbessern und Innovationen zu verwirklichen.

Kontaktieren Sie uns
de_DE_formalDeutsch (Sie)