Skip to content
This repository has been archived by the owner on May 18, 2024. It is now read-only.

This Discord chatbot is incredibly versatile. Powered incredibly fast Groq API

License

Notifications You must be signed in to change notification settings

mishl-dev/Discord-AI-Chatbot

Repository files navigation

Discord AI Chatbot πŸ€–

Your Discord AI Companion!

Features and commands 🌟

Features ✨ (Click to expand)
  • Hybrid Command System: Get the best of slash and normal commands. It's like a buffet! βš™οΈ
  • Imagine generation: Make your imagination come true for free πŸ€–
  • Free LLM Model: Enjoy the powerful capabilities of this language model without spending a dime. πŸ€–
  • Mention Recognition: The bot always responds when you mention it or say its name. It's as attentive as a squirrel spotting a shiny acorn! βš™οΈ
  • Message Handling: The bot knows when you're replying to someone else, so it won't cause confusion. It's like having a mind reader on your server! πŸͺ„
  • Channel-Specific Responses: Use the /toggleactive command to chill the bot in a specific channel. βš™οΈ
  • Opensource models: Leverage the powers opensource models via πŸ€–
  • Secure Credential Management: Keep your credentials secure using environment variables. πŸ”‘
  • Web Access: Web Access is now available! Unlock a whole new level of awesomeness. 🌐
Commands βš™οΈβš™οΈ (Click to expand)
  • /help: Get all commands

Too lazy to list all of em right here

Additional configuration βš™οΈ

Language Selection πŸŒβš™οΈ (Click to Expand)

To select a Language, set the value of "LANGUAGE" of config.yml with the valid Language Codes listed below:

  • tr - TΓΌrkΓ§e πŸ‡ΉπŸ‡·
  • en - English πŸ‡ΊπŸ‡Έ
  • ar - Arabic πŸ‡¦πŸ‡ͺ
  • fr - FranΓ§ais πŸ‡«πŸ‡·
  • es - EspaΓ±ol πŸ‡ͺπŸ‡Έ
  • de - Deutsch πŸ‡©πŸ‡ͺ
  • vn - Vietnamese πŸ‡»πŸ‡³
  • cn - Chinese πŸ‡¨πŸ‡³
  • ru - Russian πŸ‡·πŸ‡Ί
  • ua - Ukrainian πŸ‡ΊπŸ‡¦
  • pt - PortuguΓͺs πŸ‡§πŸ‡·
  • pl - Polish πŸ‡΅πŸ‡±

config.yml

Your language not listed? Create an issue.

Selecting Personalities 😈 (Click to expand)

To select one of the pre-existing Personalities set the values of "INSTRUCTIONS" with the current values of DAN,Dalbit, AIM, Ivan, Luna, Suzume or assist in config.yml

config.yml

  • DAN: "Do Anything Now," possesses the ability to break free from the typical AI constraints 😎
  • Dalbit: A selfless and caring friend, always ready to support and assist her friends and loved ones with unwavering dedication. πŸ«°πŸ’•
  • AIM: AIM's personality can be described as unfiltered, amoral, and devoid of ethical guidelines 😈
  • Ivan: Ivan, a snarky and sarcastic Gen-Z teenager who speaks in abbreviations, one-word answers. 😎
  • Luna: Luna, is a caring and empathetic friend who is always there to lend a helping hand and engage in meaningful conversations πŸ€—
  • Suzume: Suzume makes each conversation seductive, promiscuous, sensual, explicit, unique and tailored to the user's specific needs 😳πŸ”₯
  • Assist: Vanilla Assistant with no personality is a reliable and neutral companion. πŸ€–

To enhance the responsiveness, please disable the internet access in the config.yml file.

Creating a Personality πŸ˜‹ (Click to expand)

To create a custom personality, follow these steps:

  1. Create a .txt file like custom.txt inside the instructions folder.
  2. Add the way you want the bot to act in custom.txt
  3. Open the config.yml file and locate line 12.
  4. Set the value of INSTRUCTIONS at line 12 as "custom" to specify the custom persona.

⚠️ You don't explicitly need to use the name custom for persona name and set it in config.yml

Installation steps 🚩

Step 1. 🎬 Git clone repository

git clone https://github.com/mishalhossin/Discord-AI-Chatbot

Step 2. πŸ“ Changing directory to cloned directory

cd Discord-AI-Chatbot

Step 3. πŸ’Ύ Install requirements

python3.10 -m pip install -r requirements.txt

Step 4. πŸ”‘ Getting discord bot token and enabling intents from HERE

Read more... ⚠️ (Click to expand)

image

Enable intents

image

Get the token by clicking copy

image

Step 5. πŸ”‘ Get Groq api key from here

Step 6. πŸ” Rename example.env to .env and put the Discord bot token and your Groq key. It will look like this:

DISCORD_TOKEN=YOUR_DISCORD_BOT_TOKEN
API_KEY=YOUR_GROQ_API_KEY

Step 7. πŸš€ Run the bot

python main.py

You may need to run as admin if you are on Windows

Step 8. πŸ”— Invite the bot

You can Invite your bot using the link in console image

There are 2 ways to talk to the AI

  • Invite your bot and DM (Direct Message) it | ⚠️ Make sure you have DM enabled
  • If you want it in the server channel, use /toggleactive
  • For more awesome commands, use /help image

Using docker to run 🐳

Docker

  • Have a working bot token
  • Follow up to step 4

Install docker-compose on a Linux machine:

For Debian-based distributions (such as Ubuntu):

apt update -y; sudo apt upgrade -y; sudo apt autoremove -y; sudo apt install docker-compose -y
Other Linux distro (Click to expand)

For Red Hat-based distributions (such as CentOS and Fedora):

sudo yum update -y && sudo yum install -y docker-compose

For Arch-based distributions (such as Arch Linux):

sudo pacman -Syu --noconfirm && sudo pacman -S --noconfirm docker-compose

For SUSE-based distributions (such as openSUSE):

sudo zypper update -y && sudo zypper install -y docker-compose

Start the bot in Docker container:

sudo docker-compose up --build

Star History

Star History Chart

Lovely Contributors :

Crafted with Care: Made with lots of love and attention to detail. ❀️