# agr-assistent Минимальный AI-ассистент, живущий в системном трее. - LLM: локальные модели (Ollama, LM Studio, llama.cpp) или OpenRouter — через единый OpenAI-совместимый API - Текстовый чат со стримингом ответа - Озвучка ответов голосом Silero: фразы проговариваются по мере генерации, блоки кода пропускаются - Голосовой ввод по глобальной горячей клавише: faster-whisper на видеокарте, конец фразы по паузе (Silero VAD) - В планах: слово активации ## Запуск Нужен [uv](https://docs.astral.sh/uv/). ```bash uv sync uv run agr-assistent ``` При первом запуске рядом создаётся `config.yaml` (путь можно переопределить переменной `AGR_ASSISTENT_CONFIG`). В нём выбирается провайдер и модель: ```yaml llm: provider: openrouter providers: openrouter: api_key: ${OPENROUTER_API_KEY} # или ключ напрямую model: openai/gpt-4o-mini ``` Для Ollama достаточно запустить сервер и скачать модель: `ollama pull qwen2.5:7b`. Модель Silero (~145 МБ) скачивается при первом запуске в `%LOCALAPPDATA%\agr-assistent\models`. Голос и модель задаются в секции `tts` конфига; озвучку можно выключить в меню значка. Silero читает только кириллицу: числа переводятся в слова, латиница пропускается. ### Голосовой ввод Нажмите `Win+Alt+Space` (настраивается в `voice.hotkey`), дождитесь короткого сигнала и говорите — запись закончится сама после паузы, или нажмите клавишу ещё раз. Если ассистент в этот момент отвечает, он замолкает и слушает. Распознаёт faster-whisper (`large-v3-turbo`, ~1.6 ГБ, скачивается при первом запуске). При наличии видеокарты NVIDIA используется она: библиотеки CUDA ставятся pip-пакетами `nvidia-cublas-cu12` и `nvidia-cudnn-cu12`, отдельно устанавливать CUDA Toolkit не нужно. Без видеокарты распознавание идёт на CPU — тогда лучше выбрать модель `small` или `medium`. Закрытие окна сворачивает приложение в трей. Клик по значку открывает чат, в меню значка — переключение провайдера, новый диалог и выход. ## Разработка ```bash uv run pytest ```