PyCharm から Glows.ai にリモート接続する方法
PyCharm などの IDE でプログラムを開発している場合、SSH を使って Glows.ai の開発環境と GPU リソースをリモートから利用できます。
このチュートリアルでは、PyCharm から Glows.ai を利用する手順を説明します。
使用前の注意事項
-
SSH リモート機能に対応する PyCharm Professional Edition を使用してください。Community Edition はリモート接続に対応していません。
-
PyCharm はコードのデバッグに適しています。長時間のトレーニングには SSH と
tmuxまたはnohupを使い、ネットワーク障害や PyCharm の誤終了による中断を防いでください。 -
PyCharm はデータセットの転送には適していません。デバッグに必要なスクリプトだけを同期し、データセット全体は同期しないことを推奨します。
-
PyCharm は JetBrains が開発するツールです。Glows.ai はサービスへの接続手順だけを案内しています。IDE に関する問題は PyCharm の公式サポートへお問い合わせください。
-
このチュートリアルでは PyCharm 2024.2.4(Professional Edition)を使用します。
最初に Glows.ai で GPU をレンタルし、その GPU を使えるように PyCharm を設定します。
ステップ 1:PyCharm プロジェクトを作成する
ローカルプロジェクトがある場合は、先に Data Drive からデータセットをアップロードし、ローカルにはデバッグするスクリプトだけを残します。
-
PyCharm を開き、新しい Python プロジェクトを作成します。
-
Create to startをクリックしてプロジェクトを作成します。 -
プロジェクトフォルダーを右クリックし、新しい Python ファイルを作成します。
-
Python ファイルに「Test」などの名前を付けます。

-
ファイルに簡単なコードを入力します。
pythonprint("Hello world!")
ステップ 2:リモート接続を設定する
- Python Interpreter を設定します。
-
Windows では、左上の File - Settings をクリックします。

-
Mac では、PyCharm - Preferences をクリックします。

PyCharm 2024
- PyCharm 2024 以降を使用する場合は、Project:pythonProject - Python Interpreter を開き、
Add Interpreter->On SSHの順にクリックしてリモートインタープリターを追加します。

- レンタルしたマシンの Host、Port、Username、password を入力します。
-
Host:SSH 情報に記載されたドメイン名を使います。
-
Port:Glows.ai の SSH 接続情報にある
-pの後ろの数字です。この例では23470で、通常は 5 桁です。 -
Username:
root

- 続く画面で
Nextをクリックします。インタープリター選択画面ではSystem Interpreterを選び、レンタルしたマシンの Python インタープリターを入力します。既定のパスは次のとおりです。/root/miniconda3/envs/workenv/bin/python
独自の Conda 環境を作成した場合は、その環境のパスに置き換えてください。
フォルダーのパスも変更します。Glows.ai は /datadrive ディレクトリを推奨しています。
Createをクリックしてリモートインタープリターの追加を完了します。

Applyをクリックして同期を開始します。

ステップ 3:コードを実行する
同期が完了したらファイル名を右クリックし、Run をクリックして実行します。

実行結果が表示されます。

ステップ 4:ほかの Python パッケージをインストールする
PyCharm がサーバーに接続済みでも、コードの実行時にパッケージ不足のエラーが出る場合は、次の点を確認します。
-
選択した Python インタープリターが正しいことを確認します。既定のシステム環境を使う場合、パスは
/root/miniconda3/envs/workenv/bin/pythonです。独自の環境を作成した場合は、サーバーへの接続時に該当するインタープリターを選択します。 -
PyCharm で Tools -> Start SSH Session をクリックします。接続後、ターミナルで
pip install package_nameを実行します。リモート環境にパッケージがあるのに PyCharm が赤い波線を表示する場合、その警告は無視してコードを実行できます。PyCharm が同期中で、新しいパッケージとリモートインタープリターの対応付けが終わっていない可能性があります。
ステップ 5:ファイル同期を設定する
-
Python インタープリターを設定すると、通常はファイル同期も自動で設定されます。
自動設定されない場合は、Tools -> Deployment -> Configuration をクリックして設定します。

-
Host と Port を、レンタルしたマシンのホスト名とポート番号に変更します。
Root Path は空欄のままにしてください。自動入力された値を使うと同期エラーが発生する場合があります。

-
接続を見分けやすくするため、名前を Glows.ai に変更できます。
左側の一覧にある名前を右クリックし、
Renameを選んで Glows.ai に変更します。
ステップ 6:ファイルをアップロード、ダウンロードする
PyCharm は既定で、ローカルで開いているプロジェクトの全ファイルをリモートサーバーへ同期します。下部の File Transfer に転送状況が表示され、ファイルがサーバーのディレクトリへ同期されたことを確認できます。

自動同期されない場合は、手動でファイルを同期できます。
同期するファイルを選んで右クリックし、Deployment -> Upload to xxx を選択します。リモートファイルを変更した場合や、新しいファイルや結果が生成された場合は、フォルダーを右クリックして Deployment -> Download from xxx を選択するとローカル環境へ同期できます。

リモートターミナルを使う
PyCharm からリモートで bash コマンドを実行するには、PyCharm の Terminal ツールを使います。
-
ターミナルは既定ではローカルに接続されています。Tools -> Start SSH Session をクリックしてリモートサーバーに接続します。

-
Glows.ai のホストを選択して接続します。

-
ホストを選ぶと、PyCharm の下部に新しい
Terminalが開き、Glows.ai のマシンに接続されます。ここで bash コマンドを実行できます。