image image image image
Проект выполнен как полнофункциональный AI-помощник для анализа данных на естественном языке. Система предназначена для пользователей, которым нужно анализировать данные без ручного написания SQL-запросов и Python-кода. Пользователь загружает CSV-файлы, задаёт вопрос в чате, а агент сам определяет нужные действия: обращается к базе данных, выполняет read-only SQL-запросы, строит визуализации и формирует итоговый ответ. В основе проекта — агент на LangGraph с инструментами для SQL-аналитики и генерации Python-кода. Реализована динамическая схема БД: агент видит новые CSV-файлы без перезапуска сервиса. Чтобы не перегружать контекст LLM, результаты SQL сохраняются в CSV, а модель получает только путь к файлу и превью первых строк. Добавлена суммаризация длинных диалогов для сохранения контекста при превышении лимита сообщений. Также реализованы cookie-based аутентификация, изоляция данных между пользователями и Docker-песочница для безопасного выполнения Python-кода. Проект развёрнут через Docker Compose: PostgreSQL, FastAPI backend, nginx + React frontend и отдельный Python sandbox. Результат: готовый full-stack прототип AI-аналитика, который позволяет работать с данными через обычный чат. Технологии: Python, FastAPI, LangGraph, LangChain, PostgreSQL, SQLAlchemy, React, Docker, nginx.
https://github.com/ChernyackovEugeny/LLM_Data_Analyst_Agent