Skip to content

Latest commit

 

History

History
51 lines (44 loc) · 2.39 KB

README.md

File metadata and controls

51 lines (44 loc) · 2.39 KB

Exo

The jankiest project you ever did see

Exo is the platform for running custom conversational AI models. To train your own, see the model creation repository here

Installation

Clone the repository and modify the config files found in 'config/'

generation_config

  • Set the model path

rxConfig

  • Set any username as the 'custom_player' (Used so the AI can keep track of who's who)
  • Set the User ID's of users to have elevated priveliges. Discord IDs are formatted as 'DISCORD-', Telegram IDs are 'TELEGRAM-', and Terminal is simply 'TERMINAL'.
    • Sudoers have access to commands that affect their experience, such as debugging their chat. Operators have access to commands that directly affect how the AI is operating for everyone, as well as seeing system and model information.
  • If using Telegram and/or Discord, set the token values while setting up the bot in the 'Usage' section.

Usage

The Main File

'core.py' is the file that runs the model itself. To interface with the model, this file must be running alongside the interface.

Terminal Access

Run 'interfaces/exo-terminal.py' to open a chat in the terminal with the AI. This uses the user ID 'TERMINAL'.

Telegram Integration

Use exo-telegram.py, along with a bot API token, to host your AI on Telegram. Run 'interfaces/exo-telegram.py' to connect the Discord bot to the AI.

Discord Integration

Use exo-discord.py, along with a bot API token, to host your AI on discord. Run 'interfaces/exo-discord.py' to connect the Discord bot to the AI. A good guide for setting up a discord bot can be found here.

Custom Integration

  • Connect to socket at address 127.0.0.1 on port 25077
import socket
sock = socket.socket()
sock.connect(("127.0.0.1", 25077))
sock.sendall(b'userid://message')
data = sock.recv(16384)
data = data.decode()
sock.close()
print(data)
>>> 'response'

Contributing

Contributing is greatly appreciated, please contact one of the team members to get started working on the codebase.

More information

Recent Changes

  • Added user timeout, history and user status get cleared after 10 minutes.

Todo

Core

  • Add response ranking via a point system
  • Add sentiment analysis for proper emotions