Sari la conținut
megapromotingHai să discutăm
Produse Grai

Cercetare vocală Cercetare & dezvoltare

A voice built for the way we actually speak.

Grai is our research direction for speech synthesis and models adapted to the languages spoken in this region. We work on pronunciation, expressiveness, and the link between the voice model and conversational applications.

  1. 1Date autorizate
  2. 2Model și evaluare
  3. 3Sinteză vocală
Schemă explicativă ·Grai

Grai

From information to work done.

01

Data and language

Preparing and evaluating voice material used with the rights it requires.

02

Model

Experiments on pronunciation, rhythm and expressiveness.

03

Aplicație

Evaluating the model in conversational scenarios, and access through an API.

Where it earns its place.

Română

Attention to pronunciation and to the rhythm of speech, including in local contexts.

Multilingual experiments

Research and evaluation for Romanian and Russian.

Voice agents

Kallina is the agent platform; Grai is a separate line of development for the voice model itself.

We are presenting a research project, with results that get evaluated iteratively. The availability of a model for production is confirmed separately.

Grai in detail

What you can do with this project.

Grai is our research project on the Romanian voice. It is not a product, it cannot be bought, and it has no try-it button. It is an attempt to understand why Romanian is badly served by the voice systems that exist, and what it would cost to serve it better.

The architecture we are studying is cascaded, not natively duplex: recognition → language model → synthesis, three separate components. Recognition and synthesis run locally, on the CPU; the language model is swappable and lives off the machine, behind an OpenAI-compatible gateway. The choice is deliberate, and it has a price that we measure.

The distinction that matters: Grai explores the voice. Kallina organises the conversation and the actions. Voice Studio produces audio files through integrated providers. Three different things, and the only one of them that is research is Grai.

01

What we study: Romanian recognition, measured on FLEURS

The protocol is fixed and declared: 200 utterances per language from the FLEURS test set, drawn uniformly at random with seed 20260831, streaming decoding with cache awareness — not offline decoding over a whole file, which is easier and produces prettier figures. Our own result on the default 1120 ms window: a 26.31% word error rate in Romanian, 9.30% in Russian.

02

Where the time goes in a conversation

We measure every segment between two observed ends, not calculated ones. On the published breakdown, the language model is by far the largest slice: 2180 ms, against 92 ms for recognition and 305 ms for synthesis. The useful conclusion is that, for a voice conversation, speed is not won by optimising recognition — recognition is already close to free. It is won at the language model.

03

The numbers break exactly where the real conversation breaks

We split the sample into utterances with digits and utterances without. Without digits: 25.08% error. With digits: 30.37%. That gap of more than five points is the most useful observation in the study, because that is exactly where the business cases live — phone numbers, amounts, dates, order numbers. A system that sounds good on prose can be unusable on an order.

04

End-of-turn detection, the real interruption problem

A fixed silence threshold is the usual mistake. On our own measurement, a fixed threshold reaches equal error at 820 ms; on prosody, at 560 ms. The correct-cut rate is 52% — practically a coin toss, and we say so because it is the point the proposed training starts from, not a result we boast about.

05

The data inventory, with its licences

We inventoried seven corpora for Romanian and noted, for each one, its licence and whether it permits commercial use. The practical conclusion: the largest resources for Romanian are non-commercial, and the clean road remains VoxPopuli under CC0 — 89 hours — plus voice recorded by us, with an assignment of rights and biometric consent. In the Republic of Moldova, Law no. 195/2024 on the protection of personal data treats the voice as biometric data, and it has been in force since 23 August 2026.

Data and operation

What goes into the system. What has to be checked.

The voice is biometric data
In the Republic of Moldova, Law no. 195/2024 has been in force since 23 August 2026 and classes the voice as biometric data. In practice: a public recording does not authorise the use of anybody's vocal identity. Any project that clones a voice takes explicit consent and an assignment of rights, not merely access to a file.
The corpus licences decide what can be built
Of the seven corpora inventoried for Romanian, two of the largest are explicitly non-commercial, and one sits behind an access gate. A model trained on non-commercial data cannot end up in a product, however good it sounds. That is why the licence inventory happens before the training, not after.
The synthesis component everything rests on is at end of life
The synthesis model used in the cascade has been archived by its authors: no development and no official support, and their voice-building tool was shut down on 31 August 2026. The weights remain available and the model still runs locally, but it receives nothing further. That moves our own synthesis from "maybe later" onto the critical path, and it is a change of plan we would rather state than hide.
The evaluation set does not mix with the training set
It is the elementary rule, and the one most often broken. A comparison means something only if it holds the model version, the text, the seed and the criterion constant. Our study notes a measurement mistake we made ourselves on this very site: a latency figure of 455 ms started the clock after recognition, so it measured something other than what it suggested; the real figure was roughly five times larger.

From exploration to deployment

How we prepare a project with Grai.

01

We settle what is being measured, before measuring it

The language, the kind of text, the audience, the listening conditions and, above all, where the clock starts. Most latency figures on the market are not comparable, because they measure different segments of the same conversation.

02

We build a test set that contains the hard part

Proper names, place names, abbreviations and, without exception, numbers. The gap of more than five points between utterances with digits and utterances without is the reason a test set made only of prose says nothing about a business case.

