/ Модель

Характеристики

Контекст
514 токенов
Параметры
152 млн
Архитектура
icebert-pos · dense
Библиотека
transformers
Опубликована
4 июн 2025

IceBERT-PoS

Разметка токеновТекст → label3 профессии

Модель Miðeind размечает части речи и грамматические атрибуты слов в исландском тексте, включая выдачу меток в формате IFD.

119скачиваний за 30 дней1лайквеса обновлены13 мая 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

mideind/IceBERT-PoS — модель Miðeind для разметки частей речи и атрибутов слов в исландском языке. Она принимает предварительно токенизированные списки слов и возвращает для них структурированные метки; также поддерживается формат IFD (Icelandic Frequency Dictionary), в том числе для оценки на MIM-GOLD и совместимости с традиционными исландскими POS-теггерами. Для предсказаний доступны методы подготовки входов и обработки батча.

Модель основана на архитектуре IceBertPosForTokenClassification, содержит около 151,6 млн параметров и принимает последовательности длиной до 514 токенов. В метаданных указана библиотека Transformers и формат весов safetensors. Для контроля токенизации подаются списки слов, а очень длинные последовательности могут вызвать ошибку; усечение по умолчанию отключено. Лицензия в предоставленных данных не указана.

Сценарии применения

  • разметка частей речи в исландских предложениях
  • извлечение грамматических атрибутов исландских слов
  • подготовка разметки для оценки на MIM-GOLD
  • совместимость с инструментами, использующими формат IFD
  • получение токенных признаков исландского текста

Ограничения

На вход нужно подавать предварительно токенизированные списки слов; очень длинные последовательности вызывают ошибку, если не включить усечение. README не сообщает лицензию.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Prediction Methods

The model provides several prediction methods:

  • prepare_inputs(words, tokenizer, truncate=False): Prepares inputs for a single list of words, returning tensors without batch dimension.
  • predict_labels(input_ids, attention_mask, word_mask): Low-level prediction from prepared tensors with batch dimension.
  • predict_labels_from_text(sentences, tokenizer, truncate=False): Returns structured predictions as (category, [attributes]) tuples from word lists. These can be slightly more readable and more suitable for some applications.
  • predict_ifd_labels_from_text(sentences, tokenizer, truncate=False): Returns predictions in IFD (Icelandic Frequency Dictionary) format from word lists. Use this for evaluation against MIM-GOLD datasets or when you need compatibility with traditional Icelandic POS taggers.

All methods accept pre-tokenized word lists rather than raw sentences for better control over tokenization.

from transformers import AutoModel, AutoTokenizer

model = AutoModel.from_pretrained("mideind/IceBERT-PoS", trust_remote_code=True)
tokenizer = AutoTokenizer.from_pretrained("mideind/IceBERT-PoS")

# Example sentence
sentence = "Ég veit að þú kemur í kvöld til mín ."
sentence_words = sentence.split()

# Get predictions in (category, [attributes]) format
result = model.predict_labels_from_text([sentence_words], tokenizer)
expected = [
    [
        ("fp", ["1", "sing", "nom"]),
        ("sf", ["sing", "act", "1", "pres"]),
        ("c", []),
        ("fp", ["2", "sing", "nom"]),
        ("sf", ["sing", "act", "2", "pres"]),
        ("af", []),
        ("n", ["neut", "sing", "acc"]),
        ("af", []),
        ("fp", ["1", "sing", "gen"]),
        ("pl", []),
    ]
]
assert result == expected, f"Expected {expected}, but got {result}"
print("Test passed successfully!")

# Get predictions in IFD format (for MIM-GOLD evaluation)
ifd_result = model.predict_ifd_labels_from_text([sentence_words], tokenizer)
ifd_expected = [
    ["fp1en", "sfg1en", "c", "fp2en", "sfg2en", "af", "nheo", "af", "fp1ee", "pl"]
]
assert ifd_result == ifd_expected, f"Expected {ifd_expected}, but got {ifd_result}"
print("IFD conversion test passed successfully!")

# Alternative: use prepare_inputs for single sentence prediction
input_ids, attention_mask, word_mask = model.prepare_inputs(sentence_words, tokenizer)
single_result = model.predict_labels(input_ids.unsqueeze(0), attention_mask.unsqueeze(0), word_mask.unsqueeze(0))
assert single_result == expected, f"Expected {expected}, but got {single_result}"
print("Single sentence prediction test passed successfully!")

Handling Long Sequences with Truncation

By default, truncate=False to avoid hard-to-debug issues where input is silently truncated. However, very long sequences will cause errors:

from transformers import AutoModel, AutoTokenizer

model = AutoModel.from_pretrained("mideind/IceBERT-PoS", trust_remote_code=True)
tokenizer = AutoTokenizer.from_pretrained("mideind/IceBERT-PoS")

# Create a very long sentence that exceeds model limits
words = ["Þetta", "er", "mjög", "löng", "setning"] * 200  # Very long sentence
print(f"Input length: {len(words)} words")

# This will crash due to sequence length exceeding model limits
try:
    result = model.predict_labels_from_text([words], tokenizer, truncate=False)
    print("This shouldn't print - sequence was too long!")
except Exception as e:
    print(f"Error as expected: {type(e).__name__}")

# Use truncate=True for long sequences
result_truncated = model.predict_labels_from_text([words], tokenizer, truncate=True)
print(f"Truncated result length: {len(result_truncated[0])} tokens")
print("Warning: Output length differs from input length due to truncation!")

# When using truncation, you must handle the length mismatch carefully
# The output will have fewer predictions than input words
assert len(result_truncated[0]) < len(words), "Truncation should reduce length"
print("Truncation example completed successfully!")

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers · token-classification

Нельзя запустить

Модели нужен код из репозитория; автор пока не в списке доверенных организаций.

Класс архитектуры
IceBertPosForTokenClassification
Ревизия весов
9f03d61

0 моделей