This is pretty awesome!
I saw there's support for the IBM Granite 4.1 models, which I've been keen to try for ages - in particular the Granite 4.1 Plus mode with timestamps and speaker diarization.
However, I saw that transcribe.cpp doesn't currently support this. It says here:
Speaker diarization | No (upstream supports via prompt; not exposed in v1 of transcribe.cpp)
When you say "upstream supports via prompt" - do you mean that the only way to enable it is to change the prompt, is that right? (Meta question - I'm curious why they do it like this - as opposed to something more deterministic, like a flag - but perhaps I'm showing my modern ML models newbieness here):
E.g. from the HF page:
SAA_PROMPT = "<|audio|> Speaker attribution: Transcribe and denote who is speaking by adding [Speaker 1]: and [Speaker 2]: tags before speaker turns."
or
TS_PROMPT = "<|audio|> Timestamps: Transcribe the speech. After each word, add a timestamp tag showing the end time in centiseconds, e.g. hello [T:45] world [T:82]"
Is that quite hard to add to transcribe.cpp though? As in, it's not a simple change, is it?
This is pretty awesome!
I saw there's support for the IBM Granite 4.1 models, which I've been keen to try for ages - in particular the Granite 4.1 Plus mode with timestamps and speaker diarization.
However, I saw that transcribe.cpp doesn't currently support this. It says here:
When you say "upstream supports via prompt" - do you mean that the only way to enable it is to change the prompt, is that right? (Meta question - I'm curious why they do it like this - as opposed to something more deterministic, like a flag - but perhaps I'm showing my modern ML models newbieness here):
E.g. from the HF page:
or
Is that quite hard to add to transcribe.cpp though? As in, it's not a simple change, is it?