Welcome to Mithril Cloud!
Mithril Cloud is the first Confidential AI as a Service platform managed solution for you to leverage our confidential AI solution.
Because our solutions are based on secure enclave technologies like Intel SGX or AMD SEV, it is usually complex to get your hands on the right hardware and set it up properly with Mithril Cloud, you can start using real hardware enclaves now, from your Python interface!
More details about Mithril Cloud are in this blog post.
BlindAI is an open-source AI deployment solution using secure enclaves. By using BlindAI, AI providers can deploy their models in the Cloud and have their users consume these endpoints while ensuring privacy and security for the data owner.
Interested now? Let’s see how you can actually deploy your own models on our managed confidential AI platform!
To be able to upload a model to our Cloud, you will first need to be registered on our platform.
Once registered, create an API Key. Save that API key somewhere: it will only be provided to you once. If you lose it, you can still create a new one.
Register to get an API key
pip install blindai
Uploading a model will require your API key, and have the model locally in ONNX format:
import blindai api_key = "your_api_key" # Enter your API key here # Upload the ONNX file along with specs and model name with blindai.Connection(api_key=api_key) as client: client.upload_model("path_to_your_model_in_onnx", model_id="your_model_name")
Query a model
Note that you do not need to provide an API key to query a model that is uploaded to BlindAI Cloud:
import blindai # Prepare the tensor to be analyzed by the remote AI input = … with blindai.Connection() as client: output = client.predict("name_of_the_model", input)
Try a model from the BlindAI Zoo
To see how it works with a real example, here are a few Google Colabs to help you deploy models inside secure enclaves. Those models cover most common AI use cases from confidential medical image analysis (COVID-Net), to face recognition (FaceNet), through speech-to-text (Wav2Vec2):