Files
vocero-client/README.md
T

2.2 KiB

Vocero speech-to-speech

Vocero provides a browser voice interface, a Python speech pipeline, and an optional Node-RED reasoning service. The interface defaults to Spanish; documentation, source identifiers, comments, and internal instructions use English.

Component Purpose
s2s-client Browser UI, FastAPI server, realtime WebSocket proxy, search and ApiPilot bridges
speech_to_speech Queue-driven VAD, speech recognition, language model, and speech synthesis pipeline
s2s-reasoning-engine Optional Node-RED HTTP reasoning and conversation logging flows

Start with client setup and usage, then read the architecture and documentation index. The speech backend needs its own installed model and runtime dependencies; s2s-client/requirements.txt installs only the UI server dependencies.

Run the browser client

From the repository root, point the client at an existing realtime backend:

SPEECH_TO_SPEECH_URL=ws://localhost:8765/v1/realtime ./start_ui.sh

Open http://localhost:8420/ and allow microphone access. The launcher creates .venv, installs missing UI requirements, loads the root .env if present, and starts the server. For the local WebSocket proxy instead of a direct browser connection, configure S2S_PROXY_TARGET and leave SPEECH_TO_SPEECH_URL unset.

To build the UI container, use the repository root as the Docker build context so the root documentation is included:

docker build -f s2s-client/Dockerfile -t s2s-client .
docker run --rm -p 7860:7860 \
  -e SPEECH_TO_SPEECH_URL=ws://localhost:8765/v1/realtime s2s-client

The direct WebSocket URL is resolved by the user's browser. For a server-side proxy deployment, supply a backend address reachable from the container instead.

Project references