Skip to content

v0.8.0 - RAG 2.0 MVP

Closed Jun 25, 2024 100% complete

Release Focus: "Chat with your Docs" (RAG)

Users must be able to:

  • Log into the system and authenticate via Keycloak to access their personal profile
  • Upload one or more documents via a file management UI, which are saved to their profile (only they can access)
    • NOTE: Supported formats include .txt and .pdf files, excluding any image content in PDFs
  • Crea…

Release Focus: "Chat with your Docs" (RAG)

Users must be able to:

  • Log into the system and authenticate via Keycloak to access their personal profile
  • Upload one or more documents via a file management UI, which are saved to their profile (only they can access)
    • NOTE: Supported formats include .txt and .pdf files, excluding any image content in PDFs
  • Create one or more Assistants, which are saved to their profile (only they can access)
  • Choose one or more uploaded documents for an Assistant to use via an Assistant management UI
  • Select an Assistant to interact with via the Chat UI
  • Receive context-aware responses when chatting via RAG with the Assistant's selected set of files
  • Chat history is saved to the user profile and can be accessed at a later time; uploaded files and Assistants are also saved

MUST HAVE (Non-negotiable product needs that are mandatory for the team)

  • Implement LeapfrogAI API functionality for file, assistants, vector-store, threads, messages, and run endpoints
  • UI utilizes threads
  • UI implements the ability to create and execute a run with assistants
  • UI switches to using assistants API endpoints for CRUD operations
    • Workaround currently in-place using Sveltekit backend integration with Supabase

SHOULD HAVE (Important initiatives that are not vital, but add significant value)

  • Integrate auth into LeapfrogAI API (authenticates users for requests to Supabase; enables row-level security)
  • UI implements all file management features through the file API endpoints
    • Potential workaround if file not ready is to integrate with Supabase directly, not using the LeapfrogAI API
  • Refactor Supabase deployment to use Istio for ingress instead of kong
  • Database migration in place to confidently maintain data when upgrading to future versions of LeapfrogAI
  • NOTE: If it unblocks front-end progress with minimal rework, consider using OpenAI API while implementing the remaining parts of LeapfrogAI

COULD HAVE (Nice to have initiatives that will have a small impact if left out)

  • Monitor context-length of threads and implement 'rolling context' to stay within model token limit.
    • Implement token counting endpoint.

WILL NOT HAVE (Initiatives that are not priority for this specific time frame)

  • UI implements "easy buttons" for transcription, translation, and summarization
    • Also requires extending file uploader to support audio file formats
  • Implement RAG and model evaluations
  • Implement translation capability (requires implementing translations endpoint, UI modification, model changes)
Loading