This media is not supported in your browser
VIEW IN TELEGRAM
Самый ожидаемый модуль по техникам оптимизации в машинном обучении наконец вышел.
В нем разобраны базовые вещи:
варианты SGD
выпуклые и невыпуклые задачи
Momentum и ускорение Нестерова
Adam, RMSprop
ландшафты функции потерь
регуляризация
Batch Normalization
метод Ньютона и множители Лагранжа
Читать здесь — https://www.tensortonic.com/ml-math
👉 @DataSciencegx
В нем разобраны базовые вещи:
варианты SGD
выпуклые и невыпуклые задачи
Momentum и ускорение Нестерова
Adam, RMSprop
ландшафты функции потерь
регуляризация
Batch Normalization
метод Ньютона и множители Лагранжа
Читать здесь — https://www.tensortonic.com/ml-math
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8😁1
12 новых продвинутых типов RAG
▪️ Mindscape-Aware RAG (MiA-RAG)
▪️ Многошаговый RAG с памятью на основе гиперграфов
▪️ QuCo-RAG
▪️ HiFi-RAG
▪️ Двунаправленный RAG
▪️ TV-RAG
▪️ MegaRAG
▪️ AffordanceRAG
▪️ Graph-O1
▪️ SignRAG
▪️ Гибридный RAG для многоязычного question answering по документам
▪️ RAGPart и RAGMask
👉 @DataSciencegx
▪️ Mindscape-Aware RAG (MiA-RAG)
▪️ Многошаговый RAG с памятью на основе гиперграфов
▪️ QuCo-RAG
▪️ HiFi-RAG
▪️ Двунаправленный RAG
▪️ TV-RAG
▪️ MegaRAG
▪️ AffordanceRAG
▪️ Graph-O1
▪️ SignRAG
▪️ Гибридный RAG для многоязычного question answering по документам
▪️ RAGPart и RAGMask
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Фраза «у меня нет GPU» официально умерла.
VS Code теперь умеет напрямую подключаться к Google Colab.
→ Бесплатная T4 GPU прямо в редакторе.
→ Файлы локально у тебя, вычисления на их стороне.
👉 @DataSciencegx
VS Code теперь умеет напрямую подключаться к Google Colab.
→ Бесплатная T4 GPU прямо в редакторе.
→ Файлы локально у тебя, вычисления на их стороне.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤30👍5😁1
This media is not supported in your browser
VIEW IN TELEGRAM
Microsoft реально перевернули игру 🤯
Они уже давно выложили в open source bitnet.cpp — фреймворк для инференса 1-битных LLM.
Он позволяет гонять модели на 100B параметров прямо на локальном CPU, без всяких GPU.
- инференс быстрее в 6.17 раза
- потребление энергии на CPU меньше на 82.2%
И да, это 100% open source.
👉 @DataSciencegx
Они уже давно выложили в open source bitnet.cpp — фреймворк для инференса 1-битных LLM.
Он позволяет гонять модели на 100B параметров прямо на локальном CPU, без всяких GPU.
- инференс быстрее в 6.17 раза
- потребление энергии на CPU меньше на 82.2%
И да, это 100% open source.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Что происходит, когда Parquet-файл становится слишком большим и его уже неудобно читать?
При записи больших датасетов в Parquet обычно получается либо один огромный файл, который медленно читается, либо приходится вручную резать данные на более мелкие файлы.
С Polars PartitionMaxSize выходные данные автоматически разбиваются на несколько Parquet-файлов по заданному лимиту размера.
Это дает:
• параллельное чтение на нескольких ядрах
• более быструю и надежную передачу данных в облачном хранилище
Полная статья: [https://bit.ly/4bjGOsc]
Запустить код: [https://bit.ly/49mswob]
👉 @DataSciencegx
При записи больших датасетов в Parquet обычно получается либо один огромный файл, который медленно читается, либо приходится вручную резать данные на более мелкие файлы.
С Polars PartitionMaxSize выходные данные автоматически разбиваются на несколько Parquet-файлов по заданному лимиту размера.
Это дает:
• параллельное чтение на нескольких ядрах
• более быструю и надежную передачу данных в облачном хранилище
Полная статья: [https://bit.ly/4bjGOsc]
Запустить код: [https://bit.ly/49mswob]
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤3
Можно делать поиск за ~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
Фокус простой: бинарный поиск + рескоринг в 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
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤5
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
А что если дать агенту задачу и пусть он крутится бесконечно? Мы собрали 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
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
16 способов ускорить обучение нейросетей
И финальное правило: профилируй код, чтобы находить и устранять bottleneck'и в производительности.
👉 @DataSciencegx
Используй эффективные оптимайзеры типа 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'и в производительности.
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
Всё крутится у тебя на компьютере, так что полный контроль, приватность и возможность экспериментировать с open-source моделями оффлайн
100% исходный код
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
Его написал Кевин Мёрфи из 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
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤2
PDF для обучения LLM? 👀
Тулкит для работы с PDF под задачи LLM.
7B VL-модель для аккуратного текста и структурирования. Выдаёт 82.4 accuracy, дешевле на GPU, тянет сложные документы и изображения, заточено под обучение. Реально меняет игру в AI-пайплайнах.
- https://github.com/allenai/olmocr
👉 @DataSciencegx
Тулкит для работы с PDF под задачи LLM.
7B VL-модель для аккуратного текста и структурирования. Выдаёт 82.4 accuracy, дешевле на GPU, тянет сложные документы и изображения, заточено под обучение. Реально меняет игру в AI-пайплайнах.
- https://github.com/allenai/olmocr
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
Это платформа с открытым исходником для сборки AI-агентов:
✓ стек Next.js + Bun + PostgreSQL + Zustand
✓ можно подключать любой AI-модель
✓ можно развернуть на своем сервере
→ [https://github.com/simstudioai/sim]
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤1
Векторные базы данных под AI-память заменили на MP4-файлы.
Memvid позволяет хранить миллионы текстовых чанков внутри одного видео и дает очень быстрый семантический поиск без какой-либо инфраструктуры баз данных.
Полностью open-source.
👉 @DataSciencegx
Memvid позволяет хранить миллионы текстовых чанков внутри одного видео и дает очень быстрый семантический поиск без какой-либо инфраструктуры баз данных.
Полностью open-source.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔8👍2😁1
Open-source чанкинг текста в RAG-пайплайнах часто считают мелкой деталью. А по факту это один из самых жирных bottleneck’ов, когда дело доходит до продакшн-масштабов.
memchunk решает эту проблему в лоб: семантические границы чанков, высокая пропускная способность, и всё это заточено под реальные продакшн-нагрузки, а не под демки.
memchunk это низкоуровневая библиотека для чанкинга на Rust, заточенная под скорость и корректность.
Она режет текст по естественным границам, не рубит предложения пополам и разгоняется до 1 TB/s за счёт SIMD, lookup-таблиц и обратного поиска.
👉 @DataSciencegx
memchunk решает эту проблему в лоб: семантические границы чанков, высокая пропускная способность, и всё это заточено под реальные продакшн-нагрузки, а не под демки.
memchunk это низкоуровневая библиотека для чанкинга на Rust, заточенная под скорость и корректность.
Она режет текст по естественным границам, не рубит предложения пополам и разгоняется до 1 TB/s за счёт SIMD, lookup-таблиц и обратного поиска.
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
Ищешь "latest ML research", а в выдаче куча релевантных работ… но за 2019 год.
Проблема в том, что similarity не понимает ограничений. Чтобы получить "год >= 2024", нужно фильтровать метаданные на уровне базы.
В ChromaDB это делается через where: сначала база фильтрует по условиям, потом ранжирует по similarity.
Полезные операторы:
• $eq и $ne — точное сравнение
• $gt, $gte, $lt, $lte — диапазоны
• $in, $nin — принадлежность множеству
• $and, $or — комбинирование условий
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
Можно гонять продакшен-уровень 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
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤3
Хочешь учить AI на реальных проектах?
В этом репозитории 29 проектов с Generative AI, Machine Learning и Deep Learning.
С полным кодом для каждого. Это прям золото: https://github.com/KalyanM45/AI-Project-Gallery
👉 @DataSciencegx
В этом репозитории 29 проектов с Generative AI, Machine Learning и Deep Learning.
С полным кодом для каждого. Это прям золото: https://github.com/KalyanM45/AI-Project-Gallery
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤2