This repository contains three distinct Discord bots, each utilizing large language models (LLMs) for different purposes: Syntax, Satoshi, and Lain. Each bot provides unique functionalities, from coding assistance to image analysis and conversational interactions.
- Syntax: A bot designed to assist with code generation, code improvement, debugging, and explanations using a coding-focused LLM model.
- Satoshi: A bot designed for image analysis, allowing users to upload images for detailed LLM-powered insights.
- Lain: A conversational bot designed for reflective interactions, leveraging an LLM model to respond intelligently to user prompts.
- Python 3.8+
- Discord bot tokens for each respective bot
- Ollama
-
Clone the Repository:
git clone https://github.com/pet6r/DiscordWhispers.git cd DiscordWhispers -
Install Dependencies: Install all dependencies required for running any of the three bots:
pip install -r requirements.txt
-
Set Up Environment Variables: Each bot requires its own Discord bot token to run. You will need to create a
.envfile and add your tokens. Use the following template:# For running Syntax: SYNTAX_TOKEN=your-syntax-bot-token # For running Satoshi: SATOSHI_TOKEN=your-satoshi-bot-token # For running Lain: LAIN_TOKEN=your-lain-bot-token
-
Running the Bots:
- Syntax: A bot for assisting with code-related tasks:
python syntax.py
- Satoshi: A bot that analyzes images uploaded to Discord:
python satoshi.py
- Lain: A conversational bot designed for reflective interactions:
python lain.py
- Syntax: A bot for assisting with code-related tasks:
- Changing the LLM Model: Each bot uses a different LLM model by default (e.g.,
deepseek-coder-v2for Syntax,dolphin-llama3:8bfor Lain). You can update the models by editing thechat_with_*function inside each bot's script. Use Ollama to download various models.
-
Syntax: Mention
@Syntaxin a message for coding-related questions:@syntax can you help me write a Python function? -
Satoshi: Upload an image and mention
@Satoshito receive insights:@Satoshi what do you see in this image? -
Lain: Mention
@Lainfor a reflective, concise conversation:@Lain what is the meaning of life?