本実験の環境はDockerを用いて行います。Pythonの依存関係以外はすべてDockerイメージに保存されています。
AWS環境の場合はセットアップスクリプトを作成してあります。 AWSのJupyter Lab環境に入った後はターミナルを起動し、次のコマンドを実行してください。
wget https://raw.githubusercontent.com/matsuo-group24-PinkTrombone/SpeechGeneration/main/scripts/setup-on-aws.sh && sh ./setup-on-aws.sh
Note: Windows上ではwsl上ではなくDocker Desktopを直接インストールすることを推奨します。
-
Ubuntuの場合: Dockerの公式から便利なセットアップスクリプトが提供されています。
curl https://get.docker.com | sh \ && sudo systemctl --now enable docker
Note: wsl環境でDockerデーモンを起動するためには
sudo service docker start
を実行してください。また、GPUを使うために NVIDIA Container Toolkitをインストールします。インストール方法はNVIDIAのドキュメントを参照願います。
- make
- git
プロジェクトをクローンし、Dockerのイメージをビルドして実行します。
git clone https://github.com/matsuo-group24-PinkTrombone/SpeechGeneration.git
make docker-build
make docker-run
-
output
root@90a59619c31f:/workspace$
VisualStudioCodeのRemote Developmentエクステンションを使用することで、起動しているDockerイメージ内で直接作業することができるようになります。
次の手順を経ることで起動中のDockerイメージ内部に入ることが出来ます。
- VS Codeの左側のアイコン「リモートエクスプローラー」を開く
- Dev Containersタブの中にある
speech-generation:latest
を選択し、Open Folder in container
をクリックして接続。 /workspace
をVSCodeで開いて作業を開始する。
Note: もう一度作業を開始する時も以上に述べた手順で再開することができます。
プロジェクトのPythonの依存関係はよく変化します。したがってPythonの依存関係はDocker Imageと分離しており、別途インストールする必要があります。
# /workspace
poetry install
(1/10 追記): Dockerのイメージ内にもPythonの依存関係をインストールしておく方針に変更しました。しかし、新しくプロジェクトに追加された依存関係が更新されていない可能性があるので上記のコマンドを実行することを推奨します。
src/train.py
を実行し、実験を開始しましょう!
python src/train.py