Skip to content

C-Nedelcu/talk-to-chatgpt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Talk-to-ChatGPT is a Google Chrome and Microsoft Edge extension that allows users to talk with the ChatGPT AI using their voice (speech recognition), and listen to the bot's answer with a voice (text-to-speech), rather than just by typing. With this tool, users can speak to the AI and receive spoken responses, making the interaction feel more natural and conversational. This allows you to have your own personal assistant in the style of Iron Man's Jarvis, which is fun, but it's also a great way to help the elderly and people with disabilities interact with ChatGPT. We now support ElevenLabs API integration, which means you can create your own voices for text-to-speech!

The extension can be downloaded from here:

After installing the extension, open or reload the ChatGPT page ( https://chat.openai.com/ ) and you should be seeing a 'Start' button on the top right corner of the page. After you click Start, you will be asked for permission to use your Microphone. This is required to enable voice recognition.

Talk-to-GPT Widget

Once started, Talk-to-ChatGPT displays a menu on the top right corner of the page where users can access settings (such as voice, language, and more), skip the current message, toggle voice recognition on or off, and toggle text-to-speech on or off.

The settings menu can be seen below. Settings are saved in a cookie and reloaded automatically each time you activate the script.

Talk-to-GPT Settings 1

Talk-to-GPT Settings 2

Demo V2.6 with ElevenLabs support: https://www.youtube.com/watch?v=gnijfWuenKA

How to install

Option 1: CHROME or EDGE STORE

Option 2: MANUAL INSTALL

If the extension is temporarily unavailable (this can happen when OpenAI make breaking changes), or if you want to install the latest updates before they are available on the Chrome/Edge web store, you can install the extension manually. Here is how you do it.

  1. Download the .zip file here: https://github.com/C-Nedelcu/talk-to-chatgpt/raw/main/chrome-extension/chrome-extension.zip (this link will always point to the latest version)
  2. Extract the .zip file in a folder somewhere
  3. Follow this tutorial to install the extension in Chrome/Edge in dev mode: https://webkul.com/blog/how-to-install-the-unpacked-extension-in-chrome/

FAQ

Q: Which web browsers are supported? A: This extension is designed for Google Chrome and Microsoft Edge, desktop version only. The extension will not work in any other web browser, especially not mobile browsers, because these browsers do not support the necessary APIs for speech recognition and speech synthesis.

Q: Can you make it speak faster or in a different voice or language? A: Yes, use the settings menu. You can select a variety of settings among which the speech rate, voice type, and language.

Q: What is the purpose of this project? A: Originally, it was mostly a fun proof of concept. This AI is mind-bogglingly intelligent and I had a deep desire to converse with it orally, to make it more interesting. Surely OpenAI themselves will make a proper voice-controlled version of ChatGPT in the future, at which point my project will be rendered useless. For now, it seems to be helping people with disabilities / visually impaired people, so I'm going to be actively working on the project for as long as I can, as a form of contribution to society.

Q: Is it safe to use? A: Yes, it's simple javascript code that will execute only in the context of the ChatGPT webpage. It doesn't request any particular permissions, and it is fully open source. As soon as you navigate away from ChatGPT, everything is cleared, except for the addon settings.

Q: Will it always work? A: it might not work indefinitely, and here's why. The code is based on the current HTML structure of the ChatGPT page. If OpenAI change the HTML code, this project will likely stop working. I will probably keep updating it to maintain compatibility, but I'm not sure I'll be doing that forever. If you want to contribute to the project you are more than welcome to submit your own changes through Github.

Q: I have an error or a problem... A: Feel free to update the javascript yourself and propose changes on Github, or simply report the issue if you aren't a programmer.

Q: Can I make changes to your code? A: Yes, feel free to make changes, and do whatever you want, commit, fork, just have fun.

Q: How do I know what languages are supported? A: this is entirely based on the web browser APIs (Google Chrome, Microsoft Edge), so you need to ask Google or Microsoft, as I cannot provide an up-to-date answer. I've only tested it with English, French, and Chinese. The languages in the settings menu are the same ones found on the Google and Edge demos.

Press coverage

Talk-to-ChatGPT has been receiving press coverage since its release. It is currently featured on the following sites:

Change log

Version 2.9.0 - December 3rd, 2023

  • New: added Azure Text-To-Speech (#210) Full credits: lout33
  • Updated: ElevenLabs - added eleven_english_sts_v2 and eleven_turbo_v2 models
  • Fixed: ElevenLabs - cloned voices can now be used with all models (#200)

Version 2.8.1 - October 9th, 2023

  • Fixed: conflict with OpenAI's new image upload functionality (#189)

Version 2.8.0 - September 30th, 2023

  • Updated: more compact widget (#186)
  • Updated: lot of code refactoring and cleanup (credit: PxPerfectMike)

Version 2.7.2 - September 23rd, 2023

  • New: added an option to prevent the text-to-speech engine from reading emojis (#166) Credit: PxPerfectMike
  • Updated: added a note in the voice command setting area to remind users that voice control only works when the microphone is active
  • Fixed: red bar indicating microphone activity didn't activate after a pause or complete stop

Version 2.7.1 - September 17th, 2023

  • Updated: initial position of the widget lowered a bit so that the ChatGPT 'Share Chat' icon is visible (#163)
  • Updated: in the ElevenLabs voice list, it is possible to select v1 or v2 multilanguage model
  • Fixed: monolingual voices in ElevenLabs didn't work in v2.7.0 due to a mistake in the API code

Version 2.7.0 - September 16th, 2023

  • New: browser warning on first use to better inform those who are not running supported browsers
  • Updated: switched to ElevenLabs v2 models for better text-to-speech quality (#168)
  • Fixed: CRITICAL - ElevenLabs text-to-speech stopped working due to a CSP update from OpenAI. All ElevenLabs TTS playback was migrated to 'offscreen' (#177, #176, #169...)
  • Fixed: prevented commas within numbers from breaking sentences (Credit: decfrr)

Version 2.6.1 - June 3rd, 2023

  • Fixed: major issue with ChatGPT page update preventing from sending the prompt (#127, #128, #129, #130, #131)
  • Fixed: saving settings wasn't working when the list of system text-to-speech voices was empty (#125)

Version 2.6.0 - April 29th, 2023

  • New: ElevenLabs API support (#70, #41, #34)
  • Updated: beep tone at the start instead of saying 'OK', so as to avoid consuming ElevenLabs quota
  • Fixed: stability improvements

Version 2.5.0 - April 25th, 2023

  • New: beep tones when pausing and unpausing (#83)
  • Updated: the pause word will work even when spoken twice instead of once, to tackle issue with the speech recognition API
  • Updated: settings menu divided into sections
  • Fixed: forbid punctuation in voice commands as they may break settings storage
  • Fixed: text-to-speech sometimes wouldn't work when 'skip code blocks' option was enabled due to jQuery issue

Version 2.4.0 - April 24th, 2023

  • New: the widget can be dragged around
  • Fixed: issue with jQuery being unable to read message contents and speak out loud

Version 2.3.0 - April 18th, 2023

  • New: option to skip code blocks while reading bot's response (#17)
  • Fixed: when speech recognition returns an empty sentence, this could cause the addon to disfunction (#72)

Version 2.2.0 - April 16th, 2023:

  • New: 'pause' vocal command was revamped. When you say the pause word, the addon will continue listening but won't send anything to ChatGPT. To resume normal functionality, say the pause word again, or click the Resume button
  • Updated: minor UI and text updates here and there
  • Bugfix: when the addon is started in the middle of a conversation with ChatGPT, the last message received was always spoken out loud. It won't be the case anymore.

Version 2.1.0 - April 15th, 2023:

  • New: UI was revamped. Credits to pixelsoda and Shaun James

Version 2.0.2 - April 15th, 2023:

  • Fixed: the addon will properly activate on every ChatGPT conversational pages

Version 2.0.1 - April 14th, 2023:

  • Fixed: the ChatGPT URL was changed by OpenAI, therefore disabling the addon

Version 2.0.0 - April 10th, 2023:

  • New: keyboard shortcuts to control the addon. The shortcuts are listed in the settings menu or appear when you move the mouse over the UI buttons
  • New: an option to avoid breaking down sentences with commas or other punctuation marks such as colons and semicolons
  • Fixed: vocal commands such as the stop and pause words wouldn't always work because the speech recognition would add a dot at the end

For older change logs, please check the commit messages: https://github.com/C-Nedelcu/talk-to-chatgpt/commits/main

Donations

Thanks for reading all the way down. Are you enjoying Talk-To-ChatGPT and want me to continue improving it? You can help by making a donation to the project. Please click the Donate button to proceed.

paypal

About

Talk to ChatGPT AI using your voice and listen to its answers through a voice

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published