From 0a89bf5105a000f023026a4e96402b8b98f45861 Mon Sep 17 00:00:00 2001 From: Daniil Klimov Date: Sun, 12 Apr 2026 21:58:40 +0300 Subject: [PATCH] Edit code for success run --- .gitignore | 6 +++ record_wav.py | 48 ++++++++++++++++++++++++ requirements.txt | 2 +- satellite/audio.py | 61 +++++------------------------- satellite/llm.py | 6 +-- satellite/modes.py | 79 ++++++++++++++++----------------------- satellite/tts.py | 10 +++++ sounds/Success_Cosmo.mp3 | Bin 64301 -> 52598 bytes 8 files changed, 111 insertions(+), 101 deletions(-) create mode 100644 record_wav.py diff --git a/.gitignore b/.gitignore index abf67af..63d7db7 100644 --- a/.gitignore +++ b/.gitignore @@ -27,3 +27,9 @@ Thumbs.db # Claude Code .claude/ + +# Data +data/ + +# Training +training/ diff --git a/record_wav.py b/record_wav.py new file mode 100644 index 0000000..e955079 --- /dev/null +++ b/record_wav.py @@ -0,0 +1,48 @@ +import sounddevice as sd +import scipy.io.wavfile as wav +import os +import sys + +# 1. Проверка аргументов командной строки +if len(sys.argv) < 3: + print("Использование: python record.py <имя_модели> ") + print("Пример: python record.py cosmo positive") + sys.exit(1) + +MODEL_NAME = sys.argv[1] +MODE = sys.argv[2] +BASE_DIR = os.path.join("data", "wakewords", MODEL_NAME, MODE) + +# Создаем папку, если ее нет +if not os.path.exists(BASE_DIR): + os.makedirs(BASE_DIR) + +def get_next_filename(directory): + files = [f for f in os.listdir(directory) if f.endswith('.wav')] + return f"{len(files) + 1:03d}.wav" + +def record_sample(): + filename = get_next_filename(BASE_DIR) + filepath = os.path.join(BASE_DIR, filename) + + sample_rate = 16000 + duration = 2 + + print(f"\n[!] Файл {filename} готов к записи.") + input("Нажмите Enter, чтобы начать запись (2 секунды)...") + + print("Запись...") + recording = sd.rec(int(duration * sample_rate), samplerate=sample_rate, channels=1) + sd.wait() + wav.write(filepath, sample_rate, recording) + print(f"Сохранено в: {filepath}") + +# 2. Основной цикл записи +print(f"--- Режим записи: {MODEL_NAME} / {MODE} ---") +print("Для выхода нажмите Ctrl+C") + +try: + while True: + record_sample() +except KeyboardInterrupt: + print("\nЗапись завершена.") \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index ef3f70a..cf08e34 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,4 +6,4 @@ numpy groq elevenlabs # Раскомментировать когда будет Pi + Porcupine: -# pvporcupine +# pvporcupine \ No newline at end of file diff --git a/satellite/audio.py b/satellite/audio.py index 9569ca9..40f2411 100644 --- a/satellite/audio.py +++ b/satellite/audio.py @@ -1,12 +1,15 @@ +import os import pyaudio import numpy as np from .config import SILENCE_THRESHOLD, SILENCE_DURATION, MAX_DURATION, log from .stt import transcribe +ECHO_WARMUP = float(os.getenv("ECHO_WARMUP", "0.5")) # сек пропуска в начале — гасит эхо от TTS + def record() -> str: - """Запись до тишины (VAD) + STT""" + """Запись до тишины (VAD) + STT. Игнорирует ECHO_WARMUP в начале.""" try: audio = pyaudio.PyAudio() stream = audio.open( @@ -27,13 +30,13 @@ def record() -> str: speaking_started = False max_chunks = int(16000 / 1024 * MAX_DURATION) silence_chunks_needed = int(16000 / 1024 * SILENCE_DURATION) - warmup_chunks = int(16000 / 1024 * 0.3) # 0.3 сек — эхо звука активации + warmup_chunks = int(16000 / 1024 * ECHO_WARMUP) try: for i in range(max_chunks): data = stream.read(1024, exception_on_overflow=False) if i < warmup_chunks: - continue # пропускаем эхо от звука активации + continue # гасим эхо от TTS / звука активации frames.append(data) amplitude = np.abs(np.frombuffer(data, dtype=np.int16)).mean() @@ -56,52 +59,8 @@ def record() -> str: if not speaking_started: return "" - return transcribe(frames) - - -def record_with_timeout(timeout: float = 8.0) -> str: - """Слушает timeout секунд, возвращает пусто если речи не было""" - try: - audio = pyaudio.PyAudio() - stream = audio.open( - format=pyaudio.paInt16, - channels=1, - rate=16000, - input=True, - frames_per_buffer=1024, - ) - except Exception as e: - log.exception("Не удалось открыть микрофон (followup)") - print(f"⚠️ Ошибка микрофона: {e}") + text = transcribe(frames) + # отсекаем мусор от эха (одиночные знаки препинания, пробелы) + if not text or not text.strip() or len(text.strip()) < 2: return "" - - frames = [] - silent_chunks = 0 - speaking_started = False - max_chunks = int(16000 / 1024 * timeout) - silence_chunks_needed = int(16000 / 1024 * SILENCE_DURATION) - - try: - for _ in range(max_chunks): - data = stream.read(1024, exception_on_overflow=False) - frames.append(data) - amplitude = np.abs(np.frombuffer(data, dtype=np.int16)).mean() - - if amplitude > SILENCE_THRESHOLD: - speaking_started = True - silent_chunks = 0 - elif speaking_started: - silent_chunks += 1 - if silent_chunks >= silence_chunks_needed: - break - except Exception as e: - log.exception("Ошибка при записи аудио (followup)") - print(f"⚠️ Ошибка записи: {e}") - finally: - stream.stop_stream() - audio.terminate() - - if not speaking_started: - return "" - - return transcribe(frames) + return text diff --git a/satellite/llm.py b/satellite/llm.py index 82f0600..7d10e40 100644 --- a/satellite/llm.py +++ b/satellite/llm.py @@ -79,21 +79,21 @@ def ask_agent_stream(text: str, conv: "Conversation | None" = None, agent_id: st log.exception("Gateway недоступен") msg = "Не могу связаться с сервером, попробуй ещё раз." print(f"⚠️ {msg}") - #play_error_sound() + play_error_sound() speak(msg, agent_id) return msg except requests.Timeout: log.exception("Gateway таймаут") msg = "Сервер не ответил вовремя, попробуй ещё раз." print(f"⚠️ {msg}") - #play_error_sound() + play_error_sound() speak(msg, agent_id) return msg except requests.HTTPError: log.exception(f"Gateway HTTP ошибка {resp.status_code}") msg = "Ошибка сервера, попробуй ещё раз." print(f"⚠️ Gateway {resp.status_code}: {resp.text}") - #play_error_sound() + play_error_sound() speak(msg, agent_id) return msg diff --git a/satellite/modes.py b/satellite/modes.py index eb9a9d8..56c757d 100644 --- a/satellite/modes.py +++ b/satellite/modes.py @@ -1,9 +1,9 @@ import os import sys -from .config import GATEWAY_URL, AGENT, FOLLOWUP_TIMEOUT, log -from .audio import record, record_with_timeout -from .tts import play_activation_sound, speak, stop_speaking +from .config import GATEWAY_URL, AGENT, log +from .audio import record +from .tts import speak, stop_speaking from .llm import ask_agent_stream, Conversation, is_reset_command # Персистентные сессии — одна на день для каждого агента @@ -31,6 +31,29 @@ def _handle_reset(text: str, agent_id: str) -> bool: return False +def _conversation_loop(agent_id: str, agent_name: str = "Cosmo"): + """Основной цикл диалога — слушает и отвечает пока пользователь говорит. + Выходит когда в течение MAX_DURATION не было речи.""" + conv = _get_session(agent_id) + + while True: + text = record() + if not text: + print(f"😴 Тишина, жду активации...\n") + return + + print(f"📝 Ты → {agent_name}: {text}") + + if _handle_reset(text, agent_id): + conv = _get_session(agent_id) + continue + + response = ask_agent_stream(text, conv=conv, agent_id=agent_id) + print(f"🤖 {agent_name}: {response}\n") + # после ответа — следующая итерация с новым record() + # record() сам гасит эхо через ECHO_WARMUP + + def run_with_enter(): print("\n🦞 Cosmo Satellite запущен (режим: Enter для активации)") print(f" Gateway : {GATEWAY_URL}") @@ -40,34 +63,8 @@ def run_with_enter(): while True: try: input("⏎ Нажми Enter и говори...") - stop_speaking() # barge-in: прервать если ещё говорит - play_activation_sound() - - conv = _get_session("cosmo") - - while True: - text = record() - if not text: - print("⚠️ Ничего не распознано") - break - - print(f"📝 Ты: {text}") - - if _handle_reset(text, "cosmo"): - conv = _get_session("cosmo") - break - - response = ask_agent_stream(text, conv=conv) - print(f"🤖 Cosmo: {response}\n") - - print(f"👂 Слушаю продолжение ({int(FOLLOWUP_TIMEOUT)} сек)...") - followup = record_with_timeout(timeout=FOLLOWUP_TIMEOUT) - - if not followup: - print("😴 Нет продолжения, жду активации...\n") - break - - text = followup + stop_speaking() # barge-in + _conversation_loop("cosmo", "Cosmo") except KeyboardInterrupt: print("\n👋 Выход") @@ -138,23 +135,13 @@ def run_with_porcupine(): if keyword_index >= 0: agent_id = wake_word_map[keyword_index] agent_name = AGENTS[agent_id]["name"] - stop_speaking() # barge-in: прервать если ещё говорит + stop_speaking() # barge-in print(f"✅ Услышал '{agent_name}'!") - play_activation_sound() - conv = _get_session(agent_id) - - text = record() - if not text: - continue - - print(f"📝 Ты → {agent_name}: {text}") - - if _handle_reset(text, agent_id): - continue - - response = ask_agent_stream(text, conv=conv, agent_id=agent_id) - print(f"🤖 {agent_name}: {response}\n") + # отпускаем микрофон на время диалога + stream.stop_stream() + _conversation_loop(agent_id, agent_name) + stream.start_stream() except KeyboardInterrupt: raise diff --git a/satellite/tts.py b/satellite/tts.py index 89cfa59..599a1dd 100644 --- a/satellite/tts.py +++ b/satellite/tts.py @@ -2,6 +2,7 @@ import os import sys import subprocess import threading +from elevenlabs import VoiceSettings from .config import AUDIO_SINK, AGENTS, log @@ -68,11 +69,20 @@ def _speak_elevenlabs(text: str, agent_id: str): print(f"⚠️ tts_voice не задан для {agent_id}") return + voice_settings = VoiceSettings( + stability=0.5, + similarity_boost=0.75, + style=0.0, + use_speaker_boost=True, + speed=1.1 # Значение от 0.7 до 1.2. 1.1 — это ускорение на 10% + ) + audio_stream = client.text_to_speech.convert( text=text, voice_id=voice_id, model_id=ELEVENLABS_MODEL, output_format="mp3_44100_128", + voice_settings=voice_settings ) with _process_lock: diff --git a/sounds/Success_Cosmo.mp3 b/sounds/Success_Cosmo.mp3 index 5b13bbf0f51a88ec59a921ef24d978622a3d4605..b472597a143e394229d85ebc9b1995a151b8960f 100644 GIT binary patch delta 19552 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 KW}`qugZW?3*v!=c delta 31354 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%0DT)Jo@?cGm1w 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 Dnt6c!