О чём урок
Когда вы говорите в микрофон, этот агент расшифровывает вашу речь, проверяет сказанное вами по источнику истины и сообщает свои выводы.
Этот проект использует сервер Python для логики и доступа к LLM, а также небольшой веб-интерфейс для захвата ввода с микрофона и отображения результатов. Следуйте инструкциям здесь, чтобы создать необходимые файлы — или посетите репозиторий GitHub, если это проще.
- При запуске сервер генерирует эмбеддинги для каждого факта в источнике истины.
- Веб-приложение использует AudioWorklet для чтения аудио с микрофона и передает его на ваш сервер через WebSocket.
- Сервер перенаправляет аудио в модель транскрипции в реальном времени и отслеживает транскрипцию на предмет полных предложений.
- Каждое предложение проверяется на наличие фактического утверждения. Если таковое имеется, это утверждение встраивается и сопоставляется с эмбеддингами для источника истины.
- Если найдено достаточно близкое совпадение, LLM оценивает утверждение по нему и возвращает вердикт плюс его обоснование, которое отправляется обратно в браузер и отображается в виде карточки.
Чтобы сосредоточиться на аудио-техниках, этот проект использует минималистичный процесс RAG для сравнения утверждений с фактами. Для решения, разработанного для реальных данных в масштабе, ознакомьтесь с Search Toolkit, который обрабатывает прием, разбиение на чанки и извлечение для коллекций документов.
Для выполнения этого руководства вам потребуется: - Python 3.12 или новее - uv или ваш любимый менеджер пакетов - Ключ Mistral API - Браузер с доступом к микрофону
Вы можете установить пакеты Python глобально с помощью pip. Но лучшая практика — устанавливать их только для этого проекта. Для этого создайте проект с помощью uv и добавьте необходимые пакеты:
Это создает файл pyproject.toml, перечисляющий эти зависимости, и файл uv.lock, фиксирующий их точные версии. Любая команда uv run автоматически синхронизирует ваше окружение. Или синхронизируйте его самостоятельно:
Фронтенд для этого проекта использует чистый, простой JavaScript. Никаких процессов сборки или пакетов не требуется!
Для выполнения этого руководства вам понадобится ключ Mistral API.
Создайте файл .env в корне вашего проекта и добавьте ваш…
План урока
- Как это работает
- Предварительные условия
- Настройка окружения
- Установка
- Требуемые переменные окружения
- Создайте сервер
- Определите константы
- Генерация эмбеддингов для фактов в источнике истины
Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.