在偶然尝试了一次Jupyter Lab之后,我迅速认识到了其强大而独特的功能,如可以在浏览器中启动Terminal、Python Console等Notebook所不具备的功能,而它们对于在集中型服务器集群上的开发和调试都有着极大的帮助。于是我便做了一些调研,遂有本文。
注意事项
- Jupyter Lab 和 Jupyter Notebook 的关系:两者是相关联的,甚至服务器都是互通的。启动Jupyter Lab后,使用相同的网址和端口,后面打上
/tree/YOUR/FOLDER/POSITION
即可访问Notebook,而加上/lab?
则是访问Lab。但两者很多地方也并不相通,如插件系统是分别独立的,各种设置也是独立的。 - Lab的好处主要是它是一个集成的环境。你在一个页面中可以打开多个子Tab,这些tab不限于notebook,还可以是代码文件,Markdown文件,甚至是新的terminal等,这是很了不起的。如果你关闭了Lab的页面,重新访问Lab,甚至是从另一台设备访问Lab,你都可以得到一个完美复原的环境,包括你打开的页面,它们的位置,甚至运行情况都会得以保存。即相当于你有了一个即用即走的远程桌面。
- 有一点要格外留意,一定不要在多个浏览器tab中打开Lab,否则你在A Tab中做了修改,过了一会儿不慎在B Tab再次修改,那么就会造成一个严重的版本冲突。
- Jupyter Lab有两个大版本,版本1和版本2。我现在使用conda -c anaconda安装时只能安装到1,但pip和conda-forge可以安装到版本2。
插件
- 首先要有Debu