跳到主要内容

Notebook

本文介绍 Notebook 功能的使用方法。

什么是 Notebook?

Bohrium 上的 Notebook 为您提供了一个一站式编写和运行代码的交互式环境,您可以在同一个文档中编写可执行代码、LaTeX、富文本、图片、HTML等内容,使用 Bohrium 预装好的 DeePMD-kit 等软件和 PyTorch、TensorFlow 等框架,一键连接海量的CPU和GPU资源,并且可以非常便捷地分享给他人进行协作。

Bohrium Notebook 的交互式开发环境由开源项目 Jupyter 提供,详细了解可访问 Jupyter 主页

创建 Notebook

点击 Bohrium 案例广场 主导航的“写Notebook”按钮,即可创建一篇 Notebook 的草稿并开始编辑:

写 Notebook

如果您想把别处写好的 Notebook 导入进来,请点击编辑页右上角“更多”按钮,选择“本地上传”或“从数据盘导入”即可:

导入

编辑 Notebook

在 Notebook 编辑页,您可以进行以下操作:

编辑页

在左侧内容编辑区域,您可以撰写 Notebook 标题和正文。

Notebook 正文中的“文本”单元格支持常见的 Markdown 语法,如标题、加粗/斜体、有序/无序列表、代码段、超链接、表格、图片等,您可以检索 Markdown 语法进行了解。

Notebook 的代码单元格支持 Python 代码和 Shell 命令,在代码模块中输入英文感叹号“!”,后接shell命令即可运行,如:

shell命令

Notebook 在编辑时会自动保存,当图示位置指示灯为绿色时,表示自动保存已完成:

您可以在个人主页的“我的 Notebook”页面,看到所有您创建的、或他人分享给您的 Notebook,点击红圈按钮即可继续进行编辑:

更多 Notebook 写作技巧,您可以阅读 NBHub 编辑部撰写的《NBHub|Notebook 写作帮助》 和 Bohrium 产品经理撰写的《8个不易发现的 Notebook 使用技巧》 ,或在网络上检索获取更多方法。另外 Bohrium 上有大量用户撰写的高质量Notebook,您可以点击 案例广场了解更多。

运行 Notebook

您可以点击图示位置的“开始连接”按钮来启动一台节点运行 Notebook:

其中“启动 Notebook 节点”,点击后会按照您指定的配置启动一台新的 Notebook 专用节点。而如果您已经有运行中的节点,在其中准备好了 Notebook 运行所需的环境,希望用它直接运行 Notebook,可以选择“连接已有节点”。

Bohrium 提供了多种 CPU 和 GPU 型号供您选择,其中 2核 4G 的 CPU 是完全免费的:

完成选择后点击“确认”,等待 10 秒左右的开机时间,当按钮显示为绿色的“已连接”状态时,就可以开始运行 Notebook 了。

注意:如果您在选择了用自定义镜像来运行 Notebook,请确保镜像中已安装 JupyterLab 3.0以上版本,建议安装最新版。请使用 JupyterLab 官方推荐的方法安装,以确保 jupyter lab 命令可以正确执行。如果镜像不符合启动要求,连接节点时会失败,请更换其他镜像重新连接。

为了帮您节省费用,Bohrium 会在 Notebook 闲置超过 120 分钟(未运行任何代码且页面不在激活状态)后自动释放该节点。节点释放不会影响您已保存的 Notebook 文件,也不会影响您保存在 /data 数据盘下的任何文件,但您在节点系统盘中所做的变更(如新安装的软件)将会丢失。

如果您不希望丢失这些变更,请保持 Notebook 处于活跃状态,或在节点列表中将环境保存为自定义镜像,下次连接时,使用该镜像开启节点即可。

当您暂时不需要使用计算资源时,也可以主动断开连接:

释放节点

配置 Notebook 多内核

安装多内核

