Data Portal | DS & ML
8.72K subscribers
228 photos
79 videos
4 files
300 links
Всё самое интересное из мира Data Science и машинного обучения

Связь: @devmangx
Download Telegram
Можно делать поиск за ~200 мс по 40 миллионам текстов, используя только CPU-сервер, 8 ГБ RAM и 45 ГБ диска.
Фокус простой: бинарный поиск + рескоринг в int8.

Если хочешь сразу пощупать руками, есть демо по 40 млн текстов из Wikipedia. Без логина и прочих заморочек.

Стратегия инференса такая:

Эмбедим запрос dense-моделью в обычный fp32-вектор

Квантуем fp32-эмбеддинг в бинарный формат, он в 32 раза меньше

Через приблизительный или точный бинарный индекс вытаскиваем, например, 40 документов (примерно в 20 раз быстрее, чем fp32-индекс)

С диска подгружаем int8-эмбеддинги для этих топ-40 документов

Делаем рескоринг: fp32-эмбеддинг запроса × 40 int8-эмбеддингов

Сортируем эти 40 документов по новым скором, берём топ-10

Загружаем заголовки и тексты топ-10 документов

Документы эмбедятся один раз, и дальше эти эмбеддинги используются сразу в двух представлениях:

- бинарный индекс (я использовал IndexBinaryFlat для точного поиска и IndexBinaryIVF для приближённого)
- int8-view, то есть способ быстро читать int8-эмбеддинги с диска по ID документа

В итоге вместо fp32-эмбеддингов ты хранишь:

- бинарный индекс (в 32 раза меньше)
- int8-эмбеддинги (в 4 раза меньше)

Плюс в памяти держится только бинарный индекс, так что по RAM экономия тоже x32 по сравнению с fp32-поиском.
Для сравнения: обычный fp32-ретривал на такой задаче потребовал бы около 180 ГБ RAM, 180 ГБ диска под эмбеддинги и был бы в 20–25 раз медленнее.

Бинарный ретривал с int8-рескорингом укладывается примерно в 6 ГБ RAM и ~45 ГБ диска под эмбеддинги.
Если загружать, скажем, в 4 раза больше документов через бинарный индекс и потом рескорить их в int8, можно вернуть около 99% качества fp32-поиска (против ~97% у чисто бинарного поиска): https://huggingface.co/blog/embedding-quantization#scalar-int8-rescoring

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥65
Ralph Mode для Deep Agents

А что если дать агенту задачу и пусть он крутится бесконечно? Мы собрали Ralph Mode на базе Deep Agents именно для такого эксперимента.

Ralph Mode гоняет агента по циклу, каждый проход с чистым контекстом, а файловая система используется как память. Запустил, отошел, а потом остановил Ctrl+C когда хватит (или заранее поставил лимиты).

В этом видео показывают как прогнать Ralph Mode вместе с Deep Agents и автоматически собрать целый Python-курс.

Video: https://youtube.com/watch?v=yi4XNKcUS8Q
Repo: https://github.com/langchain-ai/deepagents/tree/ralph-mode-example/examples/ralph_mode

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
1
16 способов ускорить обучение нейросетей

Используй эффективные оптимайзеры типа AdamW, Adam и т.п.

Гони на аппаратные ускорители (GPU/TPU).

Раздуй batch size по максимуму.

Подключай Momentum.

Пробуй Bayesian Optimization если пространство гиперпараметров большое.

Выставляй max_workers в DataLoader.

Включай pin_memory в DataLoader.

Обучай в mixed precision.

Применяй инициализацию He или Xavier для более быстрой сходимости (обычно помогает).

Используй activation checkpointing чтобы экономить память (время выполнения вырастет).

Включай multi-GPU обучение через Model/Data/Pipeline/Tensor параллелизм.

Для крупных моделей бери DeepSpeed, FSDP, YaFSDP и т.п.

Нормализуй данные уже после загрузки на GPU (актуально для целочисленных данных вроде пикселей).

Применяй gradient accumulation (иногда даёт небольшой плюс).

Всегда используй DistributedDataParallel вместо DataParallel.

torch.rand(2,2, device=...) создаёт тензор сразу на GPU.

torch.rand(2,2).cuda() сначала создаёт на CPU, а потом гонит на GPU.


И финальное правило: профилируй код, чтобы находить и устранять bottleneck'и в производительности.

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Интересная штука: десктопное приложение, которое позволяет гонять AI-модели локально на своей машине. Без API-ключей. Без облака. Ничего никуда не уходит.

Всё крутится у тебя на компьютере, так что полный контроль, приватность и возможность экспериментировать с open-source моделями оффлайн

100% исходный код
🐶

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
2🤔1
Самый полный обзор по RL, который я видел.

Его написал Кевин Мёрфи из Google DeepMind, у которого больше 128k цитирований.

Чем это отличается от других материалов по RL:

→ Есть мост между классическим RL и текущей эпохой LLM:

Отдельная глава про LLM и RL, где разобрано:

RLHF, RLAIF и reward modeling
PPO, GRPO, DPO, RLOO, REINFORCE++
Обучение reasoning-моделей
Multi-turn RL для агентов

Масштабирование вычислений на inference (test-time compute scaling)

→ База объяснена очень чётко

Все основные алгоритмы вроде value-based методов, policy gradients и actor-critic разобраны с математической строгостью.

→ Model-based RL и world models тоже раскрыты нормально

Есть Dreamer, MuZero, MCTS и дальше по списку — именно туда сейчас движется область.

→ Раздел про multi-agent RL

Теория игр, равновесие Нэша и MARL для LLM-агентов.

https://arxiv.org/pdf/2412.05265

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥52
PDF для обучения LLM? 👀

