/ Модель

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

Контекст
512 токенов
Параметры
12 млн
Лицензия
MIT
Архитектура
bert · dense
Библиотека
transformers
Опубликована
5 фев 2026

typelevel-bert

ЭмбеддингиТекст → embedding

Компактная англоязычная BERT-модель создаёт эмбеддинги для семантического поиска по документации Typelevel и функционального программирования.

106скачиваний за 30 дней0лайковвеса обновлены5 фев 2026

Бенчмарки

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

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Эмбеддинги» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

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

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

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

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

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

Typelevel-BERT — компактная модель эмбеддингов текста на базе BERT, созданная для семантического поиска по документации экосистемы Typelevel и функционального программирования. Модель разработана djspiewak и дистиллирована из BAAI/bge-large-en-v1.5; обучалась на фрагментах документации Cats, Cats Effect, FS2, http4s, Doobie и Circe.

Архитектура включает 4 слоя трансформера со скрытым размером 256; модель содержит около 12 млн параметров и принимает последовательности длиной до 512 токенов. Она преобразует текст в 256-мерные эмбеддинги и рассчитана на быстрый запуск в браузере или Node.js через Transformers.js и ONNX Runtime Web. В описанной оценке достигла 93,3% качества учительской модели по NDCG@10.

Модель предназначена прежде всего для поиска и извлечения релевантных документов по англоязычной документации функционального программирования. Она оптимизирована под эту область, поэтому может хуже работать с обычными текстами; английский — единственный заявленный язык. В репозитории есть веса Safetensors и ONNX, включая вариант ONNX с INT8-квантизацией. Лицензия — MIT.

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

  • семантический поиск по документации Cats и Cats Effect
  • поиск ответов в документации FS2 и http4s
  • извлечение релевантных фрагментов документации Doobie и Circe
  • создание эмбеддингов для клиентского поиска в браузере

Ограничения

Модель специализирована на англоязычной документации функционального программирования и может уступать универсальным моделям на текстах из других областей. Некоторые специфические термины функционального программирования могут токенизироваться неоптимально.

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

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

Открыть на Hugging Face

Typelevel-BERT

A compact, browser-deployable text embedding model specialized for searching Typelevel/FP documentation. Distilled from BAAI/bge-large-en-v1.5 to achieve fast client-side inference.

Highlights

  • 93.3% of teacher model quality (NDCG@10)
  • 30x smaller than teacher (11M vs 335M parameters)
  • 10.7 MB quantized ONNX model
  • 1.5ms inference latency (CPU, seq_len=128)
  • Optimized for Cats, Cats Effect, FS2, http4s, Doobie, Circe documentation

Model Details

PropertyValue
Model TypeBERT encoder (text embedding)
Architecture4-layer transformer
Hidden Size256
Attention Heads4
Parameters11.2M
Embedding Dimension256
Max Sequence Length512
Vocabularybert-base-uncased (30,522 tokens)
PoolingMean pooling

Usage

Browser/Node.js (transformers.js)

import { pipeline } from '@huggingface/transformers';

// Load the model (downloads automatically)
const extractor = await pipeline('feature-extraction', 'djspiewak/typelevel-bert', {
  quantized: true,  // Use INT8 quantized model (10.7 MB)
});

// Generate embeddings
const embedding = await extractor("How to sequence effects in cats-effect", {
  pooling: 'mean',
  normalize: true,
});

console.log(embedding.data);  // Float32Array(256)

Python (ONNX Runtime)

import onnxruntime as ort
import numpy as np
from transformers import AutoTokenizer
from huggingface_hub import hf_hub_download

# Download and load quantized model
model_path = hf_hub_download("djspiewak/typelevel-bert", "onnx/model_quantized.onnx")
tokenizer = AutoTokenizer.from_pretrained("djspiewak/typelevel-bert")
session = ort.InferenceSession(model_path)

# Tokenize input
text = "Resource management and safe cleanup"
inputs = tokenizer(text, return_tensors="np", padding=True, truncation=True)

# Run inference
outputs = session.run(None, {
    "input_ids": inputs["input_ids"].astype(np.int64),
    "attention_mask": inputs["attention_mask"].astype(np.int64),
})

# Model outputs pooled embeddings, just L2 normalize
embedding = outputs[0]  # (1, 256)
embedding = embedding / np.linalg.norm(embedding, axis=1, keepdims=True)

Performance

MetricTypelevel-BERTTeacher (BGE-large)% of Teacher
NDCG@100.8530.91593.3%
MRR0.9000.96393.5%
Recall@1096.7%96.7%100%
Parameters11.2M335M3.3%
Model Size10.7 MB~1.2 GB0.9%
Latency (CPU)1.5ms~15ms10x faster

Training

  • Teacher Model: BAAI/bge-large-en-v1.5 (335M parameters, 1024-dim embeddings)
  • Training Data: 30,598 text chunks from Typelevel ecosystem documentation
  • Distillation Method: Knowledge distillation with MSE + cosine similarity loss
  • Hardware: Apple M3 Max (MPS)

Intended Use

This model is designed for:

  • Semantic search in functional programming documentation
  • Document retrieval for Typelevel ecosystem libraries (Cats, Cats Effect, FS2, http4s, Doobie, Circe)
  • Browser-based inference via transformers.js or ONNX Runtime Web
  • Client-side embeddings for privacy-preserving search applications

Limitations

  1. Domain Specialization: Optimized for FP documentation; may underperform on general text
  2. English Only: Trained exclusively on English documentation
  3. Vocabulary: Uses bert-base-uncased vocabulary; some FP-specific terms may be suboptimally tokenized

Files

FileSizeDescription
model.safetensors42.6 MBPyTorch weights
onnx/model.onnx42.4 MBFull precision ONNX
onnx/model_quantized.onnx10.7 MBINT8 quantized ONNX
config.json-Model configuration
tokenizer.json-Fast tokenizer
vocab.txt-Vocabulary file

Citation

@misc{typelevel-bert,
  title={Typelevel-BERT: Distilled Text Embeddings for FP Documentation Search},
  author={Daniel Spiewak},
  year={2025},
  url={https://huggingface.co/djspiewak/typelevel-bert}
}

License

MIT

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
BertModel
Ревизия весов
61b79a7

0 моделей