Abdul Samad Zeeshan
Email meEmail

Project 05 / 07 / shipped

Parley

Answers the phone for a property agency in English and Gulf Arabic, books viewings, and only states facts the listings database returned.

From the write-up

Parley answers the phone for a property agency, in English, Gulf Arabic or both in one sentence. It books a viewing, only ever says prices and addresses the listings database returned, and works with no internet connection.

Headline numbers / 2

Every time the booking system failed mid-call, all 232 times, Parley said so and offered a callback instead of inventing a price or address.
232 of 232never invented a fact
From the Parley README, booking API faults paragraph.
Scripted calls booked start to finish by voice with no internet. Not good enough yet. Calls mixing English and Arabic fail most.
17 of 40not good enough yet
From the Parley README, calls booked table, row All, column local.

Decisions I made and things that broke

  1. No model decides the next step. Replies are fixed templates, and any model rewording that adds an unknown fact is thrown away.
  2. When the booking system is slow or down, Parley says it cannot confirm anything and books a callback instead of guessing.
  3. A speech prompt for mixed English and Arabic kept the English words but lost the Arabic ones, so the original prompt stayed.

What this proves / 6 skills

AI / ML

Python
The conversation logic, the booking service and the tests are Python, and the tests need no models.
Model evaluation
The same scripted calls are replayed with clean audio, noisy audio, garbled text and a failing booking system.
Speech recognition and TTS
Speech works on one laptop with no internet. Only 17 of 40 scripted calls ended in a booking, which is not good enough yet.
Grounded replies
When the booking system failed mid-call, Parley handled it safely all 232 times and never spoke a false fact.

Systems

Fault injection
The booking system is made slow, empty, contradictory or down mid-call, and Parley books a callback instead of guessing.

Infrastructure

Tests and CI
Automated checks fail if the tables in the write-up drift from the results file.

The demo, recorded

An Arabic call in the demo, with the booking confirmed
Open the demo
Replays recorded calls in English, Arabic and a mix of both, plus one where the booking system fails mid-call. Each fact Parley speaks is marked with the booking API call it came from.

Papers / 3

  • arXiv 2606.31307, Safe recovery when the database failsWhen the booking system fails mid-call, Parley confirms nothing, claims neither success nor failure, and books a callback.
  • arXiv 2609.03321, Finite-state turn takingWho holds the floor is tracked by a small set of fixed states, so a caller can talk over Parley and it stops.
  • arXiv 2605.19069, Code-switching speech recognitionCalls that mix English and Arabic are scored one language at a time, which showed the Arabic words are where recognition fails.