Package: pyrobbot
pyRobBotChat with GPT LLMs over voice, UI & terminal.All with access to the internet.PyRobBot is a python package that uses OpenAI'sGPT large language models (LLMs)to implement:A fully configurablepersonal assistantthat can speak and listen to youAn equally fully configurable text-basedchatbotthat can be used either via web UI or terminalFeaturesPersonal assistant with text-to-speech and speech-to-text capabilitiesTalk to the GPT assistant and the assistant will talk back to you!Choose your preferred language (e.g.,rob --lang pt-br)Choose your preferred Text-to-Speech (TTS) engine (e.g.,rob --tts google)OpenAI Text-to-Speech(default): AI-generatedhuman-likevoiceGoogle TTS: free at the time being, with decent qualityChoose your preferred Speech-to-Text (STT) engineAlso between OpenAI and Google (default)Web browser UI (made withStreamlit)Add/remove conversations dynamicallyAutomatic/editable conversation summary titleInput via text or voiceTerminal UIFor a more "Wake up, Neo" experienceInternet access: The assistent willsearch the weband to find the answers it doesn't have in its training dataE.g. current events, weather forecasts, etc.Fully configurableSupport for multiple GPT LLMsControl over the parameters passed to the OpenAI API, with (hopefully) sensible defaultsAbility to pass base directives to the LLME.g., to make it adopt a persona, but you decide which directived to passDynamically modifiable AI parameters in each chat separatelyNo need to restart the chatAutosave & retrieve chat historyIn the browser UI, you can even read the transcripts of your voice conversations with the AIChat context handling usingembeddingsEstimated API token usage and associated costsOpenAI API key isneverstored on diskSystem RequirementsPython >= 3.9A validOpenAI API keySet in the Web UI or through the environment variableOPENAI_API_KEYTo enable voice chat, you also need:PortAudioInstall on Ubuntu withsudo apt-get --assume-yes install portaudio19-dev python-all-devInstall on CentOS/RHEL withsudo yum install portaudio portaudio-develffmpegInstall on Ubuntu withsudo apt-get --assume-yes install ffmpegInstall on CentOS/RHEL withsudo yum install ffmpegInstallationThis, naturally, assumes your system fulfills allrequirements.Using pippipinstallpyrobbotFrom sourcepipinstallgit+https://github.com/paulovcmedeiros/pyRobBot.gitBasic UsageUpon succesfull installation, you should be able to runrob[opts]SUBCOMMAND[subcommand_opts]where[opts]and[subcommand_opts]denote optional command line arguments
that apply, respectively, torobin general and toSUBCOMMANDspecifically.Please runrob -hfor informationabout the supported subcommands
and generalroboptions. For info about specific subcommands and the
options that apply to them only,please runrob SUBCOMMAND -h(note
that the-hgoes after the subcommand in this case).Chatting by Voice (default)robUsing the Web UIrobuiSee also ourdemo Streamlit app!Running on the Terminalrob.DisclaimersThis project's main purpose has been to serve as a learning exercise for me, as well as tool for experimenting with OpenAI API, GPT LLMs and text-to-speech/speech-to-text.While it does not claim to be the best or more robust OpenAI-powered chatbot out there, itdoesaim to provide a friendly user interface that is easy to install, use and configure.Feel free to open anissueor, even better,submit a pull requestif you find a bug or have a suggestion.Last but not least: This project isindependently developedandnotaffiliated, endorsed, or sponsored by OpenAI in any way. It is separate and distinct from OpenAI’s own products and services.