SkellyBot 1.0 Help

2024-02-12-Project-Planning-Notes

JSM

User Stories for SkellyBot Software

Nightly Tasks

  • Configure cron jobs to:

    • Send messages to users

    • Extract data from a server

    • Process stored data

  • Configurable via DMs or as an embed in the server

Vector Store Memory

  • Add vector store memory to the bot

  • Set context as part of chat functionality configuration

Data Analysis Jobs

  • Analyze gathered data from the server

  • Summarize chats and extract tags

  • Attach analyses to cron jobs

Data-Based Messaging

  • Send messages based on data from the server

  • Run analysis on user data and send reports

  • Set message duration and frequency through backend or config file system

Developer Perspective on User Stories

Nightly Tasks Implementation

  • Implement a cron job module in the core process

    • Trigger independently of any interface

  • Configuration through Discord

    • Use slash commands or message context commands

    • Accept configuration files in JSON or YAML format

    • Utilize Discord attachment handler for file loading

  • Cron job module to create and track jobs

    • Ensure triggering at correct intervals

Vector Store Memory Development

Processing Step
  • Message processing through AI module for:

    • Tag extraction

    • Summarization

    • Vector embedding

  • Core database models to include:

    • Tags

    • Summaries

    • Embeddings

Database Integration
  • Processing assumed to be part of database entry route

  • Option to trigger processing on the entire database

AI Data Extraction
  • Extract AI data from messages upon changes

  • Options for reprocessing:

    • Immediate for each change

    • Incremental updates

    • Utilizing local models for cost efficiency

Retrieval Augmented Generation
  • Set up retrievers as AI tools

  • Use large language models to:

    • Determine context relevance

    • Generate queries from inputs

  • Stuff retrieved data into chat context

  • Track metadata of extracted documents

  • Include sources in the response to users

  • Attach retrieval reports to messages in a presentable format

Data Analysis Jobs and Database Messaging
  • Sending processed data to users, channels, or servers

Types of Analyses
  • Volume and structure analyses:

    • Counting messages, characters, tokens, chats, channels, servers

  • Natural language processing tasks:

    • Summarizing chats

    • Extracting tags

    • Vector store embeddings

    • Running prompts for data processing

Summarization and Tag Extraction
  • Raw summarization

  • Simple analysis tasks with basic prompts

Analyses Requiring Additional Documents
  • Analyses dependent on external references

  • Example: Cron job sending feedback to a student based on rubric progress

    • Evaluate student's conversation and assignment data

    • Message students about their progress, plan adjustments, or action changes

Last modified: 22 February 2024