#typescript#codemirror#graphiql#graphql#lsp_mode#lsp_server#monaco_editor#vscode
GraphiQL is a powerful, open-source GraphQL IDE that helps you write, test, and explore GraphQL queries easily in your browser or desktop. It offers features like syntax highlighting, live error checking, and schema exploration, making it simpler to work with GraphQL APIs. The project is part of a monorepo that includes tools for different editors like CodeMirror and Monaco, providing a consistent and extensible development experience. Using this monorepo setup improves collaboration, code sharing, and maintenance across related tools, saving you time and effort when building or extending GraphQL IDEs. This means you get a reliable, efficient environment to develop GraphQL applications faster and with fewer errors.
https://github.com/graphql/graphiql
🌟 FlexTok: адаптивная 1D-токенизация изображений от Apple.
FlexTok - метод токенизации изображений, который преобразует 2D-изображения в упорядоченные 1D-последовательности переменной длины.
Его цель - сократить объем данных, необходимых для обучения генеративных моделей, и при этом оставить достаточную информацию для качественной реконструкции и генерации.
В отличие от традиционных подходов, где число токенов фиксировано и зависит только от размера изображения, FlexTok подстраивается под сложность контента: простейшая сцена может кодироваться несколькими токенами, а сложная - десятками и сотнями .
FlexTok, это по сути, пайплайн из 3 компонентов: ViT‑энкодер, квантование регистров и маскирование внимания:
ViT‑энкодер с набором «регистровых» токенов читает латентные представления VAE‑GAN и конденсирует их в 1D-последовательность до 256 регистров .
Затем, с помощью FSQ‑квантования, каждый регистр дискретизируется в код из заранее определенного словаря размером ~64 000.
На этом этапе применяется "nested dropout": во время обучения случайно обрезаются последние токены, чтобы модель научилась упорядочивать информацию от грубых форм к деталям.
Параллельно применяется авторегрессионная маска внимания: каждый токен в цепочке видит только те, что были до него, и не знает о тех, что идут после. Это заставляет модель генерировать изображения шаг за шагом, от первого токена к последнему, и упрощает ей задачу прогнозирования следующих элементов.
Декодер в FlexTok - это модель rectified flow, которая на вход берет укороченные токены и слегка зашумленные латенты VAE и учится предсказывать тот шум, который нужно убрать, чтобы вернуть исходное представление.
Чтобы обучение шло быстрее и давало более точные результаты, добавляют REPA‑Loss: он сравнивает промежуточные признаки с векторами из DINOv2‑L. Благодаря этому даже при очень жесткой компрессии (от 1 до 256 токенов), FlexTok успешно восстанавливает детали изображения.
FlexTok легко встраивается в текстово‑ориентированные модели и может улучшить соответствие изображения описанию, даже если число токенов меняется. К тому же его адаптивная токенизация применима не только к картинкам, но и к аудио или видео.
▶️Набор токенизаторов:
🟢Flextok_d12_d12_in1k - 12\12 слоев энкодер-декодер, датасет IN1K;
🟢Flextok_d18_d18_in1k - 18\18 слоев энкодер-декодер, датасет IN1K;
🟢Flextok_d18_d28_in1k - 18\28 слоев энкодер-декодер, датасет IN1K;
🟢Flextok_d18_d28_dfm - 18\28 слоев энкодер-декодер, датасет DFN.
▶️VAE:
🟠Flextok_vae_c4 - 4 каналов латента, коэффициент понижающей дискретизации 8;
🟠Flextok_vae_c8 - 8 каналов латента, коэффициент понижающей дискретизации 8;
🟠Flextok_vae_c16 - 16 каналов латента, коэффициент понижающей дискретизации 8.
🟡Страница проекта
🟡Набор на HF
🟡Arxiv
🟡Demo
🖥GitHub
@ai_machinelearning_big_data
#AI#ML#Tokenizer#Flextok#Apple
🌟Minimax VTP: гибридный токенизатор для диффузии на стероидах.
В диффузионных архитектурах считается, что масштабировать первую стадию, VAE - занятие неблагодарное.
Eго задача - превратить пиксели в латентный код и обратно, а добавление ему параметров или данных никак не помогает основной модели DiT генерировать изображения лучше.
MiniMax решила поменять правила игры и представила Visual Tokenizer Pre-training (VTP).
Их гипотеза заключается в том, что токенизатор должен не просто механически "зиповать" пиксели, а понимать семантику изображения.
Чтобы реализовать это, они объединили в обучении токенизатора сразу 3 лосса:
🟢Стандартный pixel reconstruction loss;
🟢Self-supervised learning (через Masked Image Modeling и дистилляцию, как в DINOv2);
🟢Image-text contrastive loss (как в CLIP).
Это заставило латентное пространство структурироваться семантически: теперь векторы кодировали смыслы, а не просто цветовые пятна.
🟡Теоретические выкладки подтвердились на практике.
Оказалось, что качество генерации напрямую зависит от "интеллекта" токенизатора. Не меняя архитектуру и гиперпараметры самого DiT и не увеличивая затраты на его обучение, просто за счет использования VTP-токенизатора удалось улучшить метрику FID на 65.8% и ускорить сходимость модели в 3 раза.
🟡Но главное открытие - это то, что заработал закон масштабирования для Stage 1.
Теперь, чем больше вычислительной мощности и данных вливается в претрейн токенизатора, тем качественнее становится итоговая генерация, чего раньше с обычными VAE достичь было невозможно.
🟡В открытом доступе опубликованы 3 чекпоинта VTP с различием по количеству параметров:
🟠VTP-Large - 0.7B;
🟠VTP-Base - 0.3B;
🟠VTP-Small - 0.2B.
📌Лицензирование: MIT License.
🟡Набор моделей
🟡Arxiv
🖥GitHub
@ai_machinelearning_big_data
#AI#ML#Diffusion#Tokenizer#Minimax