Рабочие проекты
-
Юридическая AI‑платформа
ML / AI Engineer: поиск, бэкенд, инфраструктура
ThomasMore AI, апр - сен 2026
Поиск и LLM-ассистент по 7 млн судебных дел
Юристы ищут похожие дела и задают вопросы ассистенту, а тот отвечает со ссылками на реальные решения судов. Внешние AI-агенты подключаются к тому же поиску через MCP-сервер. Команда из двух инженеров, 19 сервисов в проде, 380 коммитов за 5 месяцев.
Построил поиск, на котором работает ассистент: он ищет и по смыслу, и по словам, а потом переранжирует найденное, всего около 100 млн векторов. Перевёл его на новую модель эмбеддингов bge‑m3 без остановки сервиса, пересчитав 44 млн фрагментов текста, и медиана ответа упала с 4,5 до 2,7 с. Поиск дела по номеру ускорил с 19,9 до 0,039 с, память сервера поиска сократил с 13,5 до 1,6 ГБ.
Python, FastAPI, Qdrant, PostgreSQL, Redis, bge-m3, MCP, Docker, GCP, Azure, Prometheus, Grafana
-
Автоматизация заявок и сбора данных
AI Automation Engineer: LLM‑конвейеры и агенты
NDA, фев 2025 - фев 2026
Клиент получает ответ за 10 секунд вместо 2 часов
Задача была разгрузить отдел продаж и людей, которые вручную собирали данные с сайтов.
Входящие заявки теперь разбирает LLM‑конвейер на n8n: понимает, что нужно клиенту, какой у него бюджет и насколько срочно, и сразу отвечает. Первое общение с клиентом больше не лежит на продажниках.
Данные с 200+ сайтов собирает агент на LangGraph и Playwright с точностью около 98,5%. Он сам планирует шаги, проверяет результат и исправляет ошибки, а кнопки и поля на странице ищет по смыслу, поэтому меньше зависит от вёрстки сайта.
Python, FastAPI, n8n, LangGraph, Playwright, PostgreSQL
-
Поиск по документам в закрытом контуре
AI Automation Engineer: RAG и инфраструктура
Intracom, янв - сен 2025
Поиск по документам компании без интернета и без видеокарты
Сотрудникам нужно было быстро находить ответы во внутренних документах, их больше 50 тыс., но отправлять данные во внешние сервисы нельзя.
Сделал поиск с ответами LLM (RAG), который целиком работает на сервере компании. Он ищет и по словам, и по смыслу и сам подхватывает новые и изменённые документы. Модель эмбеддингов запустил на обычном процессоре через ONNX Runtime, быстрее 150 мс на запрос, так что видеокарта не понадобилась.
Python, ONNX Runtime, BM25, PostgreSQL, Linux
-
Агрегатор криптобирж
Backend / ML Engineer: бэкенд и прогнозные модели
NDA, июн 2023 - май 2025
Торговля на пяти биржах через один API
Задача была торговать на Binance, Bybit, OKX, KuCoin и Gate.io из одной системы, не подстраиваясь под особенности каждой биржи.
Сделал единый формат ордера поверх всех пяти. Главное здесь не потерять и не задвоить деньги: повторная отправка не создаёт второй ордер, состояние каждого ордера сверяется с биржей, а если неясно, исполнился ли он, система останавливается, а не гадает. Суммы считаются в Decimal без ошибок округления, рыночные данные идут по WebSocket и переживают сбои бирж.
Поверх этого прогнозный слой: MLP, LSTM и Random Forest по истории цен плюс оценка новостей моделью FinBERT по 500 тыс. заголовков. Точность около 63% на шумных данных. Проект стал основой магистерской.
Python, FastAPI, asyncio, PostgreSQL, WebSocket, PyTorch, scikit-learn
Свои проекты
Вне работы делаю то, что самому интересно - от покерного бота до Python-IDE на телефоне. Если данные показывают, что идея не работает, я её закрываю, а не трачу на неё время и деньги.
-
Покерный AI
Авг 2026 - сейчас
10 млн решённых ситуаций за $31 на арендованных видеокартах
Бот для безлимитного холдема по схеме DeepStack: на каждом ходу он заново просчитывает игру, а не берёт ответ из готовой таблицы.
Написал свой решатель на CUDA и Rust и нейросети, которые оценивают позицию, чтобы не перебирать всё дерево игры. Данные для них считает конвейер на 20 арендованных видеокартах, он сам перезапускает упавшие машины. Модель соперника на LightGBM, обученная на 5,9 млн решений живых игроков, предсказывает их ходы на 7% точнее обычных таблиц частот. Больше 700 коммитов, проект продолжается.
Rust, CUDA, Python, PyTorch, LightGBM, Vast.ai
-
Киты на Solana
Май - июнь 2026
Копировать сделки китов невыгодно, и это видно по данным
Вопрос: можно ли заработать, повторяя сделки крупных игроков, китов, на Solana.
Бот месяц круглосуточно следил за китами и записывал каждую купленную ими монету и что с ней стало дальше. Из 2 592 монет 62% оказались скамом: создатель забирал деньги, чаще всего в первый же час. Модель неплохо угадывала, какая монета взлетит, но её самые уверенные ставки в 100% случаев были скамом, потому что взлетают и обваливаются одни и те же монеты.
Вывод: кит продаёт первым, а тот, кто его копирует, видит сделку на минуту позже и выходит последним. Проверка стоила $0 вместо слитого депозита.
Python, asyncio, FastAPI, SQLAlchemy, Docker
-
Бэктест Polymarket
Май 2026
Стратегия на +20% оказалась миражом
Вопрос: есть ли на Polymarket, бирже ставок на события вроде курса биткоина или выборов, стратегии, которые стабильно приносят деньги.
Первая идея, покупать ответ да у фаворитов, на истории давала +20%. Но сайт отдаёт только 10 тыс. рынков, в основном закрытых досрочно, и это искажало результат. Я обошёл ограничение и скачал все 54 тыс. рынков, и на полной истории та же стратегия ушла в минус.
Вывод: из 72 других стратегий проверку с комиссиями и проскальзыванием прошли только две, обе на криптовалютных рынках. Всё проверено на исторических данных, без реальных денег.
Python, DuckDB, Polars, scikit-learn
-
Радар для EVE Online
Окт 2026
Показывает, кто охотится в нужном районе космоса, по истории 453 тыс. пилотов
В EVE Online исследователей космоса подстерегают охотники, которые месяцами караулят одни и те же системы. Если знать их заранее, можно не попасться.
Сайт показывает, кто охотится в нужном регионе, разом проверяет всех игроков в чате системы и добавляет охотников в контакты игры через вход по аккаунту EVE. База собирается из 363 ежедневных архивов убийств, это 4 млн записей о пилотах по системам.
Python, FastAPI, SQLite, OAuth с PKCE, Caddy, GitHub Actions
-
Парсер работодателей hh.ru
Мар - апр 2026
Работодатели с hh.ru и их контакты в одной таблице
Задача: собрать компании с hh.ru по нужным отраслям и регионам и найти их контакты.
Консольная утилита берёт работодателей через официальный API hh.ru со входом по OAuth, затем браузер обходит сайты компаний, сам находит страницы контактов и достаёт почты и телефоны. Если обход прервался, он продолжается с места остановки, дубли отсекаются. Данные хранятся в SQLite, выгрузка в CSV и JSON.
Python, Playwright, BeautifulSoup, SQLite, Typer, Rich
-
ScriptFlow
Фев - мар 2026
Пишешь и запускаешь Python прямо на Android-телефоне
Задача: писать и запускать Python-скрипты, когда под рукой только телефон.
Приложение на Kotlin: редактор с подсветкой Python, открытие и сохранение файлов, запуск скрипта в фоне с выводом в консоль по ходу работы и остановка зависшего скрипта. Python работает внутри самого приложения через Chaquopy, без сервера и интернета.
Kotlin, Android SDK, Chaquopy, Material Components
-
Новости и биткоин
2023 - 2025
Новости не помогают предсказать цену, и это тоже результат
Магистерская: можно ли по новостям предсказать цену биткоина на час вперёд.
Собрал данные своими сборщиками: 56,5 тыс. часов цен и 265 тыс. новостей. Новости перевёл в векторы моделью DistilBERT и обучил три нейросети (MLP), проверяя их только на периоде после обучения, чтобы модель не подсмотрела будущее.
Вывод: новости точность не улучшили. Отрицательный результат вынес на защиту как есть, по теме вышли две статьи в научном журнале.
Python, PyTorch, Transformers, pandas, scikit-learn
-
Стеганография в картинках
Мар 2023
Текст спрятан в картинке, и глазом разницы не видно
Учебный проект: спрятать сообщение в обычной картинке так, чтобы этого не было заметно.
Приложение записывает биты текста в самый младший бит красного, зелёного и синего каналов каждого пикселя, поэтому цвет меняется максимум на 1 из 256. Начало и конец сообщения помечены маркером: по нему программа понимает, есть ли в картинке текст, и достаёт его обратно без мусора.
C#, .NET Framework, WinForms, System.Drawing
-
Сайт автосервиса
Дек 2022
Онлайн-запись в автосервис с личным кабинетом и админкой
Учебный проект: сайт, где клиент регистрируется, записывается на услугу или заказывает запчасти, а администратор из своей панели управляет услугами, материалами, клиентами и заказами. Доступ разделён по ролям, данные хранятся в MySQL.
C#, ASP.NET Core, Blazor Server, MySQL, Bootstrap
Как я работаю
Сначала замер, потом вывод
Падение скорости в 5 раз разобрал через 13 гипотез. Виноват оказался пакет без зафиксированной версии, а не то, что все подозревали.
Прод должен быть виден
Мониторинг с нуля на Prometheus и Grafana, около 30 таргетов, алерты в Telegram. Деплой с проверкой здоровья и автооткатом.
LLM только там, где она эффективна
Классификатор вида спора на TF-IDF и LinearSVC угадывает 97,4% дел против 92,5% у LLM, на внешнем тесте 99,2%, и стоит в разы дешевле. LLM осталась там, где без неё никак.
ИИ пишет код, за прод отвечаю я
Не стыжусь использовать ИИ, он сильно ускоряет разработку. Люди заметили, что часть документов не докачивается, а два дефекта, из-за которых данные терялись без единой ошибки в логах, исправил с помощью LLM. Докачали около 600 тыс. документов.