Skip to main content

Voice-driven AI assistant for technical interview–style responses.

Project description

VoxAI

PyPI version
License MIT

VoxAI Logo

🚀 Features

  • Universal Audio Capture
    Record mic, system audio, or any combination via BlackHole (macOS) or equivalent loopback drivers.
  • Manual Control
    Start/Stop buttons let you define exactly the boundaries of your prompt—perfect for long, multi-sentence queries.
  • One-Shot Transcription
    Whisper processes the entire recording in a single call—no fragmented sentences.
  • Live AI Streaming
    Gemini’s response appears token by token, just like in ChatGPT’s streaming interface.
  • Configurable Model
    Swap between Gemini variants via environment (no code changes).
  • Zero-Install UI Bootstrapping
    On first run voxai auto-installs the minimal Electron UI source—included in the PyPI package—so you only ever need pip install voxai and voxai.

🎯 Quickstart

⚙️ Prerequisites

  • Python ≥3.7

  • Node.js ≥14

  • Electron (global)

    npm install -g electron
    
  • macOS Audio Loopback (BlackHole 2ch + Ladiocast):

    1. Install BlackHole 2ch::

      brew install blackhole-2ch

    2. Create a Multi-Output Device

      • Open Audio MIDI Setup
      • Click “+” → Create Multi-Output Device
      • Check both BlackHole 2ch and MacBook Pro Speakers
    3. Select Multi-Output Device
      System Preferences → Sound → Output → Multi-Output Device

    4. Configure Ladiocast

      • Input 1: BlackHole 2ch → route to Main
      • Main Output: MacBook Pro Speakers
      • Mute other channels

    This will route all system and microphone audio into VoxAI.

Install & Run

1) Install from PyPI

pip install voxai

2) Configure environment

cp .env.example .env

Edit .env:

GENAI_API_KEY=sk-…

GENAI_MODEL=gemini-1.5-flash

3) Launch the app

voxai

On first launch, VoxAI will automatically run npm install inside its bundled electron/ folder, then open a desktop window.


📖 Usage

Once the UI opens:

Start: Click Start to begin recording.

Speak: Listen to question`s from zoom, teams or any other tool aloud—no length limit.

Stop: Click Stop. Whisper transcribes your entire clip to the Transcript pane.

Ask AI: Click Ask AI. Gemini’s answer streams live into the Answer pane.

Copy & Share: Everything is plain text—copy it, paste it, or feed it into your own RAG/finetuning pipeline.


🎧 How It Works

  • Start Recording
    Click Start to capture audio from your input device (e.g., BlackHole).

  • Stop & Transcribe
    Click Stop. Whisper transcribes and shows the full audio clip under Transcript.

  • Ask AI
    Click Ask AI to send the transcript to Gemini. Answers stream live in the Answer panel.

  • Copy & Share
    Output is plain text—reuse it in RAG/finetune workflows or anywhere else.


🛠 Configuration

Set in .env:

Variable Description Example
GENAI_API_KEY Google Generative AI (Gemini) API key sk-…
GENAI_MODEL Gemini model to use gemini-1.5-flash

See .env.example for reference.


🛠️ Developer Guide

Install from source

git clone https://github.com/rtiwariops/voxai.git

cd voxai

pip install -e .

npm install -g electron

voxai

⚙️ Features

  • Universal Audio Capture (BlackHole, etc.)
  • Manual Control for long-form Q&A
  • One-Shot, Full-Clip Transcription
  • Live Token-by-Token AI Streaming
  • Configurable Gemini Model (.env)
  • Electron-Based Desktop UI

📜 License

MIT License © 2025 Ravi (Robbie) Tiwari

Released under the MIT License.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

voxai-0.1.40.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

voxai-0.1.40-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file voxai-0.1.40.tar.gz.

File metadata

  • Download URL: voxai-0.1.40.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.7

File hashes

Hashes for voxai-0.1.40.tar.gz
Algorithm Hash digest
SHA256 801e2fccaf7c7292fa2174fdaa7e150b48104c612a6bd545f2e7498b43596945
MD5 818565dbd1a199b1116a55c259256f59
BLAKE2b-256 5ea7afc6ab61410bb118191f2beb83ee1501166107c76acfbbc535f2545989f2

See more details on using hashes here.

File details

Details for the file voxai-0.1.40-py3-none-any.whl.

File metadata

  • Download URL: voxai-0.1.40-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.7

File hashes

Hashes for voxai-0.1.40-py3-none-any.whl
Algorithm Hash digest
SHA256 87f540b705c9083b3eca0ae43d95b4281c9ace84910c185f8f93b8edea7225d8
MD5 133423b59449b18fcd0210cb35df5b52
BLAKE2b-256 eba868cb80ca0d532b7419f1e06c18a266d493dcc9fc5607d4c8a99714818b98

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page