Model reference · open weights

vlt5-keywords

LLMs Voicelab Text gen 1 build Open weights 279k dl/mo

vlt5-keywords is an open-weight language model from Voicelab. vlt5-base-keywords (FP32) weighs 550 MB; the smallest configuration that runs it is RTX 3060 12 GB.

For self-hosting, compare this build's requirements below with the GPU you plan to rent.

  • vlt5-keywords is a 275M parameter text-generation model developed by Voicelab for extracting keywords from scientific articles.
  • It uses an encoder-decoder architecture based on T5-base and was trained on the POSMAC corpus of Polish and English abstracts.
  • The model generates approximately 3 to 5 keyphrases per input and is available under the CC BY 4.0 license.

Summary of the Voicelab/vlt5-base-keywords model card, 2026-10-01

What it is

Released byVoicelab
Released2022-09-27
Parameters275M
VRAM550 MB for the weights

What it runs on

Memory and cards for vlt5-base-keywords (FP32)

550 MBweights, file size
37 MBcache per 1K tokens
518 MBruntime overhead, at least
CardRequests at onceContext maxMemory
8K each32K each
RTX 3060 12 GB348128K11.6 GB
RTX 4060 Ti 16 GB4711128K15.4 GB
RTX 3090 24 GB7318128K23.4 GB
RTX 4090 24 GB7318128K23.4 GB
RTX 5090 32 GB9924128K31.0 GB
L40S 48 GB14235128K44.0 GB
A100 80 GB25563128K78.2 GB
H100 80 GB24561128K78.1 GB
RTX PRO 6000 Blackwell 96 GB29774128K93.8 GB
DGX Spark (GB10) 128 GB unified34285128K107 GB
H200 141 GB444111128K138 GB
B200 180 GB570142128K176 GB
Memory needed at each load
Requests at once8K tokens each32K tokens each
11.4 GB2.3 GB
52.6 GB7.1 GB
83.5 GB10.7 GB
165.9 GB20.4 GB
3210.7 GB39.7 GB
6420.4 GB78.4 GB

One card, with vLLM's small-card settings.

From the model card

What Voicelab says about vlt5-keywords

Read the model card

Our vlT5 model is a keyword generation model based on encoder-decoder architecture using Transformer blocks presented by Google (https://huggingface.co/t5-base). The vlT5 was trained on scientific articles corpus to predict a given set of keyphrases based on the concatenation of the article’s abstract and title. It generates precise, yet not always complete keyphrases that describe the content of the article based only on the abstract.

Keywords generated with vlT5-base-keywords: encoder-decoder architecture, keyword generation

Results on demo model (different generation method, one model per language):

Our vlT5 model is a keyword generation model based on encoder-decoder architecture using Transformer blocks presented by Google (https://huggingface.co/t5-base). The vlT5 was trained on scientific articles corpus to predict a given set of keyphrases based on the concatenation of the article’s abstract and title. It generates precise, yet not always complete keyphrases that describe the content of the article based only on the abstract.

Keywords generated with vlT5-base-keywords: encoder-decoder architecture, vlT5, keyword generation, scientific articles corpus

vlT5

The biggest advantage is the transferability of the vlT5 model, as it works well on all domains and types of text. The downside is that the text length and the number of keywords are similar to the training data: the text piece of an abstract length generates approximately 3 to 5 keywords. It works both extractive and abstractively. Longer pieces of text must be split into smaller chunks, and then propagated to the model.

Overview

Corpus

The model was trained on a POSMAC corpus. Polish Open Science Metadata Corpus (POSMAC) is a collection of 216,214 abstracts of scientific publications compiled in the CURLICAT project.

DomainsDocumentsWith keywords
Engineering and technical sciences58 97457 165
Social sciences58 16641 799
Agricultural sciences29 81115 492
Humanities22 75511 497
Exact and natural sciences13 5799 185
Humanities, Social sciences12 8097 063
Medical and health sciences6 0303 913
Medical and health sciences, Social sciences828571
Humanities, Medical and health sciences, Social sciences601455
Engineering and technical sciences, Humanities312312

Tokenizer

As in the original plT5 implementation, the training dataset was tokenized into subwords using a sentencepiece unigram model with vocabulary size of 50k tokens.

Usage

from transformers import T5Tokenizer, T5ForConditionalGeneration

model = T5ForConditionalGeneration.from_pretrained("Voicelab/vlt5-base-keywords")
tokenizer = T5Tokenizer.from_pretrained("Voicelab/vlt5-base-keywords")

task_prefix = "Keywords: "
inputs = [
    "Christina Katrakis, who spoke to the BBC from Vorokhta in western Ukraine, relays the account of one family, who say Russian soldiers shot at their vehicles while they were leaving their village near Chernobyl in northern Ukraine. She says the cars had white flags and signs saying they were carrying children.",
    "Decays the learning rate of each parameter group by gamma every step_size epochs. Notice that such decay can happen simultaneously with other changes to the learning rate from outside this scheduler. When last_epoch=-1, sets initial lr as lr.",
    "Hello, I'd like to order a pizza with salami topping.",
]

for sample in inputs:
    input_sequences = [task_prefix + sample]
    input_ids = tokenizer(
        input_sequences, return_tensors="pt", truncation=True
    ).input_ids
    output = model.generate(input_ids, no_repeat_ngram_size=3, num_beams=4)
    predicted = tokenizer.decode(output[0], skip_special_tokens=True)
    print(sample, "\n --->", predicted)

Inference

Our results showed that the best generation results were achieved with no_repeat_ngram_size=3, num_beams=4

Results

MethodRankMicroMacro
PRF1PRF1
extremeText10.1750.0380.0630.0070.0040.005
30.1170.0770.0930.0110.0110.011
50.0900.0990.0940.0130.0160.015
100.0600.1310.0820.0150.0250.019
vlT5kw10.3450.0760.1240.0540.0470.050
30.3280.2120.2570.1330.1270.129
50.3180.2370.2710.1430.1400.141
KeyBERT10.0300.0070.0110.0040.0030.003
30.0150.0100.0120.0060.0040.005

|

Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.

© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms