/ Модель

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

Контекст
514 токенов
Параметры
435 млн
Лицензия
Apache 2.0
Архитектура
roberta · dense
Базовая модель
roberta-large
Библиотека
transformers
Опубликована
14 мар 2026

korean-neural-sparse-encoder-base-klue-large

Заполнение пропусковТекст → текст4 профессии

Дообученный на корейских поисковых данных RoBERTa-энкодер создаёт разреженные представления для семантического поиска с расширением ключевых слов.

166скачиваний за 30 дней0лайковвеса обновлены14 мар 2026

Бенчмарки

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

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

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

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

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

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

Корейский энкодер для нейронного разреженного поиска, разработанный на основе klue/roberta-large и дообученный методом SPLADE-max. Модель преобразует запросы и документы на корейском языке в разреженные лексические представления с расширением ключевых слов, которые можно использовать для поиска через neural_sparse-запросы OpenSearch.

Модель основана на архитектуре RoBERTa с головой masked language modeling; в README указаны 337 млн параметров, 24 слоя и размер скрытого состояния 1024. Она обучалась и оценивалась на Ko-StrategyQA, MIRACL-ko и Mr.TyDi-ko. В этих тестах показаны более высокие значения Recall@1, чем у BM25 и указанной в карточке модели V33-base.

Для использования нужны Transformers и PyTorch либо OpenSearch с поддержкой neural_sparse. Лицензия — Apache-2.0. Метаданные каталога указывают 435,4 млн параметров и контекст до 514 токенов; это расходится с размером модели в README.

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

  • Поиск корейских документов по коротким запросам
  • Семантический поиск в OpenSearch через neural_sparse
  • Расширение поисковых запросов корейскими терминами
  • Построение разреженного индекса для корейского корпуса

Ограничения

Модель предназначена для корейского языка и поискового ранжирования; заявленные результаты относятся к трём бенчмаркам, поэтому качество на других корпусах может отличаться. README указывает 337 млн параметров, тогда как метаданные — 435,4 млн.

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

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

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

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

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

Открыть на Hugging Face

Korean Neural Sparse Encoder (klue/roberta-large)

A Korean sparse retrieval model trained with SPLADE-max on klue/roberta-large (337M params).

This model generates sparse lexical representations for Korean text, enabling efficient keyword-expanded retrieval via OpenSearch neural_sparse queries.

Model Details

PropertyValue
Base Modelklue/roberta-large
Parameters337M (24 layers, 1024 hidden, 32K vocab)
Training MethodSPLADE-max (log(1+ReLU) + max pooling)
LossInfoNCE + FLOPS regularization
Training Data4.84M Korean triplets (46 shards)
Epochs25
Effective Batch Size2048 (128/GPU x 2 grad_accum x 8 GPUs)
Hardware8x NVIDIA B200 (183GB VRAM)
Training Time13.4 hours

Benchmark Results (Recall@1)

BenchmarkQueriesBM25V33-base (149M)This Model (337M)Delta vs V33
Ko-StrategyQA59253.7%62.2%64.2%+2.0pp
MIRACL-ko21344.1%61.0%70.4%+9.4pp
Mr.TyDi-ko42155.6%72.7%76.2%+3.6pp

Full Metrics

BenchmarkR@1R@5R@10MRR@10nz_qnz_d
Ko-StrategyQA64.2%82.4%85.3%72.1%3771
MIRACL-ko70.4%89.7%96.2%79.1%3577
Mr.TyDi-ko76.2%92.6%96.0%83.4%3575

Usage

With Transformers (PyTorch)

import torch
from transformers import AutoModelForMaskedLM, AutoTokenizer

model_name = "sewoong/korean-neural-sparse-encoder-base-klue-large"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForMaskedLM.from_pretrained(model_name)
model.eval()

text = "서울 맛집 추천해주세요"
inputs = tokenizer(text, return_tensors="pt", max_length=256, truncation=True, padding=True)

with torch.no_grad():
    logits = model(**inputs).logits
    sparse = torch.log1p(torch.relu(logits))
    mask = inputs["attention_mask"].unsqueeze(-1).float()
    sparse_vec = (sparse * mask).max(dim=1).values.squeeze()

# Top activated tokens
top_indices = torch.nonzero(sparse_vec).squeeze()
top_values = sparse_vec[top_indices]
sorted_idx = top_values.argsort(descending=True)

for idx in sorted_idx[:20]:
    token_id = top_indices[idx].item()
    weight = top_values[idx].item()
    token = tokenizer.decode([token_id])
    print(f"  {token}: {weight:.3f}")

With OpenSearch

PUT /my-index
{
  "settings": {
    "index": {
      "default_pipeline": "sparse-pipeline"
    }
  },
  "mappings": {
    "properties": {
      "text": { "type": "text" },
      "sparse_embedding": { "type": "rank_features" }
    }
  }
}

Training Configuration

model:
  name: "klue/roberta-large"
  dropout: 0.1
loss:
  lambda_q: 0.01
  lambda_d: 0.003
  temperature: 1.0
  flops_warmup_steps: 20000
  lambda_initial_ratio: 0.1
data:
  batch_size: 128
  query_max_length: 64
  doc_max_length: 256
training:
  num_epochs: 25
  learning_rate: 5.0e-5
  weight_decay: 0.01
  warmup_ratio: 0.06
  gradient_accumulation_steps: 2

Related Models

License

Apache License 2.0

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

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

GPU в ailist

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

Можно запустить

Подбираем GPU…

Класс архитектуры
RobertaForMaskedLM
Ревизия весов
ffc81cc

0 моделей