Behind the Glass — field notes from a live deployment

Training diary. Entry 1: nine hundred and forty hours of conversation

October 28, 2026 · Training diary

For a model to speak Portuguese, it has to listen a lot. Not to announcers and not to lectures — to live conversations between two people, with interruptions, laughter, and “sorry, what?”. And it has to be European Portuguese, not Brazilian. It sounds like a simple task: find the recordings. In practice, the whole first month went into figuring out what exactly to look for.

At first we thought material would be plentiful. We started with YouTube — talk podcasts and programmes from Portuguese radio and TV; YouTube slowed us down more than once, so we had to download more gently. In open catalogues we found more than twenty thousand hours in total. But most of it turned out to be monologue, and a good part of it Brazilian. Telling one from the other automatically was harder than it looked: an accent classifier that worked well on YouTube recordings got it wrong in both directions on everything else. We had to check sources one by one.

The largest open corpus we found was thousands of hours of parliamentary sessions with ready-made transcripts. Free and neatly labelled. We downloaded it — and set it aside. A model for a contact center has to sound like a living person, not like a deputy at the rostrum.

The main find was radio plays: almost three hundred hours of natural, many-voiced dialogue from a single source. After that came talk shows, phone-in radio, debate programmes, university radio. We also tried children's voices and cartoons — and dropped them a day later: wrong register.

A word about our own mistake. At first we wanted to train the model on industry vocabulary — telephony, numbers, protocols. That was a serious mistake, and we fixed it. The model learns on everyday speech: prices, the road, kids, school, cars, relationships, politics. It will learn to talk business later. First, it learns to simply talk.

The hardest part is splitting a recording into voices. The model needs each speaker on their own track. We tried to do it ourselves with open tools: the pilot came out at 97% accuracy, at scale — not a single usable episode. An honest negative result. What helped next was a well-known company that specialises in diarization — separating speech by speaker, down to the individual word. With it, conversations began to split into voices reliably.

And the last rule of the month: no purchases. Only open and free sources. Paid corpora and commissioned dialogue recordings are not our path right now.

Where we stand today: about nine hundred and forty hours of conversation ready for training, and continuous collection of more. Training has gone through several cycles and now runs without pauses: the model picks up new batches of data as soon as they are ready. Slowly — we are still short on GPUs. In the next entries: what the model can already do, where it gets things wrong, and the numbers we got.