Run an AI-powered Discord bot from the comfort of your laptop.
 
 
Go to file
Bruce MacDonald cda0ea2f1a embed knowledge using chromadb embeddings 2024-03-03 23:04:16 -05:00
.gitignore gitignore .DS_Store files 2024-03-03 17:35:05 -05:00
Dockerfile Update README.md 2023-11-01 15:16:18 -07:00
LICENSE Initial commit 2023-07-30 12:43:45 -07:00
Modelfile Update Modelfile 2024-02-02 15:09:40 -08:00
README.md Update README.md 2023-11-01 15:16:18 -07:00
compose.yaml add chroma to docker compose 2024-03-03 22:55:19 -05:00
discollama.py embed knowledge using chromadb embeddings 2024-03-03 23:04:16 -05:00
poetry.lock embed knowledge using chromadb embeddings 2024-03-03 23:04:16 -05:00
pyproject.toml embed knowledge using chromadb embeddings 2024-03-03 23:04:16 -05:00

README.md

discollama

discollama is a Discord bot powered by a local large language model backed by Ollama.

Dependencies

  • Docker and Docker Compose

Run discollama.py

DISCORD_TOKEN=xxxxx docker compose up

Note: You must setup a Discord Bot and set environment variable DISCORD_TOKEN before discollama.py can access Discord.

discollama.py requires an Ollama server. Follow the steps in jmorganca/ollama repository to setup Ollama.

By default, it uses 127.0.0.1:11434 which can be overwritten with OLLAMA_HOST.

Note: Deploying this on Linux requires updating network configurations and OLLAMA_HOST.

Customize discollama.py

The default LLM is mike/discollama. A custom personality can be added by changing the SYSTEM instruction in the Modelfile and running ollama create:

ollama create mymodel -f Modelfile

This can be changed in compose.yaml:

environment:
  - OLLAMA_MODEL=mymodel

See jmorganca/ollama for more details.

Activating the Bot

Discord users can interact with the bot by mentioning it in a message to start a new conversation or in a reply to a previous response to continue an ongoing conversation.