[小ネタ] Visual Studio CodeのAzure Machine Learning拡張機能を使うとめちゃくちゃ簡単にリモート先のJupyterサーバー環境の構築と接続ができる件について #VSCodejp #VSCode #AzureMachineLearning #Jupyter

Visual Studio Code Advent Calendar 2020 12/15代打
2020.12.30

こんにちは、Mr.Moです。

Jupyter上でいろいろな作業をするとなると、メモリなどのスペックがもう少し欲しい場合とそんなにスペックいらないなどバラつきがあると思います。ローカル環境だとスペックの調整が難しいですが、リモート接続でクラウドやサーバーを活用すればこの辺りももう少し柔軟に対応できると思います。特にクラウドなら環境構築も容易だったり早かったりで良いことが多いですね。そんな一連の流れがVS Code上でさらに簡単に実現できるとするとすごく良いですよね。そんな嬉しい機能がVS CodeのAzure Machine Learning拡張機能にそなわっていたのでちょっと見ていきましょう。

VS CodeのAzure Machine Learning拡張機能とは

下記の記事にまとめてますのでご覧いただければと思います。

使ってみる

1.必要なもの

下記のものが必要なので、インストールや準備をお願いします。

2.ワークスペースの作成

前提としてAzure Machine Learningというサービスを使うことになります。Azure Machine Learning サービスを使うには最初にワークスペースを作成する必要があるので下記のように作成を行います。

vscode-am2.gif

3.Azure Machine Learningのコンピュータ インスタンス作成

今回のリモート先のJupyterサーバー環境構築はAzure Machine Learning サービスを使うことで簡単に実現できます。

まずはAzure Machine Learningの拡張機能を使いVS CodeからAzure Machine Learningのコンピュータ インスタンスを作成します。作成されたコンピュータ インスタンスへの接続もAzure Machine Learningの拡張機能のおかげで簡単に接続できます。

vscode-am3.gif

4.Jupyterを使う

下記はPythonの拡張機能のJupyterを使える機能が動いているところです。バックグラウンドは先ほど作成したAzure Machine Learningのコンピュータ インスタンスで、このインスタンスへの接続をAzure Machine Learningの拡張機能が行っているという内容になっています。そしてこれらが全てVS Codeの画面上で完結しています。

vscode-am4.gif

後片付け

今回作成したコンピュータ インスタンスは使っていない間も課金が発生している状態なので適宜、削除や停止を行い無駄な課金の発生を抑えます。

vscode-am5.gif

課金の発生を確実に止めるには、リソースグループの削除がおすすめです。下記の拡張機能を入れてVS Code上からリソースグループごと削除しましょう。

vscode-am6.gif

まとめ

VS CodeとAzure Machine Learningを使うとリモートのJupyterサーバー環境の作成と接続がめちゃくちゃ簡単に実施できました。さらにAzure Machine Learningのコンピュータ インスタンスを使うので作業に必要なモジュール郡があらかたプリインストールされており作業着手が非常にスムーズなのも優れた点ですね。また、クラウドなので必要なスペックのコンピュータインスタンスの用意と切り替えも簡単に行うことができます。普段使い慣れているVS Codeの画面からこういったことができるのはなかなか嬉しいです。

(実は9月頃にこの機能のことを知って試したりしていましたが記事にするタイミングを見失っていました。今年のやり残しを1つ消化することができました。)

参考