● UZEX AI Hackathon 2026 · отборочный тур
Спросите реестр биржи. Ответ — только из данных.
Telegram-бот отвечает на вопросы о 500 000 сделках товарно-сырьевой биржи на русском и узбекском. Каждое число в ответе взято из запроса к базе, а под ответом видно, на чём он основан.
SELECT buyer_name, COUNT(*), SUM(amount_uzs) FROM deals WHERE product='Портландцемент' GROUP BY 1 ORDER BY 3 DESC
01 / как устроен
Вопрос превращается в запрос к базе, а ответ собирается из результата
Данные
Пять таблиц реестра сведены в одну базу. Сотни написаний товаров приведены к 43 названиям, регионы — к русскому и узбекскому, доллары пересчитаны по курсу на дату сделки.
DuckDBЗапрос
Языковая модель понимает вопрос на русском или узбекском, латиницей или кириллицей, и пишет SQL-запрос к базе.
text → SQLСверка
Каждое число, дата, ИНН и название компании в ответе проверяются по результату запроса. Не сошлось — бот показывает сами данные, а не текст модели.
0 выдумокОтвет
Короткий ответ на языке вопроса, строка «Основание» с числом сделок и фильтрами и сам запрос — чтобы любой ответ можно было перепроверить.
RU / UZ02 / почему можно верить
Если ответа в данных нет, бот так и скажет
Прибыль, остатки, прогнозы, другие биржи, даты вне периода — в реестре этого нет. На такие вопросы бот не называет ни компаний, ни чисел.
Правила по умолчанию
- Статус не указан — два числа: все сделки и без аннулированных
- Сумы и доллары не складываются напрямую: пересчёт по курсу на дату сделки
- Средняя цена — средневзвешенная, отдельно для тонн, килограммов и литров
- Справочные вопросы — дословно по описанию данных
Безопасность
- База открыта только на чтение, доступ к файлам выключен
- Один SELECT на запрос, жёсткий таймаут
- Бюджет ответа 70 секунд при лимите 90
- Резервная модель, если основная недоступна
03 / как проверяли
Эталоны считали напрямую по базе, а не через бота
Каждый ответ сравнивался с результатом независимого SQL-запроса. Любая найденная ошибка становилась новым автотестом.
04 / попробуйте
Примеры вопросов
Задайте свой вопрос реестру
Без установки и регистрации. Пишите на русском или узбекском.