如果您想在镜像中安装多个 Notebook 内核以供切换使用,可以按照以下步骤进行:

  1. 在节点列表中选择你想配置多内核的节点使用 WebShell 进行连接

  2. 使用 conda 创建一个新的 Python 虚拟环境

conda create --name myenv python=3.8
  1. 激活新创建的虚拟环境
conda activate myenv
  1. 安装 IPython
conda install ipython
  1. 安装需要的内核(例如,python3 内核)
python -m pip install ipykernel

您也可以使用该命令安装其他内核,例如 R 内核或 Julia 内核。

  1. 注册安装的内核
python -m ipykernel install --user --name=myenv --display-name "Python (myenv)"

其中,

  • --user 选项表示将内核注册到当前用户的目录而不是系统范围的目录中,这可以避免权限问题。
  • --name=myenv 选项表示为内核命名,其中 myenv 是您的环境名称,您可以根据需要更改此名称。
  • --display-name 选项表示在 Notebook 界面中显示的内核名称,您可以根据需要更改此名称。
  1. 验证内核是否配置成功
jupyter kernelspec list

注意:在配置好多内核后,记得将环境保存为自定义镜像并使用新镜像进行连接,否则配置无法生效。

修改默认内核

如果您的镜像环境中安装了多个 Notebook 内核,可以按照下述步骤利用 WebShell 修改默认启动内核:

  1. 使用 generate-config 生成默认的配置文件
jupyter lab --generate-config
  1. 定位 Notebook 的配置目录
jupyter --config-dir
  1. 查看已经安装的 Notebook 多内核
jupyter kernelspec list
  1. 切换到配置目录,并在 jupyter_lab_config.py 文件末尾新增以下配置
c.NotebookApp.kernel_spec_manager.default_kernel_name = 'ir'

其中,ir 为已经安装的 R 内核名称,可以替换为任何一个已经安装的内核。

注意:修改默认内核后,同样需要将环境保存为自定义镜像并使用新镜像进行连接,否则配置无法生效。

分享 Notebook

新创建的 Notebook 默认只有您自己可见,当您想邀请他人一起阅读或编写时,可以点击右上角“分享”按钮,将 Notebook 分享给指定的用户:

您可以定向邀请具体的 Bohrium 用户,也可以批量邀请一个项目下的全部成员。邀请协作者时,您可以指定对方的权限范围,Bohrium 提供了可阅读、可编辑、可管理 3 档权限类型。

如果您不清楚被邀请人的 Bohrium 账号(如开放式的讲座或课程),或对方没有 Bohrium 账号,您可以打开“链接分享”开关,此时所有获得链接的人都可以阅读您的 Notebook。

如果您希望把 Notebook 分享给案例广场的全部用户,可以选择“公开发布”,这样案例广场的所有用户都可以搜索到这篇 Notebook,也可以在您的个人主页上看到它。如果您的 Notebook 获得了较多点赞,它将有可能出现在案例广场首页

案例广场首页

公开发布 Notebook 时,您可以进行以下设置:

  • 添加作者:添加其他需要署名的贡献者,并通过添加顺序决定作者的排名先后;
  • 添加标签:便于案例广场用户检索,以及平台进行相关内容推荐;
  • 推荐镜像和机型:您可以指定镜像和机型,读者在案例广场运行您的 Notebook 时,系统会自动选择您指定的镜像和机型来开启节点。如果您推荐的镜像是自定义镜像,请确保其中不包含您的隐私数据,并确保镜像可用;
  • 分享数据集:如果您的 Notebook 引用了其他数据或文件,您可以将其制作成数据集,并在发布时一并分享,读者运行您的 Notebook 时可以访问到这些文件。

公开发布后的 Notebook 可以持续修改,但别忘记在完成修改后,点击“重新发布”按钮,将最新版内容同步到案例广场:

注:只有公开发布的文档需要点击“重新发布”。私密文档不需要该操作,任何用户编辑私密文档后,其他协作者看到的都将是最新版。