RU: голосовой AI-помощник для автоматизации задач 1C.
EN: a voice AI assistant for automating 1C-related tasks.
Статус / Status: активный проект 2026 года; ожидает ревизии README и кода. / active 2026 project; README and code review are pending.
Текущее имя / Current name: voice-1c-assistant
Плановое имя / Planned name: voice-1c-assistant
Topics: 1c, ai, automation, cleanup-pending, needs-review, python, status-active, type-app, voice-assistant
MVP сервиса, в котором пользователь из интерфейса 1С задает вопрос голосом или текстом, backend распознает речь, ищет ответ по базе знаний и возвращает текстовый результат с источниками.
Voice1CAssistantBackend- FastAPI backend, retrieval, ingestion, PostgreSQL/pgvector, ASRVoice1CAssistantWebUI- web UI-эмулятор интерфейса 1Сstart-project.ps1- единая точка запуска всего проекта
Откройте PowerShell в корне репозитория и выполните:
cd C:\Users\FossW\PycharmProjects\1С.ВКР
.\start-project.ps1Скрипт сам определяет режим запуска:
- если Docker установлен и daemon запущен, поднимает весь стек через
docker compose - если Docker не установлен или выключен, запускает backend и web UI локально
- после старта автоматически открывает браузер:
http://localhost:8001- UI для тестированияhttp://localhost:8000/docs- Swagger backend
Локальный режим нужен как fallback, если Docker недоступен.
- storage:
memory - embeddings:
hash - ASR:
auto
Это значит:
- текстовые запросы работают сразу
- голосовые запросы тоже работают, если
faster-whisperсмог инициализироваться - если модель еще не скачана, первый запуск может занять больше времени
Если нужен гарантированный demo-режим без реального распознавания речи:
.\start-project.ps1 -MockAsrВ этом режиме аудио отправляется как обычно, но backend использует mock ASR. Для удобства можно предварительно ввести текст вопроса в поле UI: он уйдет как transcript_override.
.\start-project.ps1 -ForceLocal
.\start-project.ps1 -MockAsr
.\start-project.ps1 -NoBrowser-ForceLocal- не использовать Docker даже если он доступен-MockAsr- включить mock вместо реального распознавания речи-NoBrowser- не открывать браузер автоматически
После запуска должны быть доступны:
http://localhost:8001- основной интерфейсhttp://localhost:8000/health- health backendhttp://localhost:8000/docs- Swagger
В UI:
- Откройте страницу
http://localhost:8001 - Нажмите одну из готовых кнопок с примерами или введите свой вопрос
- Для текстового сценария нажмите
Отправить запрос - Для голосового сценария разрешите доступ к микрофону, нажмите
Начать запись, произнесите вопрос и нажмитеОстановить
Текстом или голосом можно использовать такие фразы:
Как закрыть смену кассира?Что делать, если смена кассира не закрывается?Как оформить возврат покупателя?Можно ли сделать возврат без документа-основания?Как провести счет от поставщика?Почему счет от поставщика не проводится?Как выполнить сверку остатков на складе?Что делать, если фактический остаток меньше учетного?
Ожидаемые темы ответов:
- смена кассира - закрытие розничной смены, проверка чеков, журнал ошибок
- возврат покупателя - документ
Возврат от покупателя - счет поставщика - раздел закупок, договор, проведение документа
- склад - сверка остатков, списание или оприходование
Смотрите на индикатор в UI:
Микрофон: faster-whisper- используется реальный ASRМикрофон: mock ASR- используется эмуляция
Также backend health отдает текущий режим.
Если запуск был через Docker:
cd C:\Users\FossW\PycharmProjects\1С.ВКР\Voice1CAssistantBackend
docker compose downЕсли запуск был локальный:
- закройте два открытых окна PowerShell с
uvicorn
- backend: Voice1CAssistantBackend/README.md
- web UI: Voice1CAssistantWebUI/README.md