Shirt Bot is a discord bot which uses GPT-3 to generate text

Overview

SHIRT BOT · License: Unlicense Language: Python 3

Shirt Bot is a discord bot which uses GPT-3 to generate text.
Made by Cyclcrclicly#3420 (474183744685604865) on Discord.
Support Server

EXAMPLES

example1 example2 example3 example4 example5 example6

HELP

COMMAND HELP

ARGUMENT EXPLANATION

            required argument
[argument]            optional argument
[argument=default]    optional argument with a default value
The order of optional arguments matters.

COMMAND ARGUMENTS

max_size      the maximum size in tokens (word segments)
randomness    how random the output message will be as a percentage
chance        how likely the bot is to trigger as a percentage
text          extra text
channel       the channel which the command will affect

COMMANDS

generate [max_size=80] [randomness=45] [text]
  Generates text.
  
trigger [max_size=80] [randomness=45] [text]
  Generates text with the last 15 non-command messages as context.

shirttalk
  In a server    lists shirt talk channels
  In a DM        states if shirt talk is on in the DM channel
shirttalk set [randomness=45] [channel=message channel]
  Sets up a shirt talk channel.
shirttalk unset [channel=message channel]
  Removes a shirt talk channel.

shirtreply
  In a server    lists shirt reply channels
  In a DM        states if shirt reply is on in the DM channel
shirtreply set [randomness=45] [channel=message channel]
  Sets up a shirt reply channel.
shirtreply unset [channel=message channel]
  Removes a shirt reply channel.

shirtrandom
  In a server    lists shirt random channels
  In a DM        states if shirt random is on in the DM channel
shirtrandom set [randomness=45] [chance=5] [channel=message channel]
  Sets up a shirt random channel.
shirtreply unset [channel=message channel]
  Removes a shirt random channel.

reset
  Once the bot encounters this command, it stops collecting further messages as context.

echo 
  Repeats text.

links
  In a server    lists all channels with uncensored links
  In a DM        states if DM channel has (un)censored links
links toggle [channel=message channel]
  Toggles censoring links in a channel.

SHIRT TALK HELP

Shirt talk is a feature of Shirt Bot which lets it automatically reply to all messages sent in a channel.
By default, it's off for all channels, but you can set it up using the shirttalk set command.
The extras that work in shirt talk channels are '#', '# ', and '$ '.
Shirt talk also works in DMs.

SHIRT REPLY HELP

Shirt reply is a feature of Shirt Bot which lets it trigger when you reply to one of the bot's messages.
By default, it's off for all channels, but you can set it up using the shirtreply set command.
The extras which work in shirt reply channels are '#' and '$ '.
Shirt reply also works in DMs.

SHIRT RANDOM HELP

Shirt random is a feature of Shirt Bot which lets it trigger randomly (customizable chance) whenever a message is sent in a channel where it's on.
By default, it's off for all channels, but you can set it up using the shirtman set command.
Extras don't work here.
Shirt random also works in DMs.

PRECEDENCE

Precedence is a way to organize the bot's features into a hierarchy. If a feature is on/triggered, it prevents some other features from triggering.
The precedence is:

  Commands
    if your message is a command, it prevents everything below from triggering

  Shirt talk
    if your message is in a shirt talk channel, it prevents everything below from triggering
    if none of the above features are on/triggered, shirt talk can trigger

  Shirt reply
    if your message replies to shirt bot in a shirt reply channel, it prevents everything below from triggering
    if none of the above features are on/triggered, shirt reply can trigger

  Shirt random
    if none of the above features are on/triggered, shirt random can trigger

EXTRAS

