chainlit
chainlit copied to clipboard
feat: add MinIO as storage provider
Add MinIO as additional storage provider. In spirit of creating open source data layer (#793), I'm adding MinIO as open-source alternative for Azure Blob Storage or AWS S3 that's already implemented BaseStorageClient
. MinIO is compatible with S3 so only little changes are needed. This PR is inspired from #836.
How to Configure
import chainlit.data as cl_data
from chainlit.data.sql_alchemy import SQLAlchemyDataLayer
from chainlit.data.storage_clients import MinioStorageClient
storage_client = MinioStorageClient(bucket="<your bucket>", endpoint_url="<your minio api endpoint>") # user and password defaults to 'minioadmin'
cl_data._data_layer = SQLAlchemyDataLayer(conninfo="<your conninfo>", storage_provider=storage_client)
PS: Also fix a little typo