Skip to main content

Interact with openAI API with voice

Project description

bro, listen 🤖

Tool that allows for voice interaction with OpenAI chat without need to type long, detailed requests.
It's an terminal application that captures audio from microphone and queries chat with transcripted message.

animated


Note: Currently text-davinci-003 model is used as a chat backend. Unfortunately API for chatGPT is not yet provided by OpenAI.

Installation

Via PyPI

To install bro_listen package via PyPI, execute following command:

pip install bro-listen

Note: Consider creating a separate virtual environment if you want to avoid polluting system with dependencies of bro_listen package.

From source

poetry is required to install the package from the source code. You can get it here

Once poetry is enabled in the system, to install the project and its dependencies, execute following command:

git clone https://github.com/mikkac/bro_listen.git && cd bro_listen && poetry install

Configuration

After installation, configuration file has to be provided. Default location used by the application is $HOME/.config/bro_listen/config.toml.
One can use the default configuration file. The only thing that needs to be provided is OpenAI API key that can be generated here.

Configuration details

Application supports several configuration parameters.

  • voice_api - Voice recognition API. Currently only "vosk" is supported, but it's planned to also enable usage of Google Speech-To-Text and Azure Speech to text.
  • language - language used by voice_api. Currently available languages are listed in Vosk's documentation.
  • enable_audio_response - chat's responses are only written to console by default. However, it's possible to vocalize them by setting this parameter to true.
  • device_id - ID of recording device. It should be commented out or completely removed from configuration if default device shall be used.

Usage

If package has been installed via PyPI, run following command:

bro_listen

If it was installed from source, start the application with command:

poetry run bro_listen

or

poetry shell
bro_listen

License

This project is licensed under the LICENSE file that can be found here

Project details


Download files

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

Source Distribution

bro_listen-0.2.0.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.

bro_listen-0.2.0-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file bro_listen-0.2.0.tar.gz.

File metadata

  • Download URL: bro_listen-0.2.0.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.10.7 Linux/5.19.0-26-generic

File hashes

Hashes for bro_listen-0.2.0.tar.gz
Algorithm Hash digest
SHA256 6a7f167b43ce33dc3ed3eda026fa7e590ba199005ee022a7e9d5a474759a56ca
MD5 a57cfdfee4d3c055befac5f7d2c3dfec
BLAKE2b-256 64f03726544d787868f0db8cbcec13eaad4a0a66e0ff25dc25a8bb671094f12a

See more details on using hashes here.

File details

Details for the file bro_listen-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: bro_listen-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.10.7 Linux/5.19.0-26-generic

File hashes

Hashes for bro_listen-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 592914c9c2c347be3e6169c884cdfe0af0a4207d907bd2129322af323ecaa429
MD5 3629706ac2f87678433cbf9070d2abc2
BLAKE2b-256 6b610cdc192083906c6cf94914f330f167fcfc9b1bc4e2526aa286e7662d6608

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