Extras are extra features of Shirt Bot which work in shirt talk and shirt reply. The helps for those list exactly which extras work.
Extras are:

  '#'     if your message only contains '#', Shirt Bot will try to delete the message (unless in a DM) and trigger. This allows you to trigger the bot multiple times without having to type any new messages in between.

  '# '    if your message starts with '# ', Shirt Bot will ignore the message (i.e. won't trigger), but will actually collect the message once an actual trigger occurs. This allows you to type multiple messages before triggering the bot if you wish to do that.

  '$ '    if your message starts with '$ ', it will force Shirt Bot to start its next message with the content of your message. This way, you can force Shirt Bot to say something it otherwise may not have said.

REQUIREMENTS

python - at least 3.6
regex
aiohttp
discord.py - at least 1.6.0

INSTRUCTIONS

  1. Download the source code, put it into a folder, and navigate to the folder.
  2. Install all requirements. You can use pip install -r requirements.txt or install them manually.
  3. Create a config.json file from the config.json.template file and fill it out with the correct information.
  4. Run shirt_bot.py.

CREDIT

All the contents of the encoder folder are from https://github.com/latitudegames/GPT-3-Encoder and are thus licensed with the MIT License.
URL matching regex pattern is from: https://stackoverflow.com/a/17773849

Espial is an engine for automated organization and discovery of personal knowledge

Live Demo (currently not running, on it) Espial is an engine for automated organization and discovery in knowledge bases. It can be adapted to run wit

Uzay-G 159 Dec 30, 2022
Winner system (DAMO-NLP) of SemEval 2022 MultiCoNER shared task over 10 out of 13 tracks.

KB-NER: a Knowledge-based System for Multilingual Complex Named Entity Recognition The code is for the winner system (DAMO-NLP) of SemEval 2022 MultiC

116 Dec 27, 2022
A Semi-Intelligent ChatBot filled with statistical and economical data for the Premier League.

MONEYBALL - ChatBot Module: 4006CEM, Class: B, Group: 5 Contributors: Jonas Djondo Roshan Kc Cole Samson Daniel Rodrigues Ihteshaam Naseer Kind remind

Jonas Djondo 1 Nov 18, 2021
Unifying Cross-Lingual Semantic Role Labeling with Heterogeneous Linguistic Resources (NAACL-2021).

Unifying Cross-Lingual Semantic Role Labeling with Heterogeneous Linguistic Resources Description This is the repository for the paper Unifying Cross-

Sapienza NLP group 16 Sep 09, 2022
TTS is a library for advanced Text-to-Speech generation.

TTS is a library for advanced Text-to-Speech generation. It's built on the latest research, was designed to achieve the best trade-off among ease-of-training, speed and quality. TTS comes with pretra

Mozilla 6.5k Jan 08, 2023
Chinese NER with albert/electra or other bert descendable model (keras)

Chinese NLP (albert/electra with Keras) Named Entity Recognization Project Structure ./ ├── NER │   ├── __init__.py │   ├── log

2 Nov 20, 2022
Transformer-based Text Auto-encoder (T-TA) using TensorFlow 2.

T-TA (Transformer-based Text Auto-encoder) This repository contains codes for Transformer-based Text Auto-encoder (T-TA, paper: Fast and Accurate Deep

Jeong Ukjae 13 Dec 13, 2022
Rich Prosody Diversity Modelling with Phone-level Mixture Density Network

Phone Level Mixture Density Network for TTS This repo contains pytorch implementation of paper Rich Prosody Diversity Modelling with Phone-level Mixtu

Rishikesh (ऋषिकेश) 42 Dec 13, 2022
PyTorch implementation of Microsoft's text-to-speech system FastSpeech 2: Fast and High-Quality End-to-End Text to Speech.

An implementation of Microsoft's "FastSpeech 2: Fast and High-Quality End-to-End Text to Speech"

Chung-Ming Chien 1k Dec 30, 2022
ConferencingSpeech2022; Non-intrusive Objective Speech Quality Assessment (NISQA) Challenge

ConferencingSpeech 2022 challenge This repository contains the datasets list and scripts required for the ConferencingSpeech 2022 challenge. For more

21 Dec 02, 2022
A framework for implementing federated learning

This is partly the reproduction of the paper of [Privacy-Preserving Federated Learning in Fog Computing](DOI: 10.1109/JIOT.2020.2987958. 2020)

DavidChen 46 Sep 23, 2022
Idea is to build a model which will take keywords as inputs and generate sentences as outputs.

keytotext Idea is to build a model which will take keywords as inputs and generate sentences as outputs. Potential use case can include: Marketing Sea

Gagan Bhatia 364 Jan 03, 2023
A retro text-to-speech bot for Discord

hawking A retro text-to-speech bot for Discord, designed to work with all of the stuff you might've seen in Moonbase Alpha, using the existing command

Nick Schorr 23 Dec 25, 2022
Weaviate demo with the text2vec-openai module

Weaviate demo with the text2vec-openai module This repository contains an example of how to use the Weaviate text2vec-openai module. When using this d

SeMI Technologies 11 Nov 11, 2022
A music comments dataset, containing 39,051 comments for 27,384 songs.

Music Comments Dataset A music comments dataset, containing 39,051 comments for 27,384 songs. For academic research use only. Introduction This datase

Zhang Yixiao 2 Jan 10, 2022
This repository contains Python scripts for extracting linguistic features from Filipino texts.

Filipino Text Linguistic Feature Extractors This repository contains scripts for extracting linguistic features from Filipino texts. The scripts were

Joseph Imperial 1 Oct 05, 2021
Word2Wave: a framework for generating short audio samples from a text prompt using WaveGAN and COALA.

Word2Wave is a simple method for text-controlled GAN audio generation. You can either follow the setup instructions below and use the source code and CLI provided in this repo or you can have a play

Ilaria Manco 91 Dec 23, 2022
PyTorch source code of NAACL 2019 paper "An Embarrassingly Simple Approach for Transfer Learning from Pretrained Language Models"

This repository contains source code for NAACL 2019 paper "An Embarrassingly Simple Approach for Transfer Learning from Pretrained Language Models" (P

Alexandra Chronopoulou 89 Aug 12, 2022
A Japanese tokenizer based on recurrent neural networks

Nagisa is a python module for Japanese word segmentation/POS-tagging. It is designed to be a simple and easy-to-use tool. This tool has the following

325 Jan 05, 2023