GithubHelp home page GithubHelp logo

chrisdeadman / open-chatbot-js Goto Github PK

View Code? Open in Web Editor NEW
4.0 1.0 1.0 588 KB

Chatbot with text-generation-webui and ChatGPT 3.5 backend with a sort-of long-term memory.

License: MIT License

JavaScript 9.52% Dockerfile 1.96% Shell 0.04% TypeScript 73.91% Python 2.35% EJS 11.84% CSS 0.38%
chatbot chatgpt discord-bot gpt-3 gpt-4 speech-to-text text-to-speech ai gpt-35 text-generation-webui

open-chatbot-js's Introduction

๐Ÿค– Open Chat Bot

Chatbot with a 'sort-of' long-term memory ๐Ÿง  with Text generation web UI and ChatGPT backend.

๐ŸŒŸ Features

  • Support for multiple clients
    • web: ๐ŸŒ browser based chats (recommended)
    • discord: ๐ŸŽฎ a discord bot you can add to your server
    • terminal: ๐Ÿ’ป terminal based chats
    • sttts: ๐Ÿ—ฃ๏ธ Speech-To-Text & Text-To-Speech
  • Rolling message history
  • Long-term memory using embeddings with Redi๐Ÿ” backend
  • Message correction that feeds corrections back into message history
    (e.g. corrects some command syntax issues)
  • Bots can call Tools (including web-browsing and code execution)
  • Multiple bots can be added to the conversation
    (reuses same model if model config is the same)

๐Ÿ’ฅ Demo

web-client-1

๐Ÿ“ฆ Dependencies

Required

Optional

๐Ÿ› ๏ธ Configuration

Copy an example configuration from data/persistent/settings.example.*.json to data/persistent/settings.json.

๐Ÿš€ Build and run docker image

docker build -t deads-inc/open-chatbot-js .
  • <mode> is one of the implemented clients, e.g. terminal
  • -d selects data/persistent as data directory
  • -b selects one of the backends under data/persistent/backends
  • -t selects one of the turn templates under data/persistent/turn_templates
  • -c selects one of the characters under data/persistent/characters
docker run -it --rm --net=host -v ./data/persistent/:/app/data/persistent/ deads-inc/open-chatbot-js <mode> -d data/persistent -b webui.example.json -t vicuna.json -c eva.example.json

๐Ÿ—๏ธ Build locally

cd ./open-chatbot-js
npm install --omit=dev
npx tsc --project tsconfig.prod.json

๐Ÿž Run/Debug locally

see launch.json

open-chatbot-js's People

Contributors

chrisdeadman avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

annias

open-chatbot-js's Issues

Voice/Audio does not work in docker container

Describe the bug
Voice and audio do not work in docker container, so sttts client only works when running outside of container..

To Reproduce
Steps to reproduce the behavior:

$ docker run -it --rm --net=host -v ./data/settings.json:/app/data/settings.json deads-inc/open-chatbot-js sttts

ERROR: audio-capture
Started listening...
ERROR: audio-capture
Started listening...
ERROR: audio-capture
Started listening...
ERROR: audio-capture

Expected behavior
There should be a way to pipe audio streams.

Desktop (please complete the following information):

  • OS: node:alpine docker
  • Browser chromium
  • Version 112

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.