注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
このチュートリアルでは、JupyterLab® または RStudio® Workbench 用のワークスペースを設定することで、Code Workspaces の概要を提供します。
すべてのコードワークスペースは Palantir プラットフォームの コードリポジトリを利用しています。これにより、コードワークスペースには、ブランチング、マージ、およびコミット履歴などの業界標準のバージョン管理機能が備わり、他のユーザーがコードを閲覧し、安全に同じワークスペースで作業できるようになります。
以前は、コードワークスペースと関連するコードリポジトリは別々のリソースとして表現されていました。現在では、コードワークスペースと関連するコードリポジトリは単一のリソースとして表現されます。コードリポジトリは Foundry の任意のフォルダーから選択すると、自動的に関連する Jupyter または RStudio® ワークスペースが開きます。
この変更は新しいコードワークスペースに適用され、既存のコードワークスペースとコードリポジトリには影響しません。既存のリソースは引き続き別々のリソースとして扱われます。
コードワークスペースを起動するには、Code Workspaces アプリケーションを開き、General タブに移動します。その後、コードワークスペースを作成するフォルダーを選択します。
プロジェクトで Editor
または Owner
の役割を持つユーザーは、コードワークスペースの設定を変更できます。プロジェクトで Viewer
の役割を持つユーザーは、ワークスペースを起動することができます。ユーザーのホームフォルダーを場所として選択することもできますが、これによりコードワークスペースとデータがプロジェクトに制限される可能性があります。
起動するワークスペースのタイプを選択します。現在、サポートされているワークスペースは JupyterLab と RStudio® Workbench です。
次に、作成するワークスペースのバックアップコードリポジトリの名前と場所を設定します。RStudio® ワークスペースを作成する場合、ライセンスを選択できます。ほとんどの場合、ライセンスは自動的に選択されます。
ワークスペースを起動する各ユーザーは、独自の隔離されたセッションを実行します。2 人以上のユーザーが同じワークスペースを使用する場合、すべてのユーザーが基盤となるコードリポジトリに対して Viewer
権限以上を持っていることを確認してください。コードワークスペースの 基盤となるコードリポジトリ についての詳細は上記をご参照ください。
高度な設定では、アイドル時間とコードワークスペースのリソースプロファイルを定義できます。これらの設定は、ワークスペースの右上隅にあるギアアイコンを選択してアクセスできる Settings パネルでいつでも変更できます。
ユーザーは、基盤となるコードリポジトリで直接トランスフォームを公開することはできません。リポジトリは Code Workspaces 用のインフラストラクチャとしてカスタマイズされているためです。すべてのコードはコードワークスペースから公開する必要があります。
Data タブに移動し、Add dataset > Import dataset を選択することで、Foundry 内のソースから直接データをインポートできます。コードワークスペースの現在のプロジェクト外からインポートされたデータ(ユーザーのホームフォルダーを含む)は、リファレンスの追加が必要です。
また、Foundry にまだ取り込まれていないデータの場合は、Upload and read local data を選択してデバイスから直接データをインポートできます。
データセットビューはコードワークスペースでインポートされたデータセットとして使用できません。代わりに、必要に応じてデータセットビューを新しいデータセットまたは既存のデータセットにコピーしてください。
左側のパネルの Packages タブに移動するか、Jupyter® 用の Conda または PyPI、および RStudio® 用の CRAN を使用してパッケージを直接インストールすることで、コードワークスペースにパッケージをインポートできます。
JupyterLab® ワークスペースは Conda または PyPI からのパッケージのインストールをサポートしています。デフォルトでは、Code Workspaces は conda-forge
と pypi.org
を公開しています。他のチャンネルをコードワークスペースに追加するには、これらをバックアップコードリポジトリに追加し、コードワークスペースを再起動します。
JupyterLab® での Conda/PyPI 環境は、JupyterLab®、アプリケーション、またはトランスフォームで管理された環境を使用して、一貫して復元できます。
Packages タブからパッケージをブラウズし、インストールしたいパッケージを選択できます。これにより、新しい JupyterLab® ターミナルでインストールコマンドが自動的に実行されます。
パッケージを手動でインストールするには、JupyterLab® ターミナルで Conda パッケージには maestro env conda install <packages>
、PyPI パッケージには maestro env pip install <packages>
を使用できます。
詳細については、Jupyter® ノートブックでの管理された Conda/PyPI 環境 を参照してください。
mamba
および pip
を直接使用してパッケージをインストールすることは、現在廃止されています。
RStudio® ワークスペースは、CRAN、Posit™ Package Manager、または Bioconductor からのパッケージのインストールをサポートしています。デフォルトでは、Code Workspaces はすべての Posit™ Public Package Manager ↗ および Bioconductor ↗ を公開しています。他のチャンネル(たとえば MRAN)を追加するには、これらをバックアップコードリポジトリに追加し、コードワークスペースを再起動します。
パッケージをインストールするには、renv
を使用できます。renv
は認証された CRAN チャンネルをサポートしています。
Packages タブからパッケージをブラウズし、インストールしたいパッケージを選択できます。これにより、RStudio® Workbench でコピーして実行するためのインストールコマンドが生成されます。一般に、CRAN パッケージは renv::install("<package>")
で、Bioconductor パッケージは renv::install("bioc::<package>")
でインストールされます。
同じワークスペースの他のユーザーがコードを閲覧できるようにするには、作業中のブランチにコードを公開する必要があります。
コードを公開すると、CI チェックが実行され、登録されたすべての Code Workspace アプリケーションの新しいバージョンが公開されます。ベストプラクティスとして、コードワークスペースを単一のタイプのタスク(たとえば、アプリケーションの構築、データの分析、データトランスフォームの記述、モデルの構築)に集中させ、単一のコードワークスペースで複数の独立したワークフローを実行しようとしないことをお勧めします。
未公開の変更は、Source control サイドパネルで表示できます。オプションでコミットメッセージを入力し、Sync changes を選択してコードを公開します。折りたたまれている場合、ソースコントロールアイコンの上に変更されたファイルの数が表示されます。
コードワークスペースをブランチしたり、ブランチをチェックアウトしたり、ブランチマネージャーを使用して他のバージョン管理アクティビティを実行できます。
ブランチを作成または見つけるには、画面の上部にあるブランチセレクターを使用します。ブランチセレクターを選択すると、既存のブランチのリストが表示されるメニューが開きます。別の方法として、Create new branch を選択して新しいブランチを作成できます。未公開のコード変更がある場合、選択したブランチをチェックアウトする前に同期するように求められます。
Foundry 内の他の場所での ブランチング と同様に、コードワークスペースで利用可能なデータは現在のブランチから取得されます(フォールバック を含む)。出力データセットにデータを書き込むと、そのデータは現在のブランチに書き込まれます。
Propose changes を選択してブランチをマスターにマージできます。変更を提案すると、プルリクエスト(PR)のプレビューが表示されます。
インターフェースの右上にある Share を選択してコードワークスペースを共有できます。
コードワークスペースとコードリポジトリが別々のリソースである場合、他のユーザーがワークスペース内のコードを表示できるように、基盤となるリポジトリの権限も共有する必要があります。
プロジェクトで Editor
または Owner
の役割を持つユーザーは、コードワークスペースの設定を変更できます。プロジェクトで Viewer
の役割を持つユーザーは、ワークスペースを起動することができます。
インターフェースの右上にある Active > Restart workspace を選択して、コードワークスペースを手動で再起動できます(たとえば、構成変更を適用する場合)。
これにより、初期状態で新しいセッションが開始されます。ワークスペースは、バックアップコードリポジトリにコミットされたすべての変更で自動的に再起動されます。ただし、再起動前の状態(インポートされたデータ、メモリに格納された変数、インストールされたパッケージなど)からはすべてのものが含まれません。
ワークスペースを再起動する前に、アプリケーションは自動的にチェックポイントを作成し、最新の変更を同期するように促します。
Active > Restore checkpoint を選択して、以前のチェックポイントの状態にワークスペースを復元できます。詳細については、以下の チェックポイント セクションを参照してください。コードワークスペースは、再起動後にワークスペースを以前のチェックポイントに自動的に復元しません。
Code Workspaces を初めて開くユーザーは、/home/user/repo
にバックアップリポジトリがクローンされた空のワークスペースを受け取ります。
Code Workspaces セッションは、ユーザーのアクティビティがないと自動的にシャットダウンされ、最大で 24 時間持続します(高度な設定 ドキュメントで自動シャットダウンの詳細を参照)。
セッションがシャットダウンされると、すべての関連する状態は Foundry の チェックポイント に保存され、同じユーザーが次にコードワークスペースを開くときに復元されます。これにより、シャットダウン時点での作業を再開できます。
Code Workspaces には、既存の作業を保存するための 2 つの異なる方法があります:手動コード同期と自動チェックポイント。
コード同期された基盤となるコードリポジトリ(必要なパッケージインストールを含む)に依存することをお勧めします。これにより、堅牢なワークフローが確保され、特定のチェックポイントにアクセスできない可能性のある他のユーザーとの共同作業が容易になります。
コード同期 は手動のアクションであり、コードワークスペースで既存の作業を保存する推奨方法です。コードを同期するということは、ワークスペースのバックアップコードリポジトリにファイルをコミットすることを意味します。コード同期を通じて保存された作業は、リポジトリに永久に保存され、/home/user/repo
フォルダー内のすべてがその同期の一部として保存されます。コード同期は、変数の内容、環境にインストールされたパッケージ、データ、またはコードセルの出力などの既存の状態を保存しません。ワークスペースの同期履歴は、ワークスペースのバックアップコードリポジトリを通じて確認できます。変更履歴を維持し、すべての関連作業が適切かつ永続的に保存されるようにするために、頻繁にコードを同期することをお勧めします。
ワークスペースのすべての既存の変更を保存するには、ワークスペースの右上隅にある Sync changes を選択します。それが成功したら、変更はワークスペースのバックアップリポジトリにコミットされます。右上隅のギアアイコンを選択してから Open code repository を選択することで、リポジトリにアクセスできます。