Skip to content

Latest commit

 

History

History
44 lines (28 loc) · 1.9 KB

File metadata and controls

44 lines (28 loc) · 1.9 KB

О Проекте

Асинхронный бот, который переводит запросы естественного языка в SQL для базы данных

Стек: aiohttp, asyncio, aiogram, sqlalchemy, alembic, pydantic, docker

Цель проекта

  • Развернуть базу данных и проект в Docker
  • Загрузить предоставленный JSON-файл в базу, разложив его на нормальные таблицы.
  • Реализовать асинхронного Telegram-бота, который принимает текстовые сообщения от пользователя бота на русском (естественный язык), передает это в ИИ, получает текст SQL запроса и по нему делает запрос в базу данных. Ответ возвращается пользователю в Telegram.

Развёртывание проекта

Проект работает с версией Python 3.11

  1. Склонировать репозиторий: git clone git@github.com:Demiat/quest_to_sql.git

  2. Создать и заполнить файл .env: DB_NAME=...
    DB_USER=...
    DB_PASSWORD=...
    DB_HOST=...
    DB_PORT=5432. DB_ECHO=True или False.

COMMTOBOT_TOKEN=<Токен Вашего Бота>
SBER_AUTH_TOKEN=<Токен от СБЕРА>
RqUID=<уникальный идентификатор запроса для СБЕРА>


Ключ авторизации SBER_AUTH_TOKEN получается в личном кабинете Gigachat API и передается в запросе на получение Access token

  1. Запустить: docker compose up --build

  2. Загрузить фикстуры в базу: docker exec -i qts-back python -m database.loader

Автор: Тарасов Дмитрий