Model reference · open weights
T-one is an open-weight audio or speech model from t-tech. T-one (FP32) weighs 143 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.
Summary of the t-tech/T-one model card, 2026-10-01
What it is
| Released by | t-tech |
|---|---|
| Released | 2025-07-14 |
| Parameters | 72M |
| VRAM | 143 MB for the weights |
What it runs on
| Card | One stream | Memory |
|---|---|---|
| RTX 3060 12 GB | fits | 11.6 GB |
| RTX 4060 Ti 16 GB | fits | 15.4 GB |
| RTX 3090 24 GB | fits | 23.4 GB |
| RTX 4090 24 GB | fits | 23.4 GB |
| RTX 5090 32 GB | fits | 31.0 GB |
| L40S 48 GB | fits | 44.0 GB |
| A100 80 GB | fits | 78.2 GB |
| H100 80 GB | fits | 78.1 GB |
| RTX PRO 6000 Blackwell 96 GB | fits | 93.8 GB |
| DGX Spark (GB10) 128 GB unified | fits | 107 GB |
| H200 141 GB | fits | 138 GB |
| B200 180 GB | fits | 176 GB |
From the model card
🚀 T-one is a high-performance streaming ASR pipeline for Russian, specialized for the telephony domain.
T-one provides a complete low-latency solution for real-time transcription. It features a pretrained streaming Conformer-based acoustic model, a custom phrase boundary detector and a decoder, making it a ready-to-use solution for production environments. It provides not only the pretrained model but also a full suite of tools for inference, fine-tuning, and deployment.
Developed by T-Software DC, this project is a practical low-latency, high-throughput ASR solution with modular components.
For more details, see the GitHub Repository.
Key Features:
Word Error Rate (WER) is used to evaluate the quality of automatic speech recognition systems, which can be interpreted as the percentage of incorrectly recognized words compared to a reference transcript. A lower value indicates higher accuracy. T-one demonstrates state-of-the-art performance, especially on its target domain of telephony, while remaining competitive on general-purpose benchmarks.
| Category | T-one (71M) | GigaAM-RNNT v2 (243M) | GigaAM-CTC v2 (242M) | Vosk-model-ru 0.54 (65M) | Vosk-model-small-streaming-ru 0.54 (20M) | Whisper large-v3 (1540M) |
|---|---|---|---|---|---|---|
| Call-center | 8.63 | 10.22 | 10.57 | 11.28 | 15.53 | 19.39 |
| Other telephony | 6.20 | 7.88 | 8.15 | 8.69 | 13.49 | 17.29 |
| Named entities | 5.83 | 9.55 | 9.81 | 12.12 | 17.65 | 17.87 |
| CommonVoice 19 (test split) | 5.32 | 2.68 | 3.14 | 6.22 | 11.3 | 5.78 |
| OpenSTT asr_calls_2_val original | 20.27 | 20.07 | 21.24 | 22.64 | 29.45 | 29.02 |
| OpenSTT asr_calls_2_val re-labeled | 7.94 | 11.14 | 12.43 | 13.22 | 21.03 | 20.82 |
from tone import StreamingCTCPipeline, read_audio, read_example_audio
audio = read_example_audio() # or read_audio("your_audio.flac")
pipeline = StreamingCTCPipeline.from_hugging_face()
print(pipeline.forward_offline(audio)) # run offline recognition
Output:
[TextPhrase(text='привет', start_time=1.79, end_time=2.04), TextPhrase(text='это я', start_time=3.72, end_time=4.26), TextPhrase(text='я подумала не хочешь ли ты встретиться спустя все эти годы', start_time=5.88, end_time=10.59)]
from tone import StreamingCTCPipeline, read_stream_example_audio
pipeline = StreamingCTCPipeline.from_hugging_face()
state = None # Current state of the ASR pipeline (None - initial)
for audio_chunk in read_stream_example_audio(): # Use any source of audio chunks
new_phrases, state = pipeline.forward(audio_chunk, state)
print(new_phrases)
# Finalize the pipeline and get the remaining phrases
new_phrases, _ = pipeline.finalize(state)
print(new_phrases)
Output:
TextPhrase(text='привет', start_time=1.79, end_time=2.04)
TextPhrase(text='это я', start_time=3.72, end_time=4.26)
TextPhrase(text='я подумала не хочешь ли ты встретиться спустя все эти годы', start_time=5.88, end_time=10.59)
In order to fine-tune T-one from a pre-trained checkpoint you need to prepare the training dataset, load the tokenizer and feature extractor from t-tech/T-one 🤗 repo.
import torch
from tone.training.model_wrapper import ToneForCTC
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model = ToneForCTC.from_pretrained("t-tech/T-one").to(device)
Setup the data collator, evaluation metric, training arguments and 🤗 Trainer.
For a complete guide please refer to the fine-tuning example notebook.
T-one is a 71M parameter acoustic model based on the Conformer architecture, with several key innovations to improve performance and efficiency:
It processes audio in 300 ms chunks and generates transcriptions using either greedy decoding or a KenLM-based CTC beam search de
Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.