Downloads · 30 days
205
28% of all-time downloads
loom-ai-org/granite-speech-4.0-1b-loom
granite-speech-4.0-1b-loom is a automatic speech recognition model from loom-ai-org. Use it when you need speech turned into text. It is set up for loom-py-rt. The card lists the license as apache-2.0.
IBM's Granite 4.0 1B speech-language model (ASR + AST), exported for loom.cpp.
Downloads · 30 days
205
28% of all-time downloads
All-time downloads
734
Public
Repo size
52.5 GB
Likes
0
Public
Click a slice to open those files.
.gguf8.8 GB · 100%
From the Hugging Face model README
IBM's Granite 4.0 1B speech-language model (ASR + AST), exported for loom.cpp.
This is a loom.cpp export: a single self-describing GGUF that carries its own graph topologies, tokenizer (if any) and driver script, produced by loom-exporter.
Exported from ibm-granite/granite-4.0-1b-speech. Weights are unmodified; this repo packages the same parameters into
loom.cpp's GGUF format.
apache-2.0, inherited from the base model above.
en, fr, de, es, pt, ja
upstream also tags the model "multilingual"
Run it with loom-py -- loom-py-rt on PyPI:
pip install -U "loom-py-rt[hub]"
Needs loom-py-rt 1.0.0rc18 or later. This file uses the engine's STFT op, new in that release; an older runtime stops with unknown op 'STFT'.
import loom
model = loom.Model.from_pretrained("loom-ai-org/granite-speech-4.0-1b-loom")
# Audio is a mono float list at 16 kHz. This model decodes in the one language it was trained for and
# takes no `language=` argument -- passing one warns and is ignored, because nothing in its decode
# could act on it.
result = model.speech2text.infer(audio, timestamps=True)
print(result.text)
# It emits no timestamp tokens, so `segments` is one span covering the whole clip and
# `result.timestamped` is False. Check that before treating a start/end as a boundary the model chose.
for segment in result.segments:
print(segment.start, segment.end, segment.text)
The call above is the high-level door: one per task, named for the modality pair it maps between, with
the windowing, sampling and assembly this model needs already applied. Under it, model.infer(...)
passes your arguments straight to the driver this GGUF embeds -- which is where you go for a knob the
door does not name.
model.driver_source prints that driver, including a header comment documenting every argument it
accepts for this model, and is the authority on it. See loom-py for the API and
loom.cpp for what the engine does between the two.
granite-speech-4.0-1b.gguf -- the model, exported with loom-exporter.