本文介绍如何访问Ray应用内置的Ray Notebook,并运行一个简单的分布式应用。该方案提供一个预置在云端的JupyterLab环境,用于直接在浏览器中编写和调试Ray程序,无需在本地配置复杂的开发环境。
业务场景说明
在进行大规模数据处理或机器学习模型训练时,本地开发环境往往受限于计算资源,且环境配置复杂、与生产环境不一致。开发者需要一个能够无缝衔接云端大规模计算集群的交互式开发环境,以便快速迭代、调试和验证分布式代码。
Ray Notebook解决了这一问题。它在Ray应用上预置了JupyterLab,允许开发者通过浏览器直接访问,利用整个应用的计算资源进行交互式开发,从而简化了从本地原型到分布式运行的过渡。
准备信息
实施步骤
此处以公网访问Ray应用内置的Ray Notebook为例。
登录JupyterLab:
在浏览器中打开已获取的Jupyter公网地址。
在密码框(Password or token)中输入
secret.jupyterlab.password对应的密钥,进入JupyterLab界面。

Ray程序开发:通过打开一个新建Notebook、Console或Python File。

运行代码:以Notebook为例,在代码单元格(Cell)中输入并执行以下代码。
import ray import time @ray.remote def retrieve_task(item, db): time.sleep(item / 10.) return item, db[item] if __name__ == "__main__": database = [ "Learning", "Ray", "Flexible", "Distributed", "Python", "for", "Machine", "Learning" ] ray.init() db_object_ref = ray.put(database) retrieve_refs = [ retrieve_task.remote(item, db_object_ref) for item in [0, 2, 4, 6] ] result = [print(data) for data in ray.get(retrieve_refs)]运行结果如下:

该文章对您有帮助吗?