Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/persanix-llc/chatrpi-server

Chat for Raspberry Pi (Chatrpi) is a voice assistant for the Raspberry Pi that can hold simple conversations and control GPIO output.
https://github.com/persanix-llc/chatrpi-server

chatgpt endrpi raspberrypi voice-assistant

Last synced: about 1 month ago
JSON representation

Chat for Raspberry Pi (Chatrpi) is a voice assistant for the Raspberry Pi that can hold simple conversations and control GPIO output.

Awesome Lists containing this project

README

        

![Chatrpi logo](https://images.persanix.com/chatrpi/logo-padded.svg)

Chat for Raspberry Pi (Chatrpi) is a voice assistant for the [Raspberry Pi](https://raspberrypi.org)
that can hold simple conversations and control GPIO output.

Powered by [Tensorflow.js](https://www.tensorflow.org/js), [ChatGPT](https://openai.com/chatgpt),
and [Endrpi](https://endrpi.io/).

[![Chatrpi overview](https://img.youtube.com/vi/xTLt72d4CB0/0.jpg)](https://www.youtube.com/watch?v=xTLt72d4CB0)

## Features

* Continuous listening via wake-word detection with configurable name.
* Indefinite conversations with wake-word bypass.
* Conversational GPIO output control with contextual memory.
* Extensible to other boards that accept HTTP requests.

## Supported browsers

* Chrome 116+

## Repositories

1. (this repository) [chatrpi-server](https://github.com/persanix-llc/chatrpi-server) - Serves the front-end and handles
API requests.
2. [chatrpi-app](https://github.com/persanix-llc/chatrpi-app) - Front-end with visualizer and voice
recognition/synthesis.

## Requirements

≥ Node.js 16.0

* Required to install and run the Chatrpi server.
* Installable on the Raspberry Pi or any computer on the same LAN.

≥ Endrpi 1.0

* See the [Endrpi docs](https://endrpi.io/#quickstart) for installation requirements.

ChatGPT API key

* Visit [openai.com](https://openai.com/) to create an account.

## Quickstart

### Raspberry Pi

The following steps should be completed on your Raspberry Pi.

###### Find the IP address:

```bash
hostname -I
```

###### Install and run Endrpi:

```bash
pip3 install -U endrpi && endrpi
```

### Chatrpi host

The following steps can be completed on any computer connected to the same LAN as the Raspberry Pi,
or the Raspberry Pi itself.

###### Verify access to Endrpi

Visit :5000 in your browser.
You should be presented with the Endrpi welcome screen.

###### Set the following environment variables:

```bash
ENDRPI_URL=
OPENAI_KEY=
```

###### Install and run Chatrpi:

```bash
npx @persanix-llc/chatrpi-server@latest
```

## Pull requests

Persanix is **not** currently approving community pull requests for this repository.
Please consider opening an issue for any bugs or feature requests.

All pull requests will be closed without review.

## License

Licensed under the Apache License, Version 2.0.

Copyright © 2020 - 2023 Persanix LLC. All rights reserved.