Converse
AI Engineer. Hemut (YC P25), since April 2026.
Python, FastAPI, LiveKit, Deepgram, Cartesia, PostgreSQL, Alembic, AWS ECS
I build the voice agents that take freight calls at Hemut: load status lookups, transfers, and rate negotiation.
- Recorded median time to first speech on confirmed transfers
- 310 ms
- Fewer LLM generations on eligible status-lookup turns
- 50%
- Duplicate load-detail narration, measured in transcript replays
- 83% to 0%
My part
I did the voice engineering and research and wrote nearly all of the Converse documentation. The work also reached into the backend: Alembic migrations, SHA-pinned ECS releases, and the data the agents read during a call.
Skip the model when the answer is already known
A status lookup has one right next step, so asking the LLM to plan it costs a generation and adds a pause. So what I did was run the tool deterministically on eligible status-lookup turns, which cut the required generations on those turns in half. A confirmed transfer works the same way: I bypassed its planning stage, and the recorded median time to first speech came out at 310 ms.
Say it once
A completed lookup could sound right and still trigger another reply, so the agent read the same load details twice. I traced one case to a backstop that mistook an introductory filler for an unfinished promise. Stronger guards on tool results took duplicate load-detail narration from 83% to 0% in replays, and failing regression tests now pin the fix without adding another wait to the voice path.
Negotiating in rounds
Rate negotiation runs as a 3-round state machine. I hardened it with agreement locks scoped to the load, so a price agreed for one load can't carry over to another one in the same call.
Checking what the clock counted
I caught end-of-utterance and transcription timings being added together even though they overlapped. I also found two speech-recognition streams running at the same time, which had been going on for a few days. Both changed what the latency numbers actually meant.
Next: Hemut-MCP