# GLiNER2.5 Small для MLX: извлечение сущностей и классификация на Mac

Источник: https://modelium.tech/zhurnal/gliner25-small-mlx-ner-classification-mac/

30 сентября 2026 года nativ-community опубликовала MLX-конверсию английской GLiNER2.5 Small для Apple Silicon. В репозитории есть полный Safetensors-чекпойнт, индекс и токенизатор; это перенос уже существующей модели Fastino, а не новая обученная модель. Публичный код MLX-VLM поддерживает извлечение именованных сущностей и классификацию текста, но не переносит извлечение отношений и структурированных записей. Автор сообщает о совпадении результатов до и после конверсии на нескольких примерах; независимых замеров скорости и качества этой сборки у Modelium нет.

GLiNER2.5 Small для MLX: извлечение сущностей и классификация на Mac

30 сентября 2026 года в Hugging Face появился пакет `nativ-community/gliner2.5-small-v1`. Автор указывает исходную ревизию `fastino/gliner2.5-small-v1` и конверсию в формат MLX-VLM без квантизации. **Это новый способ локально запускать уже существующую английскую модель на Apple Silicon, а не новая базовая модель.** Исходный чекпойнт Fastino опубликован ранее. [s1](#src-s1) [s2](#src-s2)

## Что доступно

В закреплённой ревизии находятся `model.safetensors`, `model.safetensors.index.json`, конфигурация и файлы токенизатора. Индекс ссылается на единственный Safetensors-файл и перечисляет 274 тензора. Файл весов занимает 286 955 534 байта на диске: это **не требование к оперативной или видеопамяти**. Метаданные репозитория и исходной модели указывают Apache-2.0; код MLX-VLM распространяется отдельно под MIT. Публикация весов, открытость кода и право коммерческого использования не следует смешивать: для использования соблюдайте условия лицензий соответствующих компонентов. [s1](#src-s1) [s2](#src-s2) [s3](#src-s3) [s4](#src-s4)

Практическая задача — извлечь из входящего письма имена людей, компаний и мест с позициями в тексте, а затем классифицировать сообщение по заданным меткам. Это локальный путь для обработки чувствительных текстов без отправки запроса в облачный сервис, но безопасность конкретного приложения зависит и от остальной инфраструктуры. Исходная карточка описывает модель как английскую; точность на русском из неё не следует. [s1](#src-s1) [s2](#src-s2)

## Как попробовать

Для воспроизводимости используйте Apple Silicon и версию MLX-VLM с поддержкой `gliner2_5`; карточка конверсии закрепляет коммит `589c5ec0efee0dd815b60eb8d961831f3ff09762`. Это коммит после опубликованного тега v0.7.4, поэтому установка только v0.7.4 не является проверкой той же версии, которую указал автор конверсии. Код порта и сигнатуры методов доступны в указанном коммите. [s1](#src-s1) [s3](#src-s3)

Установите проверенную версию командой `python3 -m pip install 'git+https://github.com/Blaizzy/mlx-vlm.git@589c5ec0efee0dd815b60eb8d961831f3ff09762'`. Затем откройте [пример в закреплённой карточке](https://huggingface.co/nativ-community/gliner2.5-small-v1/blob/6addb0c802dd142174e66aff77d48d033ded15d1/README.md): `from mlx_vlm import load`, загрузка модели через `load('nativ-community/gliner2.5-small-v1')`, вызовы `model.extract_entities(processor, text, labels, include_spans=True)` и `model.classify_text(processor, text, tasks)`.

Рецепт приведён по карточке и публичному исходному коду; редакция не заявляет собственный запуск, скорость или совпадение ответов. Перед применением в продукте проверьте качество на своих англоязычных текстах, обработку порога и смещения spans. [s1](#src-s1) [s3](#src-s3)

## Ограничения и отличие от GLiNER2.5-Decide

Изначальная GLiNER2.5 Small у Fastino также описывает извлечение отношений и структурированных записей, но текущий **MLX-порт поддерживает только извлечение сущностей и классификацию**; код прямо отвергает не реализованные пути вместо молчаливого неполного ответа. Для отношений и записей нужен другой путь запуска исходного чекпойнта. Ранее опубликованная у нас GLiNER2.5-Decide решает прежде всего задачу классификации и маршрутизации; новая Small-конверсия полезна именно тогда, когда нужны сущности и их позиции. [s2](#src-s2) [s3](#src-s3)

Автор конверсии сообщает, что на Apple Silicon все 274 загруженных тензора совпали с исходными, а три примера извлечения и два примера классификации дали одинаковые результаты до и после переноса. Это проверка сохранности конверсии на ограниченных примерах, **не независимый бенчмарк качества на датасете и не измерение производительности**. Показатели другого чекпойнта нельзя автоматически переносить на эту MLX-сборку. [s1](#src-s1)

Следующий шаг: проверьте пример на собственных англоязычных документах и сравните spans с ожидаемой разметкой; если задача состоит только в выборе категории текста, сначала сопоставьте возможности с [GLiNER2.5-Decide](/zhurnal/gliner25-decide-340m-local-cpu-classification/).

## Источники

1. [nativ-community: GLiNER2.5 Small MLX, закреплённая карточка и manifest](https://huggingface.co/nativ-community/gliner2.5-small-v1/blob/6addb0c802dd142174e66aff77d48d033ded15d1/README.md) — получено 2026-09-30
2. [Fastino: исходная GLiNER2.5 Small, закреплённая карточка](https://huggingface.co/fastino/gliner2.5-small-v1/blob/7132dc4561c3f94563c6147e75ffa8ef34c4964a/README.md) — получено 2026-09-30
3. [MLX-VLM: код и документация GLiNER2.5 по проверенному коммиту](https://github.com/Blaizzy/mlx-vlm/tree/589c5ec0efee0dd815b60eb8d961831f3ff09762/mlx_vlm/models/gliner2_5) — получено 2026-09-30
4. [MLX-VLM: MIT LICENSE по закреплённому коммиту](https://github.com/Blaizzy/mlx-vlm/blob/589c5ec0efee0dd815b60eb8d961831f3ff09762/LICENSE) — получено 2026-09-30
