Flask LLM Chat — это простое веб-приложение на Flask для общения с языковой моделью (LLM). Приложение сохраняет историю чата и использует YandexGPT API.
Перед началом убедитесь, что у вас установлены:
- Python 3.8 или выше: скачать Python
- Расширение Python в VsCode
- Git (для клонирования репозитория): скачать Git
- Аккаунт Яндекс cloud для работы с API
Откройте терминал или командную строку и выполните:
git clone https://github.com/labintsev/flask-llm.git
cd flask-llm
Чтобы не "засорять" вашу систему, создайте виртуальное окружение:
python -m venv venv
- На Windows:
venv\Scripts\activate
- На macOS или Linux:
source venv/bin/activate
Примечание: В VSCode можно создать и активировать виртуальное окружение через меню справа внизу или через командную палитру (Ctrl+Shift+P → Python: Create Environment).
В активированном виртуальном окружении выполните:
pip install -r requirements.txt
Для работы с Яндекс LLM нужен API-ключ:
- Перейдите по инструкции Яндекса.
- Скопируйте полученный ключ.
- Создайте файл
.env
в корневой папке проекта. - Добавьте туда строку:
YA_API_KEY=ваш_ключ
YA_FOLDER_ID=идентификатор_каталога
Всё готово! Запустите приложение:
python app.py
В браузере перейдите по адресу: http://127.0.0.1:5000/
- Введите текст в поле чата и отправьте.
- Ответ от LLM появится ниже.
- История сообщений сохраняется — при обновлении страницы вы увидите весь чат.
app.py
— основной файл Flask-приложенияmodels.py
— работа с базой данных и сервисом LLMtemplates/
— HTML-шаблоны (например,index.html
)static/
— статические файлы (CSS, JS, изображения)requirements.txt
— список необходимых библиотек
1. Не установлен Python
→ Проверьте команду python --version
. Если не установлен, скачайте с официального сайта.
2. Не работает pip
→ Проверьте команду pip --version
. Если не установлен, инструкция по установке pip.
3. Ошибка при запуске app.py
→ Убедитесь, что виртуальное окружение активировано и все зависимости установлены.
4. Нет файла .env или переменной YA_API_KEY
→ Проверьте, что в .env
корректно прописан ключ:
YA_API_KEY=ваш_ключ
5. Не открывается страница
→ Убедитесь, что приложение запущено, и используйте адрес http://127.0.0.1:5000/.
- Для остановки приложения нажмите
Ctrl+C
в терминале. - Для автоматической перезагрузки при изменениях используйте
app.run(debug=True)
— это уже включено вapp.py
. - Если хотите изменить системный промпт (роль ассистента), измените содержимое файла
prompts/prompt_1.txt
или в файлеmodels.py
измените путь к новому файлу:
llm_1 = LLMService('prompts/prompt_2.txt')
Проект распространяется под MIT лицензией.
Если что-то не получилось — пишите в ТГ-чат!