Skip to main content

TalkWave is an AI chatbot for developers written in Python.

Project description

talkwave logo

Python TalkWave

talkwave banner

Overview ๐Ÿ“–

TalkWave is an AI chatbot for developers written in Python. It features a simple HTML frontend and is designed to be accessible across various browsers and devices. TalkWave supports asynchronous operations and can handle multiple requests simultaneously.

Features โœจ

  • Accepts a range of parameters to customize the response, such as max tokens, temperature, and stopping conditions.
  • Accessible design for cross-browser and device compatibility (Chrome, Firefox, Safari, Edge, and mobile).
  • Accurately limits billing with limits and ID binding to prevent exceeding API limits and incurring charges.
  • Implements rate limiting functionality to prevent exceeding API limits and incurring charges.
  • Plain Python implementation with a limited number of dependencies for easy installation and use.
  • Stores responses in log files, JSON, and Markdown formats for easy analysis and sharing.
  • Supports multiple GPT models for generating responses, including gpt-3.5-turbo,text-davinci-002,text-curie-001,text-babbage-001,text-ada-001.

Requirements ๐Ÿ“‹

  • Python 3.6 or higher
  • The openai, tabulate, and python-dotenv packages
  • An OpenAI API key (get one here)

Installation ๐Ÿ› 

  1. Install the required packages:
pip install openai tabulate python-dotenv
  1. Clone the TalkWave repository:
git clone https://github.com/sebastienrousseau/talkwave.git
  1. Add your OpenAI API key to a .env file in the project directory:
OPENAI_API_KEY="your_api_key_here"

Usage ๐Ÿš€

Command Line Interface

To use TalkWave, navigate to the project directory in your terminal and run the following command:

python talkwave -p "Your prompt here"

You can also specify additional options, such as the GPT model, maximum tokens, temperature, and user ID:

python talkwave -m 1 -p "Tell me a joke" -t 50 -T 0.5 -u "test@test.com" -r 5 -s -o "json"

For more information on the available options, run:

python talkwave --help

Web Frontend

To use the web frontend, navigate to the project directory in your terminal and run the following command:

python talkwave/frontend.py

Then, open your browser and navigate to http://127.0.0.1:5000. This will open the TalkWave web frontend, which you can use to generate responses.

File Structure ๐Ÿ“

.
โ”œโ”€โ”€ talkwave
โ”‚ย ย  โ”œโ”€โ”€ data
โ”‚ย ย  โ”œโ”€โ”€ templates
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ 404.html
โ”‚ย ย  โ”‚ย ย  โ””โ”€โ”€ index.html
โ”‚ย ย  โ”œโ”€โ”€ utils
โ”‚ย ย  โ”‚ย ย  โ”œโ”€โ”€ curl.py
โ”‚ย ย  โ”‚ย ย  โ””โ”€โ”€ dir.py
โ”‚ย ย  โ”œโ”€โ”€ __init__.py
โ”‚ย ย  โ”œโ”€โ”€ __main__.py
โ”‚ย ย  โ”œโ”€โ”€ core.py
โ”‚ย ย  โ””โ”€โ”€ frontend.py
โ”œโ”€โ”€ CONTRIBUTING.md
โ”œโ”€โ”€ Dockerfile
โ”œโ”€โ”€ LICENSE-APACHE
โ”œโ”€โ”€ LICENSE-MIT
โ”œโ”€โ”€ MANIFEST.in
โ”œโ”€โ”€ README.md
โ”œโ”€โ”€ README_fr.md
โ”œโ”€โ”€ TEMPLATE.md
โ”œโ”€โ”€ pylintrc
โ”œโ”€โ”€ pyproject.toml
โ”œโ”€โ”€ requirements.txt
โ”œโ”€โ”€ setup.cfg
โ””โ”€โ”€ setup.py

License ๐Ÿ“œ

The project is licensed under the terms of both the MIT license and the Apache License (Version 2.0).

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

talkwave-0.0.6.tar.gz (18.4 kB view details)

Uploaded Source

Built Distribution

talkwave-0.0.6-py2.py3-none-any.whl (18.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file talkwave-0.0.6.tar.gz.

File metadata

  • Download URL: talkwave-0.0.6.tar.gz
  • Upload date:
  • Size: 18.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.16

File hashes

Hashes for talkwave-0.0.6.tar.gz
Algorithm Hash digest
SHA256 a391ef0497e0c1f3cf4f5da82daeef5edefc4b3e2a830c1ee20de348e6a571db
MD5 3d61bd236dc9f09480619fd9c6f5df8c
BLAKE2b-256 9e204d356c75835c675f5dda07f0462391709b0b6a2b949761c45a2481f4621e

See more details on using hashes here.

File details

Details for the file talkwave-0.0.6-py2.py3-none-any.whl.

File metadata

  • Download URL: talkwave-0.0.6-py2.py3-none-any.whl
  • Upload date:
  • Size: 18.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.16

File hashes

Hashes for talkwave-0.0.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 6b62499c49835672aeee8c829e1811cbbcbe3e0d13dd0e0808568bfeea9d732d
MD5 47a55ea04653b9975c1dfc7305c4e506
BLAKE2b-256 55842fe5168bc858017a3897e62c16fbf756d733a09bf696d9cb2546ef09bfef

See more details on using hashes here.

Supported by

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