Giter Site home page Giter Site logo

rzmk / discord-palm-bot Goto Github PK

View Code? Open in Web Editor NEW
5.0 1.0 1.0 212 KB

๐ŸŒด A Discord bot that integrates with LangChain to provide an ongoing chat. Currently supports Google PaLM & Docker setup.

License: MIT License

Python 99.27% Dockerfile 0.73%
bot chatbot discord discord-py google-palm llm palm python discord-bot discordpy

discord-palm-bot's Introduction

Mueez Khan

Software engineer.

  • ๐Ÿ“‚ Portfolio: mueezkhan.com
  • ๐Ÿ’ผ Building qsv pro and 100.dathere.com
    • Software Engineer - datHere (Sep. 2023 - Present)
    • Software Engineer Intern - datHere (Summer 2023)
    • Intern - Rearc (Summer 2022)
  • ๐ŸŽ“ Bachelor's in Computer Science from Rutgers University (2020-2024)
  • Recently working with Rust, Python, & TypeScript
LinkedIn RSS

discord-palm-bot's People

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

kris591

discord-palm-bot's Issues

`/context`: Allow users to change the bot context

The current context for the bot is hard-coded to represent a Discord bot with the display name it has:

context=f"Be a helpful Discord bot named '{name}', and you will be referred to as '@{name}'.",

We'll want to allow users to modify this context so it doesn't hinder generated output. A /context command could be useful for this.

`/scope`: Global/Server/Channel chat history context

The bot may save its chat history as the same regardless of the Discord server/channel it's being used in, but we may want it to have its chat history on a per server or per channel basis.

A /scope command can allow for using specific contexts such as global (same context regardless of server/channel), server (for an individual server), and channel (for an individual channel).

GitHub Action workflow to deploy image to Docker Hub

๐Ÿ” Is your feature request related to a problem? Please describe.

#9 may require pulling an image from an online source, and also users may want to pull the bot as a Docker image.

๐Ÿ’ก Describe the solution you'd like.

Set up a GitHub Action workflow to build and deploy the Docker image to Docker Hub. May also need to update README.md.

`/docs`: A website for documenting the bot's features/installation/etc.

๐Ÿ” Is your feature request related to a problem? Please describe.

The README.md is viewed as a single page and can get very long. A docs site might make it easier for new users to learn how to use the bot and what its features are.

๐Ÿ’ก Describe the solution you'd like.

  • Choose a docs site tool (see below).
  • Build a documentation site with relevant sections users can go to learn more about the bot and how to use it along with its features.
  • A /docs command on the bot to provide the link to the documentation site.
  • Include the link to the documentation site in the /help command's embed output.
  • Add the link to README.md.
  • Add the link to the repo's website setting.

โ„น Additional context

Potential docs site tools:

Docker build fails because of dependancies

๐Ÿ” Describe the bug

Docker build fails because of dependencies
Failed module: aiohttp

๐Ÿ”„ To Reproduce

Steps to reproduce the behavior:

Follow the build instructions from the README:
Failed at step: docker build -t discord-llm-bot .

Resolution

I am not sure where the conflict exists but editing Dockerfile from FROM python:latest to FROM python:3.10 seems to have resolved the issue.

LangChain integration

I'd like to have the user to be able to choose the LLM and model they'd like to use (i.e. OpenAI's GPT chat models). May consider integrating with LangChain for potential future integrations with other models such as local LLMs and other neat features like talking to the bot about uploaded files.

Also, we may need to rename the repo/bot to something else once implemented, and I'd like to keep it relatively self-explanatory.

Terraform IaC for AWS deployment

๐Ÿ” Is your feature request related to a problem? Please describe.

Users may want to host the bot on a cloud platform without having to keep the bot running on their local computer.

๐Ÿ’ก Describe the solution you'd like.

  • Provide a sample Terraform infrastructure-as-code (IaC) deployment configuration for deploying the bot to AWS.
  • Update the README.md to include instructions on how to deploy the bot with Terraform to AWS.

๐Ÿ” Describe alternatives you've considered

Deploying to another cloud platform, however this may require different IaC so this can be added incrementally starting with AWS.

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.