badgids / OpenKlyde

An AI Discord bot that connects to a koboldcpp instance by API calls. Have a more intelligent Clyde Bot of your own making!
GNU General Public License v3.0
23 stars 9 forks source link
ai api discord discord-bot koboldai koboldcpp llm oobabooga python

OpenKlyde - A Self Hosted AI Discord Bot

OpenKyde is an AI Discord Bot!

It incorporates an AI Large Language Model (LLM) into a discord bot by making API calls to a Koboldcpp instance. It can also work with Oobabooga.

You will need an instance of Koboldcpp running on your machine. In theory, you should also be able to connect it to the Horde, but I haven't tested the implementation yet.

As of now this bot is only a chat bot, but it can also generate images with Automatic1111 Stable Diffusion using the following keywords after mentioning the bot: "send|create|give|generate|draw|snap|show|take|message" and "image|picture|photo|photogragh|pic|drawing|painting|screenshot"

Prerequisites

Download Koboldcpp here: Koboldcpp

If you want to generate images, you'll also need Automatic1111 Stable Diffusion runing with --listen and --api optons enabled on launch. Download Automatic1111 here: Automatic1111

----NEW----:

XTTS support added thanks to Elbios's hard work and changes in their fork!

XTTS

LLAVA image recognition

Stable Diffusion

Koboldcpp, OpenAI API, Mistral API

Additional configuration needed to run the bot

Instructions:

To run this bot:

  1. Load the LLM model of your choice in Koboldcpp
  2. Download this repository OpenKlyde
  3. Open bot.py and at replace API_KEY with your bot's API key
  4. Install the requirements. I suggest using an Anaconda or Miniconda instance. pip install -r requirements.txt
  5. Run the bot with python bot.py
    • optionally with --tts_xtts flag

Cheers!

ToDo: