Azure Quantum ワークスペースで Jupyter Notebook を操作する
Azure Quantum ワークスペース内の Jupyter Notebook で Q# または Python を実行する方法について説明します。 Jupyter Notebook は、リッチ テキストとコードの両方が含まれているドキュメントであり、ブラウザーで実行できます。
前提条件
Azure Quantum ワークスペースで Jupyter Notebook を使用するには、次の前提条件が必要です。
- アクティブなサブスクリプションが含まれる Azure アカウント。 Azure アカウントをお持ちでない場合は、無料で登録し、 従って支払うサブスクリプションにサインアップしてください。
- Azure Quantum ワークスペース。 「Azure Quantum ワークスペースを作成する」をご覧ください。
サンプル ノートブックを入手する
開始するには、サンプル ギャラリーからサンプル ノートブックを使用できます。
Azure portal で、お使いの Azure Quantum ワークスペースを選びます。
[Notebooks] を選択します。
[サンプル ギャラリー] を選択します。
使用するサンプルを選択し、[Copy to my notebooks]\(マイ ノートブックにコピー\) を選択します。
サンプル ノートブックが [My Notebooks](マイ ノートブック) の下に表示され、ノートブックを実行できるようになります。
ノートブックの実行
Jupyter Notebook で Q# または Python コードを実行するには、次の手順に従います。
Azure portal で、お使いの Azure Quantum ワークスペースを選びます。
[Notebooks] を選択します。
[マイ ノートブック] でノートブックを選択します。
実行するセルを選び、実行アイコンを選んでセル内のコードを実行するか、[Run all]\(すべて実行\) を選んでノートブック内のすべてのセルを実行します。
新しいNotebookを作成する
Q# または Python を使用して新しい Jupyter Notebook を作成するには、次の手順に従います。
Note
Q# Jupyter Notebook のプログラムでは、 namespace
や @EntryPoint()
は必要ありません。 代わりに、操作または関数を直接呼び出します。 Jupyter Notebook では、既定ではプログラムの結果も表示されないため、 Message
ステートメントを使用する必要があります。 詳細については、「Q# プログラムの構造を参照してください。
Azure portal で、お使いの Azure Quantum ワークスペースを選びます。
[Notebooks] を選択します。
[マイ ノートブック] を選択し、[新規追加] を選択します。
ファイル名を入力しファイル作成を選択します。
ノートブックの最初のセルには、Azure Quantum ワークスペースへの接続文字列が自動的に設定されます。
[+ Code]\(+ コード\) または [+ Markdown] を選んで、コードまたはマークダウン テキストのセルを追加します。
ヒント
ノートブックは、30 秒おきに自動保存されます。 Ctrl + S を押して、手動で保存することもできます。
ノートブックをアップロードする
1 つ以上の既存の Jupyter Notebook を Azure Quantum ワークスペースにアップロードできます。
注意事項
信頼できるソースからの Jupyter Notebook のみをアップロードして実行し、信頼できるソースからのパッケージのみをインストールしてください。 Azure Quantum のノートブックは出力をサンドボックスすることによってユーザーを保護しますが、Jupyter Notebook は任意のコード実行用に構築されているため、信頼できないソースからのノートブックをアップロードまたは実行する場合にはリスクが伴います。
Azure portal で、お使いの Azure Quantum ワークスペースを選びます。
[Notebooks] を選択します。
[マイ ノートブック] を選択します。
[新規アップロード] を選択します。
ノートブック ファイルをドラッグ アンド ドロップするか、または [ファイルの参照] を選択し、アップロードするノートブック ファイルを選択します。
既存のファイルを上書きする場合は、[Overwrite if already exists]\(既に存在する場合は上書き) を選びます。
[Upload files](ファイルのアップロード) を選択します。
ノートブックがアップロードされると、それらは [マイ ノートブック] に表示されます。
Note
別の Azure Quantum ワークスペースから保存されたノートブックをアップロードする場合は、ノートブックを実行する前に、接続情報 (サブスクリプション、リソース グループ、ワークスペース名、場所、リソース ID など) を更新する必要がある場合があります。
Notebooks を管理する
既存のノートブックの名前変更、削除、複製、ダウンロードを行うことができます。
Azure portal で、お使いの Azure Quantum ワークスペースを選びます。
[Notebooks] を選択します。
My ノートブックでノートブックを選択する
コンテキスト ウィンドウをクリックします。これは、ノートブックの名前の右側にある 3 番目のドット です。
[Rename Notebook]\(ノートブックの名前変更\)、[Delete Notebook]\(ノートブックの削除\)、[Duplicate Notebook]\(ノートブックの複製\)、または [Download Notebook]\(ノートブックのダウンロード\) を選びます。
分離:
Azure Quantum ワークスペース内の Jupyter ノートブックは、他のユーザーのノートブックからは分離されています。
- お使いの Jupyter Notebook インスタンスは、他のユーザーからのハイパーバイザー レベルの分離を使用して Azure Quantum によってホストされます。
- ノートブックは、サブスクリプション内のリンクされたストレージ アカウントに格納されます。
- Jupyter Notebook インスタンスのスコープは、ユーザーと特定のワークスペースの組み合わせに設定されます。 別のワークスペースにアクセスすると、別の Jupyter Notebook インスタンスが作成されます。 別のユーザーが同じワークスペースにアクセスした場合、それらのユーザーにはあなたとは別の Jupyter Notebook インスタンスが作成されます。
- ノートブックのスコープは、ユーザーと特定のワークスペースに対して設定されます。 別のワークスペースにアクセスした場合、同じノートブックが [マイ ノートブック] に表示されることはありません。 そのワークスペースにアクセスした別のユーザーに対して、あなたのノートブックが表示されることありません。
ノートブックのストレージ
Jupyter Notebook は、Azure Quantum ワークスペースにリンクされた Azure Storage アカウントに格納されます。
Note
Azure Quantum ワークスペースが作成されると、リンクされた Azure Storage アカウントでクロスオリジン リソース共有 (CORS) が有効になります。 これは、ポータルで Jupyter Notebook を使用する場合に必要です。 ポータルで Jupyter Notebook を使用する予定がなく、Azure Storage アカウントに対して CORS を有効にしない場合は、ストレージ アカウントを直接編集して CORS ルールを削除できます。 ストレージ アカウントのプロパティの [設定] で、[リソースの共有 (CORS)] を選択し、[ファイル サービス] でルールを削除してください。 ワークスペースで [ノートブック] ブレードをもう一度開くと、ルールが自動的に再作成されることにご注意ください。
制限事項
Azure Quantum ワークスペースでの Jupyter Notebook には、以下の制限があります。
- Jupyter Notebook インスタンスは無料であるため、最大 12 時間まで利用できます (その後、インスタンスは削除または再作成され、カスタム パッケージはすべて再インストールする必要があります)。
- セキュリティ パッチを適用したり、緊急の変更をロールアウトするために、Azure Quantum により Jupyter Notebook インスタンスの削除が必要になる場合があります。 可能な場合は、ワークフローが中断されることはありません。
- ノートブック インスタンスには、2 vCPU と 4 GB のメモリが事前に割り当て済みです。
- アイドル状態のカーネルは、30 分後に終了されます。 その後、セルを再実行する必要があります。
- ストレージ アカウントとワークスペースの場所は、Azure Quantum ワークスペース内の Jupyter Notebook のパフォーマンスに影響します。 可能であれば、ノートブックを使用する場所に近いリージョンにストレージ アカウントとワークスペースを作成してください。
- サブスクリプションごとに 1 つのリージョンで同時に開くことができるノートブックは 10 個以下です。 10 個を超えるノートブックを同時に開くには、複数のリージョンにワークスペースをデプロイする必要があります。
- 1 人のユーザーが、サブスクリプションごとに 1 つのリージョンで同時に開くことができるノートブックは 5 個までです。