よくある質問
基本
Colaboratory(Colab)は、ホスト型の Jupyter Notebook サービスで、GPU や TPU などのコンピューティング リソースへのアクセスを無料で提供しています。このサービスを利用するための設定は必要ありません。Colab は特に、機械学習、データ サイエンス、教育に適しています。
はい。Colab は料金なしでご利用いただけます。
Colab は、世界中のできるだけ多くの学生やリソース不足のグループが利用できるように、積極的にノートブックでプログラミングを行っているユーザーを優先しています。また、他者に悪影響を与えるアクションや、Google の不正使用対策ポリシーの回避に関連するアクションは制限されています。禁止されているアクションのリストについては、Colab ではどのようなアクティビティが制限されていますか?をご覧ください。Colab のリソースは保証型ではなく、無制限でもありません。使用量上限は状況に応じて変動します。これは Colab がリソースを料金なしで提供するうえで必要です。詳細については、リソース制限をご覧ください。
Colab のマネージド ランタイムでは、他者に悪影響を与える不正なアクションや、Google のポリシーの回避に関連するアクションは禁止されています。以下の行為は、Colab のすべてのマネージド ランタイムで禁止されています。
- ファイル ホスティング、メディア配信、または Colab とのインタラクティブなコンピューティングに関連していない他のウェブサービスの提供
- 大量のデータのダウンロードまたはピアツーピアのファイル共有
- リモート プロキシへの接続
- 暗号通貨のマイニング
- サービス拒否攻撃の実行
- パスワード クラッキング
- 複数アカウントの使用による、アクセス制限またはリソース使用量制限の回避
- ディープフェイクの作成
残念ながら、Google の不正行為検出システムがどのように機能するかについて具体的に説明することはできません。不正な行為者が Colab のコンピューティング補助金を利用しようとするからです。
Colab は、これらの制限を行っているだけでなく、世界中の学生やリソース不足のグループが利用できるように、積極的にノートブックでプログラミングを行っているユーザーを優先しています。Colab のコンピューティング単位数の残量がプラスでない場合に料金なしで実行する Colab のマネージド ランタイムでは、以下の行為は禁止されており、警告なしでいつでも強制終了される可能性があります。
- SSH シェル、リモート デスクトップなどのリモート コントロール
- ノートブック UI をバイパスした、主にウェブ UI を介したやり取り
- チェスのトレーニング
- 分散コンピューティング ワーカーの実行
こちらからいずれかの有料プランを購入し、コンピューティング単位数の残量をプラスに維持すると、これらの制限を解除できます。これらの説明に一致するすべてのランタイムが強制終了されるわけではありません。Google は、グローバル コミュニティに利益をもたらすために、妥当な範囲で可能な限りユーザーを支援しようと努めています。
GCP Marketplace または Colab Enterprise では、Colab で適用される使用量上限のない保証型リソースを購入できます。または、自分自身で管理するローカル ランタイムを介して独自のコンピューティングを使用することもできます。ただし、これらのアプローチでは、ランタイムのファイルシステムに Google ドライブをマウントすることはできません。
Colab は、世界中の学生やリソース不足のグループが利用できるように、積極的にノートブックでプログラミングを行っているユーザーを優先しています。
無料枠のユーザーがノートブック UI をバイパスしたり、Colab のマネージド ランタイムでウェブ UI を使用してコンテンツを生成しようとすると、ランタイムが終了することがよくあります。これらは人気の高い魅力的なエクスペリエンスですが、コンピューティング負荷が高く、プログラミングのサポートを提供したいと考えている無料枠のユーザーにとっての優先事項には含まれていません。
こちらからいずれかの有料プランを購入すると、この種の制限を解除できます。
GCP Marketplace または Colab Enterprise では、Colab で適用される使用量上限のない保証型リソースを購入できます。または、自分自身で管理するローカル ランタイムを介して独自のコンピューティングを使用することもできます。ただし、これらのアプローチでは、ランタイムのファイルシステムに Google ドライブをマウントすることはできません。
Jupyter は、Colab のベースになっているオープンソース プロジェクトです。Colab では、Jupyter のノートブックを使用したり他のユーザーと共有したりできます。ダウンロード、インストール、実行などの操作は一切不要です。
Colab の使用
Colab ノートブックは、Google ドライブに保存することも、GitHub から読み込むこともできます。Colab ノートブックは、Google ドキュメントや Google スプレッドシートと同じように共有できます。Colabo ノートブックの右上にある [共有] ボタンをクリックするか、Google ドライブのファイル共有の手順に沿って共有してください。
ノートブックの全コンテンツ(テキスト、コード、出力、コメント)が共有されます。保存、共有の対象からコードセルの出力を除外するには、[編集] > [ノートブックの設定] > [このノートブックを保存する際にコードセルの出力を除外する] を使用します。使用している仮想マシンは、設定済みのカスタム ファイル、カスタム ライブラリを含め、共有されません。そのため、ノートブックで必要なカスタム ライブラリまたはカスタム ファイルのインストールと読み込みを行うセルについては、保存対象から除外しないことをおすすめします。
はい、できます。[ファイル] メニューの [ノートブックをアップロード] を選択してください。
Google ドライブで、Colab ノートブックを検索できます。ノートブック ビューの左上にある Colab ロゴをクリックすると、ドライブが開いてすべてのノートブックが表示されます。また、[ファイル] > [ノートブックを開く] を選択して、最近開いたノートブックを探すこともできます。
コードは、各アカウント専用の仮想マシンで実行されます。一定時間アイドル状態にある仮想マシンは削除されます。また、仮想マシンには、Colab のサービスで定められた最大存続時間があります。
作成した Colab ノートブックは、こちらの手順で Google ドライブからダウンロードできます。また、Colab の [ファイル] メニューからダウンロードすることもできます。Colab ノートブックはすべて、オープンソースの Jupyter ノートブック形式(.ipynb)で保存されています。
[ランタイム] > [ランタイムを接続解除して削除] を選択することで、割り当てられている管理下のすべての仮想マシンを元の状態に戻すことができます。この方法は、システム ファイルを誤って上書きしてしまった場合や、互換性のないソフトウェアをインストールしてしまった場合など、仮想マシンの状態が健全でなくなった場合に便利です。リセットできる回数は Colab によって制限されており、リソースが不当に消費されるのを防いでいます。リセットできなかった場合は、しばらくしてからもう一度お試しください。
drive.mount()
が「タイムアウト」と表示されて失敗したり、フォルダからの読み取り I/O オペレーションが失敗したりすることがあるのはなぜですか?Google ドライブのオペレーションは、フォルダ内のファイル数やサブフォルダ数が増えすぎるとタイムアウトすることがあります。最上位の「マイドライブ」フォルダに何千件ものアイテムを保存することは避けてください。ルート ディレクトリに約 1 万件以上のアイテムが保存されていると、マウントが失敗することがあります。
この問題が発生した場合は、「マイドライブ」の直下にあるファイルやフォルダをサブフォルダに移動してみてください。ただし、各フォルダ内のアイテムは 1 万件を超えないようにしてください。drive.mount()
が正常終了した後に他のフォルダから読み取りを行う場合も、同様の問題が発生することがあります。多数のアイテムが含まれているフォルダ内のアイテムにアクセスすると、OSError: [Errno 5] Input/output error
などのエラーが発生することがあります。この問題は、直下にあるアイテムをサブフォルダに移動することで解決できます。
注: ファイルやサブフォルダをゴミ箱に「移動」するだけでは問題が解決しないことがあります。その場合は、ゴミ箱を空にしてください。
また、Google ドライブの代わりとして DagsHub Storage を試すこともできます。DagsHub Storage は、大規模なデータセットや機械学習に対応できるように構築されており、Colab での一般的なワークフローにおいて、より高い拡張性と信頼性が期待できます。詳しくは、こちらのドキュメントまたはサンプル ノートブックをご覧ください。DagsHub は、Google と提携していないサードパーティのサービスです。
drive.mount()
の処理が遅いことがあるのはなぜですか?Google ドライブ内のファイルは、Colab のランタイムから離れたリージョンに保存されていることがあります。パフォーマンスを最大化するには、ドライブからの読み取りと書き込みを減らしてください。drive.mount()
でマウントしたフォルダにおけるオペレーションは、Colab のランタイムに依存することに注意してください。Colab を介してフォルダからフォルダへファイルを移動しているときにオペレーションが中断された場合、転送中のデータがすべて失われる可能性があります。
Colab で Google ドライブをマウントすると、ノートブックのどのコードからでも Google ドライブ内のすべてのファイルにアクセスできます。通常、ユーザーは新しいランタイムに接続するたびに、コードセルをノートブックに追加して、このアクセス権を手動で付与する必要があります。これにより、ユーザーはノートブックに付与されている権限を完全に把握できます。
場合によっては、Google ドライブへのアクセス権が必要とされるのは 1 回のみで、その後のセッション中に Google ドライブが自動的に再マウントされます。ファイルを保護するため、これは、ノートブックが複数のチェックに合格した場合にのみ許可されます。たとえば、他のユーザーが編集したノートブックは自動的に Google ドライブをマウントしません。
Google ドライブでは、ユーザー単位およびファイル単位のオペレーション数や帯域幅の割り当てなど、さまざまな上限が適用されます。こうした上限を超えると、上記のように Input/output error
が発生し、Colab の UI に通知が表示されます。一般的な原因としては、よく使用されている共有ファイルへのアクセスや、さまざまなファイルへの短期間の頻繁なアクセスが挙げられます。対応策の例:
- drive.google.com でファイルをコピーし、他のユーザーの使用状況が上限を超えないように共有の範囲を絞る。
- I/O 読み取りを細かく何度も行うことは避ける。代わりにアーカイブ形式(例:
.zip
ファイル、.tar.gz
ファイル)で Google ドライブから Colab VM にデータをコピーし、マウントされた Google ドライブのディレクトリではなく VM 上でローカルでデータのアーカイブを解除する。 - 容量の上限がリセットされるまで、1 日待つ。
Google ドライブでは、各ユーザーがドライブに保存できるデータの量に制限があります。ドライブのオペレーションが Input/output error
によって失敗し、容量上限を超えたという通知が表示された場合、drive.google.com で一部のファイルを削除し、ゴミ箱を空にして空き容量を確保してください。確保した空き容量が Colab で使用できるようになるまで、少し時間がかかることがあります。
ドライブの容量を購入する場合は、Google ドライブにアクセスしてください。ドライブの容量を購入しても、Colab VM で利用できるディスク容量は増えないことに注意してください。Colab VM で利用できるディスク容量を増やすには、Colab Pro のサブスクリプションにご登録ください。
リソース制限
Colab では、大量の強力な GPU を低価格で動的に提供するために、使用量上限とハードウェアの可用性を動的に調整する柔軟性を維持する必要があります。
料金がかからないバージョンの Colab では、GPU のような高価なリソースへのアクセスが厳しく制限されています。有料バージョンの Colab は、支払い額に見合う高い価値をユーザーに提供することを目標としています。
GCP Marketplace または Colab Enterprise では、Colab で適用される使用量上限のない保証型リソースを購入できます。または、自分自身で管理するローカル ランタイムを介して独自のコンピューティングを使用することもできます。ただし、これらのアプローチでは、ランタイムのファイルシステムに Google ドライブをマウントすることはできません。
Colab では、状況によって変動する動的な使用制限を設け、無制限のリソース提供やリソースの保証を行わないことで、料金なしでのリソース提供を実現しています。つまり、全体的な使用量上限は、アイドル タイムアウト時間、VM の最大存続期間、利用可能な GPU タイプなどの要素と同様、時間とともに変化する可能性があります。Colab では、時間とともに変化する可能性があることなどから、これらの上限を公開していません。
こちらからいずれかの有料プランを購入すると、コンピューティング能力を強化し、実行時間を伸ばすことができます。それらのプランでも、リソースの可用性は時間とともに動的に変化する可能性があります。コンピューティング単位数の残量を使い切った有料ユーザーは、残量が増えるまで無料枠のポリシーと制限の適用を受けます。
GCP Marketplace または Colab Enterprise では、Colab で適用される使用量上限のない保証型リソースを購入できます。または、自分自身で管理するローカル ランタイムを介して独自のコンピューティングを使用することもできます。ただし、これらのアプローチでは、ランタイムのファイルシステムに Google ドライブをマウントすることはできません。
Colab で利用可能な GPU / TPU のタイプはそのときによって変更されます。これは、Colab のリソースへのアクセスを料金なしで提供するうえで必要な処置です。
こちらの有料プランのいずれかを購入すると、利用可能状況に応じてプレミアム GPU を利用できます。
特定の専用ハードウェアへのアクセスをご希望の場合は、GCP Marketplace Colab の使用をご検討ください。
Colab では、インタラクティブ コンピューティングが優先されます。アイドル状態の場合、ランタイムはタイムアウトします。
料金がかからないバージョンの Colab の場合、ノートブックは可用性と使用パターンに応じて最長で 12 時間実行できます。Colab Pro、Pro+、従量課金制では、コンピューティング ユニットの残量に応じてコンピューティングの可用性が高くなります。
ノートブックは通常、可用性と使用パターンに応じて最長で 12 時間実行できます。Pro、Pro+、従量課金制プランでは、利用可能なコンピューティング ユニットを使い切るとバックエンドが終了する可能性があります。
Colab Pro+ では、十分なコンピューティング ユニットがあれば、最長 24 時間連続でコードを実行できます。アイドル タイムアウトは、コードの実行が終了した場合にのみ適用されます。
GCP Marketplace で専用の VM を購入すると、ランタイムの制限とアイドル タイムアウトを完全に緩和できます。
料金がかからないバージョンの Colab では、標準のシステムメモリ プロファイルを持つ VM にアクセスできます。
有料バージョンの Colab では、可用性とコンピューティング ユニットの残量に応じて、ハイメモリ システム プロファイルを持つマシンにアクセスできます。
注: メモリとはシステムメモリを指し、すべての GPU チップは同じメモリ プロファイルを持ちます。
作業が終了したら Colab のタブを閉じ、作業に不要な GPU または余分なメモリを使用しないようにしてください。そうすれば、Colab で使用量上限に達することが少なくなります。上限に達したら、従量課金制を利用していつでも追加のコンピューティングを購入できます。
有料バージョンの Colab を最大限に活用する方法について詳しくは、Colab の定期購入を最大限に活用するをご覧ください。
Colab では、GPU と TPU を含む、オプションの高速コンピューティング環境を提供しています。GPU または TPU ランタイムでコードを実行しても GPU または TPU が使用されているとは限りません。GPU の使用量上限に達するのを避けるには、GPU を使用していない場合は標準ランタイムに切り替えることをおすすめします。[ランタイム] > [ランタイムのタイプを変更] を選択し、[ハードウェア アクセラレータ] を [なし] に設定します。
Colab で GPU と TPU のランタイムを使用する方法の例については、GPU を使用した TensorFlow と Colab での TPU のサンプル ノートブックをご覧ください。
AI コーディング
Google は、自社最先端のコーディング支援モデルに基づく AI による予測入力、自然言語によるコーディング、chatbot などの AI コーディング機能を徐々にリリースしています。
現在、一部の言語 / 地域のユーザーがこれらの機能を利用できます。
一部の AI 機能は期間限定で未登録ユーザーにも利用可能になっています。
AI コーディング機能を利用できるのは、一部の言語 / 地域のユーザーに限られています。AI コーディング機能にアクセスするには以下を確認してください。
- アカウントの年齢が 18 歳以上であること
入力を始めると AI による予測入力が表示されます。自然言語によるコーディングと chatbot の両方に [生成] ボタンと [Gemini] ボタンが表示されます。アクセスできる条件を満たしているにもかかわらず、いずれも表示されない場合は、サービスに関するフィードバックをお送りください([ヘルプ] > [フィードバックを送信])。メールでの返信を希望される場合は、[Google が詳細情報や最新情報に関するメールを送信することを許可する] というチェックボックスをオンにする必要があります。
また、未登録のユーザーは期間限定でコード生成を利用できます。
Colab はコーディングとコーディングに関するトピックに役立ちますが、Colab の AI コーディングはまだ試験運用版であり、コードの使用またはコーディングの説明に関する責任はユーザーが負います。自分で判断し、コードを利用する前にエラー、バグ、脆弱性がないか慎重にテストとレビューを行ってください。
生成されたコードがオープンソース ライセンスの対象である場合は、Colab が言及します。
Colab chatbot の Gemini への質問は、Colab または Colab でのコーディングに関連する内容のみにしてください。別のテーマについて chatbot に質問する場合、一般的なクエリ(および Java などの他の言語に関する質問)には Gemini をおすすめします。
Colab の AI コーディングは Python で最も効果を発揮し、Python 向けに最適化されています。
Colab の AI コーディングは試験運用版であり、一部の回答が不正確になる可能性があるため、Colab の回答は二重に確認してください。皆様からのフィードバックをもとに、Colab の AI コーディングは日々進化しています。
生成 AI によって人々の発想を加速させるのは本当に面白いことですが、まだ始まったばかりであり、AI コーディングは試験運用中です。Colab には、Google の AI の原則に則って安全管理機能とフィードバックの明確なメカニズムが組み込まれていますが、不正確な情報、リンク、不適切な発言が表示される可能性があることにご注意ください。
なんらかの理由で安全でない、有用でない、不正確、または不適切と感じる AI 応答を受け取った場合は、Google にフィードバックを送信できます。
応答の右下にある、高評価または低評価のアイコンをクリックしてください。
Colab で AI コーディングを無効にするには、[ツール] メニューから [設定]、[AI アシスタント] の順に選択します。
そこで同意を取り消したり、AI コーディング機能を非表示にしたりできます。
他のスタンドアロン LLM エクスペリエンスと同様に、Colab の AI コーディングは、独自のコンテンツを生成することを目的としており、既存のコンテンツを長々と複製するものではありません。Google のシステムは、このような問題が発生する可能性を抑えるように設計されており、今後もこれらのシステムの動作は改善されます。Colab がソースから直接長々と引用した場合は、そのソースについて言及します。
Colab で生成 AI 機能を使用するとき、Google はプロンプト、関連コード、生成された出力、関連する機能の使用状況に関する情報、フィードバックを収集します。Google ではこのデータを、Google Cloud のようなエンタープライズ プロダクトを含め、Google のプロダクトやサービス、そして機械学習技術を提供、改善、開発する目的で使用します。
プロダクトの品質向上と改良のため、プロンプト、生成された出力、関連する機能の使用状況に関する情報、フィードバックについて、人間のレビュアーが読み取りやアノテーション、処理を行う場合があります。メッセージやフィードバックに、お客様自身や他の人を特定できるような取り扱いに注意を要する情報(機密情報など)や個人情報を使用しないでください。データは誰によって提供されたものかわからないように保存されるため、削除のリクエストに応じることはできず、最大 18 か月間保持されます。
コードセルでの [生成] では、コード スニペットを作成するための状況に応じたヘルプが提供されます。コードは、プロンプトの他に、周囲のノートブック コンテンツを使用してモデルにコンテキストを提供することで生成されます。
Colab chatbot の Gemini では、Python に関する一般的な質問をすれば、コード スニペットと説明が返されます。
その他の質問
Google では、2014 年に Jupyter 開発チームと協力し、このツールの初期バージョンをリリースしました。その後、Google 社内での利用を通じて発展させたのが現在の Colab です。
Colab では、Python のサポートとそのエコシステムのサードパーティ製ツールに重点が置かれています。他の Jupyter カーネル(R、Scala など)のサポートを望む声があることも承知しており、サポートしたいと考えておりますが、まだ日程を明らかにできる段階にはありません。
Colab ノートブックを開き、[ヘルプ] メニューから [フィードバックを送信] を選択してください。
Colab では、さまざまな出力を安全に表示するために、ホスト元の異なる HTML iframe と Service Worker を使用しています。ブラウザで iframe 内の Service Worker を使用するにはサードパーティの Cookie を有効にする必要があります。すべてのサイトに対してサードパーティの Cookie を有効にする別の手段としては、ブラウザの設定でホスト名(googleusercontent.com)を許可する方法もあります。
Colab のエディタでは一般的な等幅フォントを使用しています。最新のブラウザでは等幅フォントに使用するフォント ファミリーを設定できます。一般的なブラウザでの手順:
- Firefox: Firefox サポート ドキュメントの手順に沿って、[等幅] フォントを設定します。
- Chrome:「chrome://settings/fonts」にアクセスして、[固定幅フォント] セクションを変更します。
Colab での Python 2 のサポートは終了しました。Python 2 から Python 3 へのコードの移行については、Python 2 コードから Python 3 への移行をご覧ください。
お申し込みページの「よくある質問」をご覧ください。
Colab Pro、Colab Pro+、従量課金制に関する情報(価格、アップグレードが処理される方法を含む)については、お申し込みページをご覧ください。
Colab への Workspace ユーザーのアクセスは、組織の管理者がアクセスできる Workspace のオン / オフのコントロールによって制御されます。
Workspace for Education の組織は、学生(18 歳未満)が Google Workspace for Education アカウントで追加サービスを使用することについて保護者の同意を得る必要があります。これを行うには、こちらのお知らせ用テンプレートを使用します。追加サービスのリストに Colab を含めるようにしてください。
詳しくは、ヘルプセンターの記事「Google Workspace for Education について保護者と情報を共有する」をご覧ください。