/ Модель

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

Контекст
512 токенов
Параметры
136 млн
Лицензия
MIT
Архитектура
bert · dense
Базовая модель
bert-base-portuguese-cased
Библиотека
transformers
Опубликована
8 сен 2026

kikori

Классификация текстаТекст → label3 профессии

kikori определяет, как португалоязычный текст выражает тональность по отношению к заданному человеку.

33скачиваний за 30 дней0лайковвеса обновлены25 сен 2026

Бенчмарки

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

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

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

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

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

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

kikori — модель классификации тональности относительно указанного человека в португалоязычном тексте. Она принимает пару «имя человека и текст» и предсказывает, относится ли текст к этому человеку негативно, нейтрально или позитивно. Модель разработана для проекта rashomon; дообучена на BERTimbau Base, бразильской португальской версии BERT, с помощью 13 778 примеров, размеченных LLM-учителем. Архитектура — BertForSequenceClassification, размер — 136,1 млн параметров, контекст — до 512 токенов по метаданным; описанный в README контракт задаёт max_length 256.

Модель рассчитана на анализ упоминаний людей и сопоставление тональности публикаций из разных источников, например новостных лент и социальных сетей. Выход содержит оценки для классов neg, neu и pos, а итоговый балл находится в диапазоне от −10 до 10. Доступны веса safetensors и ONNX, включая динамическую квантованную версию int8. По holdout-набору из 578 пар точность fp32 и int8 составляет 0,78; на отдельном наборе отзыв положительной тональности составляет 0,73 для fp32 и 0,71 для int8.

Модель имеет известное смещение по имени человека: обучающие метки неодинаково распределены для разных персон, поэтому она может учитывать имя как априорный сигнал. Авторы рекомендуют сравнивать источники на текстах об одном и том же человеке, а не сравнивать людей между собой. Лицензия — MIT.

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

  • оценка тональности новостных публикаций о конкретном человеке
  • сопоставление освещения одного политика в разных СМИ
  • анализ отношения социальных сетей к указанной персоне
  • классификация упоминаний человека как негативных, нейтральных или позитивных

Ограничения

Модель имеет смещение, связанное с именами персон и перекосами обучающих меток; корректнее сравнивать разные источники на текстах об одном и том же человеке. На описанном holdout-наборе отзыв положительного класса невысок: 0,45 для fp32 и 0,38 для int8.

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

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

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

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

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

Открыть на Hugging Face

kikori

Target-directed sentiment for rashomon: given a person and a Portuguese text, how does the text treat that person? Trained and documented in walteraandrade/kikori.

Contract

Read it from config.json["kikori"] rather than copying it:

  • Input: the pair (person, text) encoded as [CLS] person [SEP] text [SEP], token_type_ids 0 for the first segment and 1 for the second, max_length 256. Cut only the text so the closing [SEP] stays; truncation: true on a pair in transformers.js drops it and moves the score.
  • Text: this release was trained on the window rashomon sends since rashomon#154, the largest stretch around the first mention of the person that fits the budget, cut at word boundaries. A text that fits goes through whole. The previous release read the head of the text, where on rss, nicho and juridico documents the person was outside the cut in 37%, 41% and 57% of pairs.
  • Output: 3 logits in the order neg, neu, pos. Score = (p_pos - p_neg) * 10, range -10..10; class cut neg <= -2.5, pos >= 2.5. A temperature of 4.0 is already folded into the classifier weights.
  • Files: onnx/model.onnx (fp32, 436 MB) and onnx/model_quantized.onnx (per-channel dynamic int8, 110 MB) for @huggingface/transformers (dtype: "fp32" / "q8"); model.safetensors for Python.
  • fixtures.json: 24 pairs with the expected fp32 and int8 scores. fp32 should match to 1e-3 on any runtime; int8 drifts between runtimes, so test it with a tolerance. Eight of the 24 texts run 3 to 10 tokens over the budget; Python cuts their tail, a consumer that re-centres on the mention may land a few tenths away on those.

Numbers

Holdout of 578 (person, text) pairs on the windowed text, labelled by an LLM teacher under the rules in the repo's LABELLING.md, teacher-human agreement ~0.73. 469 of them are the stratified set every earlier release was measured on; 109 were appended on 2026-09-24 from rss, nicho and juridico, the sources the 469 could not measure (44, 41 and 40 pairs now). pos recall is by the score cut, over the 47 pos pairs:

accMAEpos recall
fp320.781.580.45 (21/47)
int80.781.670.38 (18/47)
constant 00.611.980.00
previous release (d03d785), fp32, same 5780.781.600.45 (21/47)

A second frozen set, 1,467 pairs cut from the pool above p_pos 0.20 plus a weighted draw from below, carries 519 pos pairs and measures pos recall with some precision: 0.73 weighted in fp32, 0.71 in int8 (previous release 0.71 / not re-measured). Per source on the 578, fp32: bluesky 0.75, gnews 0.84, rss 0.80, nicho 0.83, juridico 0.82, where the off-the-shelf baseline reads 0.63, 0.73, 0.73, 0.51, 0.82.

Recipe: BERTimbau base, effective batch 32, lr 5e-5, 3 epochs with the last one kept, class-weighted cross-entropy, temperature calibration on a frozen validation split. Trained on 13,778 teacher-labelled pairs; validation is 1,353 of them, held out by document and frozen across the whole data loop (macro-F1 0.7684, pos recall 0.697; the five-seed mean of this training set is 0.7661 / 0.687).

What this release changes is the text, not the score: the same holdout reads the same numbers for the previous release in fp32. The point of shipping it is that rashomon now sends the window, and this model was trained on windows; 637 of its training labels were re-issued by the teacher on the window, of which 528 kept their label.

Known bias

The person name acts as a prior learned from skewed training labels (Lula's pairs lean pos, Tarcísio's and the Bolsonaros' lean neg). Measured on the 2026-09-09 release and not re-measured here: on the same short hostile sentence with the name swapped, that model scored Lula -0.3 and everyone else -4.8 to -4.9; favourable and routine sentences showed no name effect. The training labels behind this release have the same per-person skew, so assume the prior is still here.

Compare outlets on the same person, not people against each other. See the repository README, "Known bias".

This model is a ruler, not a judge. It is biased; the requirement is that it is biased the same way for every outlet, so comparisons between outlets stay valid.

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей