Establish integrations to easily connect repositories and storage solutions to your Deployment.
Integrations allow users to specify a git-lfs repository or storage bucket details to mount to the deployment replicas.
How integrations work
When an integration is specified, on deployment creation (not on replica spin up), a storage volume is created, the contents of the integration are downloaded and stored in the volume, and the volume is mounted to all replicas in the deployment. This will lead to quicker start up times for autoscaling as replicas that are spun up due to autoscaling conditions, will not need to re-download the contents of the integration.
There are three types of available integrations:
git-lfs - Git-lfs repos are used for Hugging Face model repositories. Private model repositories will need access keys and secret access keys specified.
s3 - S3 buckets or S3 compatible storage. Private S3 buckets will need access keys and secret access keys specified.
do-spaces - Digital Ocean Spaces storage. Private files in Digital Ocean spaces will need access keys and secret access keys specified.
To use private storage buckets or repositories, use of access keys will be required. Any secret access key must be stored as a Paperspace secret which can be done in the console. To reference a secret value in a deployment spec, use the following syntax
integrations : The overall label used to specify any integrations.
type: The type of integration specified. git-lfs, s3, do-spaces.
name: The unique name of the integration
path: The mount path of the volume containing the integration contents.
url: The url to the bucket storage or git-lfs repository.
region: (s3 only) The region the s3 bucket is located in.
accessKeyId: (Optional) The access key ID of the storage bucket or private git-lfs repository.
secretAccessKey: (Optional) The secret access key of the storage bucket or private git-lfs repository.
integrations: # List of integrations. Max is 5.
- type: git-lfs # git-lfs integration type
name: falcon # unique name of the integration
path: /models/ # the a unique path on the filesystem to mount the integration. In this spec, model files will be located at /models/falcon
url: https://huggingface.co/tiiuae/falcon-7b # hugging face model url for cloning
- type: s3 # s3 integration type
path: /some/s3/mount/path # In this spec, the contents will be mounted at /some/s3/mount/path/my-s3-integration
secretAccessKey: secret:secretAccessKey # stored as a project or team secret. Naming is arbitrary.