Тулкит для работы с PDF под задачи LLM.

7B VL-модель для аккуратного текста и структурирования. Выдаёт 82.4 accuracy, дешевле на GPU, тянет сложные документы и изображения, заточено под обучение. Реально меняет игру в AI-пайплайнах.

- https://github.com/allenai/olmocr

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
2
This media is not supported in your browser
VIEW IN TELEGRAM
Все обсуждают n8n, но стоит присмотреться к Sim.

Это платформа с открытым исходником для сборки AI-агентов:

✓ стек Next.js + Bun + PostgreSQL + Zustand
✓ можно подключать любой AI-модель
✓ можно развернуть на своем сервере

→ [https://github.com/simstudioai/sim]

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
👍51
Векторные базы данных под AI-память заменили на MP4-файлы.

Memvid позволяет хранить миллионы текстовых чанков внутри одного видео и дает очень быстрый семантический поиск без какой-либо инфраструктуры баз данных.

Полностью open-source.

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔8👍2😁1
30 терминов из области агентного ИИ, которые должны знать инженеры-разработчики ИИ:

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
Open-source чанкинг текста в RAG-пайплайнах часто считают мелкой деталью. А по факту это один из самых жирных bottleneck’ов, когда дело доходит до продакшн-масштабов.

memchunk решает эту проблему в лоб: семантические границы чанков, высокая пропускная способность, и всё это заточено под реальные продакшн-нагрузки, а не под демки.

memchunk это низкоуровневая библиотека для чанкинга на Rust, заточенная под скорость и корректность.

Она режет текст по естественным границам, не рубит предложения пополам и разгоняется до 1 TB/s за счёт SIMD, lookup-таблиц и обратного поиска.

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
5
Бывало, что семантический поиск вроде бы попадает в тему, но не в твои требования?

Ищешь "latest ML research", а в выдаче куча релевантных работ… но за 2019 год.

Проблема в том, что similarity не понимает ограничений. Чтобы получить "год >= 2024", нужно фильтровать метаданные на уровне базы.

В ChromaDB это делается через where: сначала база фильтрует по условиям, потом ранжирует по similarity.

Полезные операторы:
• $eq и $ne — точное сравнение
• $gt, $gte, $lt, $lte — диапазоны
• $in, $nin — принадлежность множеству
• $and, $or — комбинирование условий

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
2
Совет для AI-инженеров

Можно гонять продакшен-уровень LLM-инференса на CPU ноутбука или даже на телефоне.

Без облачных счетов. Без API-ключей. Без интернета.

LFM2.5-1.2B-Instruct от liquidai дает:

239 токенов/с на AMD CPU
82 токена/с на мобильном NPU
меньше 1 ГБ RAM

Лови ссылку ↓

https://huggingface.co/LiquidAI/LFM2.5-1.2B-Instruct

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥103
Хочешь учить AI на реальных проектах?
В этом репозитории 29 проектов с Generative AI, Machine Learning и Deep Learning.

С полным кодом для каждого. Это прям золото: https://github.com/KalyanM45/AI-Project-Gallery

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42
This media is not supported in your browser
VIEW IN TELEGRAM
Теорема Стокса это классика векторного анализа.

По сути она говорит что линейный интеграл векторного поля по замкнутому контуру равен поверхностному интегралу ротора этого поля по поверхности которая этим контуром ограничена.

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Media is too big
VIEW IN TELEGRAM
Разработчик сравнил топовые опенсорсные OCR-решения и выяснил какое реально показывает лучший результат.

В подборке:

DeepSeek OCR
Datalab Chandra
Qwen3-VL
Dots OCR
Granite Docling

Параллельно сделал приложение где можно прогонять все эти OCR-модели в одном месте.

Всё на 100% опенсорс.

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
1
This media is not supported in your browser
VIEW IN TELEGRAM
Марко Франзон показал обновление по своей CV-платформе: YOLO Training Template

Ручная разметка данных стала заметно удобнее. Теперь процесс выглядит как в привычных labeling-системах — просто обводишь объект рамкой и сразу создаётся bounding box.

Платформа позволяет:

• загрузить свой датасет
• разметить вручную или автолейблить через DINOv3
• по желанию обогатить данные
• обучить YOLO-модель на собственных данных
• тут же прогнать инференс
• экспортировать в ONNX или NCNN, что даёт совместимость с edge-железом и смартфонами

Всё это доступно бесплатно и уже можно попробовать на GitHub.
9
This media is not supported in your browser
VIEW IN TELEGRAM
Сегодня OpenAI анонсирует Open Responses: open-source спецификацию для сборки мультипровайдерных, интероперабельных интерфейсов к LLM, построенную поверх оригинального OpenAI Responses API.

Мультипровайдерность по умолчанию
Полезно для реальных продовых воркфлоу
Расширяемо без фрагментации

Стройте агентные системы без переписывания всего стека под каждую модель: [https://openresponses.org]

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
1
This media is not supported in your browser
VIEW IN TELEGRAM
NN-SVG: рисуйте архитектуры нейросетей параметрически

Экспортируйте их в SVG и используйте в своих материалах

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍4
Найти строки с min/max по другому столбцу в одну строку в Polars v1.37.0

Раньше, чтобы вытащить строку с минимальным или максимальным значением относительно другого столбца, обычно приходилось делать сортировку, groupby или городить фильтры посложнее.

В Polars v1.37.0 завезли методы выражений min_by и max_by. Они находят минимум или максимум по любому столбцу одним понятным выражением.

Обновиться и получить min_by/max_by:
pip install -U polars

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
4
Офлайн-распознавание текста с помощью DeepSeek-OCR AI : https://github.com/th1nhhdk/local_ai_ocr

👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
4