Allgemeine Einführung
Always-On AI Assistant ist ein innovatives KI-Assistentenprojekt, das durch die Integration von fortschrittlichen Technologien wie Deepseek-V3, RealtimeSTT und Typer ein leistungsstarkes und permanent online verfügbares KI-Assistenzsystem schafft. Das Projekt ist speziell für technische Entwicklungsszenarien optimiert und bietet eine vollständige Sprachinteraktionsschnittstelle und einen Rahmen für die Befehlsausführung. Das System ist modular aufgebaut und umfasst eine einfache Assistenten-Chat-Schnittstelle und ein fortschrittliches Typer-Assistentensitzungs-Befehlssystem, das Echtzeit-Spracherkennung und Text-to-Speech-Funktionen unterstützt. Durch die Integration der Sprachsynthesetechnologie von ElevenLabs und der Echtzeit-Spracherkennung von RealtimeSTT bietet das Projekt Entwicklern ein komplettes Entwicklungsparadigma für KI-Assistenten, das die Entwicklung intelligenter Sprachassistenten einfacher und effizienter macht.
Funktionsliste
- Echtzeit-Spracherkennungs- und Antwortsystem
- Intelligente Dialogmaschine auf Basis von Deepseek-V3
- Anpassbarer Rahmen für die Ausführung von Typer-Befehlen
- Unterstützung von Multimodus-Betrieb (Standard, Ausführung, speicherlose Ausführung)
- Dynamisches Speicherverwaltungssystem (Scratchpad)
- Hochgradig konfigurierbare Assistentenarchitektur
- Unterstützung der nativen Spracherkennung
- ElevenLabs Hochwertige Sprachsynthese-Integration
- Erweiterbares Befehlsvorlagensystem
- Interaktive Sitzungen in Echtzeit
Hilfe verwenden
1. ökologische Konfiguration
1.1 Grundlegende Konfiguration
- Klonen Sie zunächst das Projekt lokal
- Kopieren Sie die Umgebungskonfigurationsdatei: execute
cp .env.sample .env
- Aktualisieren Sie den API-Schlüssel:
- DEEPSEEK_API_KEY setzen (für den Zugang zum AI-Modell)
- Einstellung ELEVEN_API_KEY (für die Sprachsynthese)
- vollziehen
uv .
Synchronisationsabhängigkeit - Optional: Installieren Sie Python 3.11 (mit dem Befehl
uv python install 3.11
)
1.2 Systemanforderungen
- Python 3.11 oder höher.
- Stabile Netzwerkverbindung
- Mikrofonanlage (für Spracheingabe)
- Audio-Ausgabegerät (Computer)
2. eine Beschreibung der Nutzung der Hauptfunktionen
2.1 Grundlegende Assistenten-Chat-Schnittstelle
- Befehl starten:
uv run python main_base_assistant.py chat
- Es öffnet sich ein einfacher Dialog
- Direkte Text- oder Sprachinteraktion ist möglich
- Sprachausgabe mit nativem TTS
2.2 Sitzungsbefehlssystem des Typer-Assistenten
- Befehl starten:
uv run python main_typer_assistant.py awaken --typer-file commands/template.py --scratchpad scratchpad.md --mode execute
- Parameter Beschreibung:
- --typer-file: gibt den Speicherort der Befehlsvorlagendatei an
- --scratchpad: setzt die dynamische Speicherdatei des Assistenten
- --mode: legt den Betriebsmodus fest (Standard/Ausführen/Ausführen-ohne-Kratzen)
2.3 Interaktion mit Assistenten
- Deutlich ausgesprochener "Ada"-Weckruf.
- Sagen Sie Anweisungen, z. B. "Ada, pinge den Server an und warte auf eine Antwort".
- Der Assistent erkennt Sprache in Echtzeit und führt entsprechende Befehle aus
- Die Ergebnisse der Ausführung werden in der Datei scratchpad.md festgehalten
3. die Beschreibung der architektonischen Komponenten
3.1 Architektur des Typer-Assistenten
- Gehirn: Verwendung von Deepseek V3 als Kern-KI-Engine
- Aufgabenbearbeitung: definiert über prompts/typer-commands.xml
- Dynamischer Speicher: Zustandsverwaltung mit scratchpad.txt
- Spracherkennung: Sprache-zu-Text in Echtzeit mit RealtimeSTT
- Sprachsynthese: Integration mit ElevenLabs sorgt für natürliche Sprachausgabe
3.2 Architektur des Infrastrukturassistenten
- Kernmaschine: Verwendung von ollama:phi4
- Vereinfachtes Design: keine zusätzlichen Hinweise oder dynamischer Speicher erforderlich
- Spracherkennung: auch mit RealtimeSTT
- Sprachausgabe: Verwendung des lokalen TTS-Systems
4. erweiterte Funktionskonfiguration
- Die Konfigurationen des Assistenten können über die Datei assistant_config.yml angepasst werden
- Unterstützung für das Hinzufügen benutzerdefinierter Typer-Befehle
- Parameter für Spracherkennung und -synthese können angepasst werden
- Unterstützung bei der Erweiterung neuer Funktionsmodule