AIVM ist ein modernes Framework, das für die Privatsphäre der Inferenz mit fortschrittlichen kryptografischen Protokollen entwickelt wurde. Mit AIVM können Sie ein lokales Entwicklungsnetzwerk (DEVNET) bereitstellen, um private Inferenz mit angegebenen Beispielen oder benutzerdefinierten Modellen zu untersuchen.
Erstellen Sie eine virtuelle Umgebung:
python3 -m venv .venvAktivieren Sie die virtuelle Umgebung:
Auf Linux/macOS:
source .venv/bin/activateUnter Windows:
. v env S cripts a ctivateInstallieren Sie das Paket:
Wenn Sie die Beispiele ausführen möchten, werden ausgeführt:
pip install " nillion-aivm[examples] "Andernfalls können Sie nur:
pip install nillion-aivmStarten Sie das AIVM Devnet:
aivm-devnetÖffnen Sie die bereitgestellten Jupyter-Notebook-Beispiele/Get-Started.ipynb, um private Inferenzbeispiele auf AIVM zu betreiben.
Beenden Sie nach Abschluss Ihrer Aufgaben den DevNet -Prozess, indem Sie CTRL+C drücken.
Für zusätzliche Verwendung finden Sie im Beispiel -Ordner Beispiele, in dem die Einrichtung von privaten Inferenz -Workflows mit AIVM zeigt.
import aivm_client as aic
# List all supported models
available_models = aic . get_supported_models ()
print ( available_models ) import torch
# Create a sample input (e.g., for LeNet5 MNIST)
random_input = torch . randn (( 1 , 1 , 28 , 28 )) # Batch size 1, 1 channel, 28x28 pixels # Encrypt the input
encrypted_input = aic . LeNet5Cryptensor ( random_input ) # Get prediction while maintaining privacy
result = aic . get_prediction ( encrypted_input , "LeNet5MNIST" ) Die Funktion get_prediction übernimmt automatisch das sichere Berechnungsprotokoll mit den aivm-devnet -Knoten, sodass Ihre Eingabedaten während des gesamten Inferenzprozesses privat bleiben.
Sie können Ihre eigenen geschulten Modelle für AIVM einsetzen, sofern sie den unterstützten Architekturen (Berttiny oder Lenet5) folgen.
import aivm_client as aic # For BertTiny models
aic . upload_bert_tiny_model ( model_path , "MyCustomBertTiny" )
# For LeNet5 models
aic . upload_lenet5_model ( model_path , "MyCustomLeNet5" ) # For BertTiny models
result = aic . get_prediction ( private_berttiny_input , "MyCustomBertTiny" )
# For LeNet5 models
result = aic . get_prediction ( private_lenet5_input , "MyCustomLeNet5" )Dieses Projekt ist unter der MIT -Lizenz lizenziert.