03

We check the licence before any training

For every corpus: who owns it, what licence it carries, whether it permits commercial use, and whether it covers derivative work. For recorded voice: biometric consent and a written assignment of rights.

04

We publish the result that does not suit us, too

On accuracy in Romanian we lose to the large commercial systems. It is written on our own site, in the comparison table, where the third-party rows are marked as declared and ours as measured. A comparison in which you always come first is a comparison nobody should believe.

Questions worth settling.

Can I use Grai in a project today?

No. There is no public demonstration, no public API, no telephony integration, no native duplex, and voice cloning is not in the product. All five are listed as missing in our own roadmap. If you need a voice agent that works now, the answer is Kallina, not Grai; if you need an audio file, it is Voice Studio.

What was actually measured, and how good is the result?

On Romanian recognition, a 26.31% word error rate on the default 1120 ms window, with a 95% confidence interval between 24.07 and 28.60; in Russian, 9.30%. The protocol: 200 utterances per language from FLEURS, seed 20260831, streaming decoding. How good is it: it is not good. Our own conclusion, written under the comparison table, is that on accuracy in Romanian we lose to the commercial systems, by a factor of five to nine. Romanian is almost three times harder to recognise than Russian on the same configuration, and that is precisely the problem we are studying.

Where is the time lost, and where would it be won back?

On the measured breakdown, the language model takes 2180 ms of the path, recognition 92 ms and synthesis 305 ms. Recognition is practically free; synthesis nearly so. Anyone who wants a faster voice conversation has to attack the language model — a smaller model, streaming the response, or shorter responses. Here we have to be honest about ourselves as well: the per-segment figures published on the site do not add up to the total published on the same screen, and the difference is roughly half a second. The breakdown is the part we trust; the aggregate total has to be recomputed before it is quoted.

Why a cascaded architecture and not native duplex?

Because in a cascade you can swap each component separately, and you can keep recognition and synthesis local, on the CPU, without a GPU. The price is the chaining latency, and the fact that the language model — the largest part of the delay — sits off the machine. Native duplex is a direction, not something we have: it is on the "does not exist yet" list.

What would it cost to make it better?

The roadmap proposes three training runs under 1,200 dollars in total: recognition for Romanian on VoxPopuli CC0, 89 hours, roughly 50 hours of H100, around 500 dollars; an end-of-turn detector for Romanian, roughly 2,000 samples of our own, under 100 dollars; a voice of our own, 500-800 dollars. The third is not blocked by money but by data — and by the fact that the synthesis model we were relying on has been archived by its authors. The target figure for the first run, around 21%, is an extrapolation from the improvements obtained on Greek and Bulgarian, not a measurement.

Can it reproduce a person's voice?

The method being studied is inverse optimisation over frozen weights, not cloning from a few seconds: 6-30 minutes of material per voice, roughly 3,000 optimisation steps, 2.6 GB of peak memory, with the delivered artefact on the order of kilobytes. But it is not in the product, and it matters to say why that is not merely a technical question: in the Republic of Moldova the voice has been biometric data since 23 August 2026. Without explicit consent and an assignment of rights, the question is not whether it can be done, but that it is not done.

Why do you publish figures that put you in a bad light?

Because otherwise there would be no point publishing them at all. A table in which you always come first is a marketing table. Ours marks the third-party rows as declared and only our own as measured, and the conclusion written beneath it says that we lose. It also has to be said plainly what nobody on the outside can do: the code that produced these measurements is not public and does not accompany the site, so the figures cannot be reproduced by a third party today. Treat them as internal measurements, not as independently verified results.

Illustrative example

Why a voice agent stumbles precisely on the phone number

A usage scenario, with no client data and no commercial results attributed.

The starting situation

A voice agent in Romanian handles an opening conversation well and gets it wrong exactly when the customer dictates a phone number or an amount.

How it works

We split the sample of 200 FLEURS utterances in two: 163 without digits and 37 with digits, then measured them separately.

Rezultatul

25.08% error rate without digits, 30.37% with digits — more than five points apart, and on raw transcription, without normalisation, the gulf widens to more than eleven points. This is not an impression: it is the part of the data where recognition gives way, and it is exactly the part a business case depends on.

Ce este necesar:Un set de test care conține efectiv partea grea. Un set format din proză curată nu ar fi arătat niciodată această diferență, iar sistemul ar fi părut mai bun decât e.

Ways of working together

Grai, in the context of your organisation.

Processing audio content

Transcription and voice generation projects on material for which usage rights and a documented purpose exist.

Private companies

We define a pilot around one real process: users, data, integrations, costs and acceptance criteria. Expansion follows once the result has been assessed.

Public institutions and state-owned companies

We establish the requirements for accessibility, hosting, data protection and interoperability. Any connection to services run by Moldova's e-Governance Agency (AGE) or its state information-technology service (STISC) requires eligibility, access and approvals to be validated.

These are adaptation scenarios, not statements about existing contracts or partnerships. The proposed capabilities are confirmed within the project's scope of work.

Discută un pilot

Part of an ecosystem.

What would you want to work better?

Tell us about your process. Together we decide what is worth building, what we can connect, and how we check the result.

Hai să discutăm