Skip to content

Commit

Permalink
Update duckduckgo version. Update readme.
Browse files Browse the repository at this point in the history
  • Loading branch information
paulovcmedeiros committed Mar 4, 2024
1 parent 8a8f7e3 commit 6ec88ed
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 12 deletions.
21 changes: 13 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<div align="center">

[![pyrobbot-logo](https://github.com/paulovcmedeiros/pyRobBot/blob/main/pyrobbot/app/data/assistant_avatar.png?raw=true)]((https://github.com/paulovcmedeiros/pyRobBot))
# <code>[pyRobBot](https://github.com/paulovcmedeiros/pyRobBot)</code><br>Chat with GPT LLMs over voice, UI & terminal.<br>All with access to the internet.
# <code>[pyRobBot](https://github.com/paulovcmedeiros/pyRobBot)</code><br>Chat with GPT LLMs over voice, text or both.<br>All with access to the internet.

[![Pepy Total Downlods](https://img.shields.io/pepy/dt/pyrobbot?style=flat&label=Downloads)](https://www.pepy.tech/projects/pyrobbot)
[![PyPI - Version](https://img.shields.io/pypi/v/pyrobbot)](https://pypi.org/project/pyrobbot/)
Expand All @@ -17,9 +17,7 @@

</div>

PyRobBot is a python package that uses OpenAI's [GPT large language models (LLMs)](https://platform.openai.com/docs/models) to implement:
* A fully configurable **personal assistant** that can speak and listen to you using AI-generated **human-like voices**
* An equally fully configurable text-based **chatbot** that can be used either via web UI or terminal
PyRobBot is a python package that uses OpenAI's [GPT large language models (LLMs)](https://platform.openai.com/docs/models) to implement a fully configurable **personal assistant** that, on top of the traditional chatbot interface, can also speak and listen to you using AI-generated **human-like** voices.


## Features
Expand All @@ -32,15 +30,22 @@ Features include, but are not limited to:

- [x] Internet access: The assistent will **search the web** to find the answers it doesn't have in its training data
- E.g. latest news, current events, weather forecasts, etc.

- [x] Web browser UI (made with [Streamlit](https://pyrobbot.streamlit.app))
- Voice chat with continuous voice input and output
- Plus, a familiar interface for those who prefer a traditional chatbot experience
- Powered by [DuckDuckGo Search](https://github.com/deedy5/duckduckgo_search)

- [x] Web browser user interface
- See our [demo app on Streamlit Community Cloud](https://pyrobbot.streamlit.app)
- Voice chat with:
- **Continuous voice input and output** (using [streamlit-webrtc](https://github.com/whitphx/streamlit-webrtc))
- If you prefer, manual on/off toggling of the microphone (using [streamlit_mic_recorder](https://github.com/B4PT0R/streamlit-mic-recorder))
- A familiar text interface integrated with the voice chat, for those who prefer a traditional chatbot experience
- Your voice prompts and the assistant's voice replies are shown as text in the chat window
- You may also send promts as text even when voice detection is enabled
- Add/remove conversations dynamically
- Automatic/editable conversation summary title
- Autosave & retrieve chat history
- Resume even the text & voice conversations started outside the web interface


- [x] Chat via terminal
- For a more "Wake up, Neo" experience

Expand Down
11 changes: 7 additions & 4 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
[tool.poetry]
authors = ["Paulo V C Medeiros <impaulov@gmail.com>"]
description = "Chat with GPT LLMs over voice, UI & terminal. All with access to the internet. Powered by OpenAI."
description = """\
Chat with GPT LLMs over voice, text or both. With access to the internet.\
Powered by OpenAI.\
"""
license = "MIT"
name = "pyrobbot"
readme = "README.md"
version = "0.7.3"
version = "0.7.4"

[build-system]
build-backend = "poetry.core.masonry.api"
Expand Down Expand Up @@ -34,13 +37,13 @@
audio-recorder-streamlit = "^0.0.8"
beautifulsoup4 = "^4.12.3"
chime = "^0.7.0"
duckduckgo-search = {url = "https://github.com/deedy5/duckduckgo_search/archive/refs/tags/v5.0b1.tar.gz"}
duckduckgo-search = {version = "5.0b1", allow-prereleases = true}
gtts = "^2.5.1"
httpx = "^0.26.0"
ipinfo = "^5.0.1"
pydub = "^0.25.1"
pygame = "^2.5.2"
setuptools = "^68.2.2" # Needed by webrtcvad-wheels
setuptools = "^68.2.2" # Needed by webrtcvad-wheels
sounddevice = "^0.4.6"
soundfile = "^0.12.1"
speechrecognition = "^3.10.0"
Expand Down

0 comments on commit 6ec88ed

Please sign in to comment.