datagero / pico-scholar

AI-Human collaboration platform that accelerates systematic reviews by organizing academic literature, building AI tools, and expanding into new domains to enhance the global knowledge catalog.
0 stars 0 forks source link

Design of Microservices for LlamaIndex-based Application on OpenShift* #30

Open datagero opened 2 days ago

datagero commented 2 days ago

Priority: P0 (Critical)
Status: Open
Objective: Finalize the architecture design for LLM-powered microservices with RAG functionality on OpenShift, ensuring modularity, scalability, and fault tolerance.


Description

This ticket outlines the high-level architecture of the microservices for the LlamaIndex-powered application. The design focuses on breaking down the LLM and RAG components into independent microservices, following best practices for OpenShift's containerized environment.


Microservice Architecture Diagram

The architecture will consist of the following seven services. Each will perform a unique role, with API-based interactions, enabling scalability and isolation.

1. Index Management Service


2. Embedding Generator Service


3. Vector Search Service


4. Query Engine Service


5. RAG Response Generator Service


6. Metadata Management Service


7. Document Upload & Ingestion Service


Deliverables

  1. API Documentation: Swagger/OpenAPI specs for all services.
  2. Containerization: Dockerfiles for each microservice.
  3. Deployment Manifests: YAML files for OpenShift deployment.

This P0 ticket will act as the foundation for designing and implementing the architecture. Once the architecture is finalized, sub-tasks will be created for the development and deployment of each microservice.


Next Steps: