Skip to content

Instantly share code, notes, and snippets.

@soulitzer
Created June 29, 2022 22:13
Show Gist options
  • Save soulitzer/7710e5da689a611a2d522602334d24b1 to your computer and use it in GitHub Desktop.
Save soulitzer/7710e5da689a611a2d522602334d24b1 to your computer and use it in GitHub Desktop.
import syft as sy
import numpy as np
from uuid import uuid1
sy.logger.remove()
_syf_owner = None
_syf_user = None
def syf_login():
global _syf_owner
global _syf_user
if _syf_owner is not None:
return _syf_owner, _syf_user
_syf_owner = sy.login(email="[email protected]", password="changethis", port=8081)
email = str(uuid1())
password = "pw"
if email not in [entry['email'] for entry in _syf_owner.users.all()]:
_syf_owner.users.create(
**{
"name": "Sheldon2 Cooper",
"email": email,
"password": password,
"budget": 1e9
}
)
_syf_user = sy.login(email=email, password=password, port=8081)
return _syf_owner, _syf_user
def numpy_to_tensor_pointer(np_arr):
owner, user = syf_login()
backend_phi_tensor = sy.Tensor(np_arr)
assert np_arr.ndim != 0
data_subjects = ["abc"] * np_arr.shape[0] if np_arr.ndim != 0 else ["abc"]
single_data_subject = backend_phi_tensor.private(
min_val=10,
max_val=90,
data_subjects=data_subjects)
data_asset_name = str(uuid1())
owner.load_dataset(
assets={
data_asset_name: single_data_subject,
},
name="my_data",
description="description"
)
tensor_pointer = user.datasets[-1][data_asset_name]
return tensor_pointer
ndarray = np.array([[1., 2., 3.]], dtype=np.float64)
a = numpy_to_tensor_pointer(ndarray)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment