PySyft 客户端#
预计阅读时间:8分钟
你将学习的内容#
本指南旨在帮助您理解如何充分利用PySyft客户端,这是连接Syft数据站点的接口。
概述#
PySyft实现了客户端-服务器架构,其中客户端是一个接口,允许数据所有者和数据科学家根据各自的角色与数据站点进行交互。
一般来说,客户端可以采用任何形式——例如网站、命令行工具或库。考虑到远程代码执行的编程特性,PySyft的主要客户端是一个名为syft的Python库。未来我们将支持更多客户端格式。
工作原理#
Python客户端是Datasite服务器上提供的一系列用户友好API集合。根据用户身份(管理员、数据科学家、访客)不同,可访问的API端点可能会受到限制。
要获取PySyft客户端,您需要使用账户登录。如果您还没有账户,可以在Datasite服务器启用该选项的情况下自行注册。更多详情请参阅用户API(链接)。
获取Python客户端#
import syft as sy
server = sy.orchestra.launch(
name="my_special_server",
reset=True,
dev_mode=False,
port='auto',
)
# Logging in using the default credentials
admin_client = sy.login(
url='localhost',
port=server.port,
email="[email protected]",
password="changethis"
)
探索可用API#
客户端提供了丰富的API接口,您可以通过client.api对象查看它们:
admin_client.api
主要API#
虽然这个列表很全面,但开始使用PySyft需要熟悉以下内容:
Orchestra API: 能够启动本地开发服务器
设置API: 能够更新服务器设置并进行自定义
用户API: 管理服务器用户的能力
项目API: 能够查看和检查当前用户发送或接收的项目
Request API: 能够查看和检查当前用户发送或接收的请求
代码API: 查看和执行提交代码的能力
数据集API: 能够查看、检查并上传多种数据集和资产类型
更多API可用于高级用例,如自定义工作负载、支持海量数据、网络功能或安全飞地,这些功能目前处于测试阶段。
API: 能够检查当前API并通过自定义API进行扩展
Worker Image APIs, Worker API, Worker Pool API: 能够定义和启动自定义镜像,并生成多个工作池和工作器来运行自定义镜像以实现执行扩展
网络API: 能够通过包含大量数据站点的集中式注册表进行发现和被发现
认证API, 安全飞地API: 能够通过安全飞地在各方之间执行安全的数据连接
Blob存储API: 能够将blob存储作为一种存储选项使用,以扩展支持的数据规模或使用Datasets API原生不支持的数据格式。
更多相关文档即将发布。
审查特定API#
部分API直接暴露了您需要与之交互的端点,如下所示:
admin_client.users
在其他情况下,API端点只是一个子模块,您可以像这样进一步探索它们:
admin_client.api.sync
admin_client.api.sync.sync_items?