opea-project / GenAIComps

GenAI components at micro-service level; GenAI service composer to create mega-service
Apache License 2.0
22 stars 54 forks source link

Reduce total downloads and image sizes to a fraction by using intermediate image(s) #265

Open eero-t opened 1 week ago

eero-t commented 1 week ago

E.g. "ChatQnA" service is based on 9 microservices, of which several use images with the same large python libraries (like PyTorch) duplicated on them.

By building/using intermediate image containing the shared dependencies:

I.e. it will take significantly less bandwidth, disk space and time, which all are cost reductions on rented clusters.

As an example, here's documentation on how Kubeflow images are layered: https://www.kubeflow.org/docs/components/notebooks/container-images/

(Once this ticket has been fixed, similar graph for OPEA image layers would nice.)