Sites¶
Sites はパブリックベータ版です。利用できるかどうかは、プラン、地域、ワークスペースの設定によって異なる場合があります。ベータ期間中は、プランごとの使用制限がすべての Sites に適用されます。ChatGPT には現在の制限が表示され、制限に近づくと通知されます。制限に達すると、Site の作成、ストレージの追加、使用量の多い Site の公開継続ができなくなる場合がありますが、既存の Sites の編集や管理は引き続き行えます。
Sites を使用すると、ChatGPT で Web サイト、Web アプリ、ゲームを作成、ホスティング、改善、共有できます。プロンプトや互換性のある既存のプロジェクトを、別のデプロイワークフローを設定せずにホストされた体験に変えたい場合に Sites を使用してください。
ChatGPT デスクトップアプリで Sites を開きます。プロンプトまたは互換性のあるローカルプロジェクトから Site を開始し、Sites ビューに戻って管理できます。
Sites のデプロイ URL はすべて本番デプロイです。公開される前にビルドを確認したい場合は、デプロイせずにバージョンを保存するよう ChatGPT に依頼してください。
Sites を始める¶
ChatGPT で、プロンプトに「website」という単語を含めるか、@Sites に言及すると、Sites ワークフローを明示的に開始できます。
- Site を説明する
対象ユーザー、目的、必要な動作、Site が使用すべき情報を説明します。
- Site を確認する
生成されたコンテンツと動作を確認します。Site が意図した情報を使用し、想定どおりにデータを処理していることを確認してください。
- Site を改善する
変更したい内容を説明します。ChatGPT が変更を行ううえで役立つ場合は、関連ファイルや視覚的なコンテキストを追加します。
- Site を管理して共有する
Sites に戻って Site を再度開くか、改善します。準備ができたら、誰がアクセスできるかを選択し、生成されたリンクを共有します。
一般的なタスク向けに Sites のプロンプトを作成する¶
新しい Web サイト、ダッシュボード、または内部ツールの場合は、対象ユーザー、中心となる体験、必要な情報を含めます。
Build a project request dashboard for my operations team. Let team members
submit requests, see who owns each one, update the status, and filter the list.
Require people to sign in with their workspace account, and keep the request
data saved between visits.
既存のプロジェクトの場合は、現在のアプリを準備して公開するよう Sites に依頼します。
Deploy this project with Sites. Check whether it is compatible, make any
required changes, and give me the deployment URL.
Site に永続的なアプリケーションデータやアップロードされたファイルが必要な場合は、リクエストでその旨を伝えます。
Add player scores and avatar uploads to this game. Keep the scores and uploaded
avatars between visits.
デプロイされた内部アプリと、作成に使用された完全なプロンプトについては、Sites showcase を参照してください。
Site の分析情報を確認する¶
Sites はトラフィックを自動的に記録するため、分析 SDK を追加しなくても、デプロイされた Site がどのように利用されているかを確認できます。分析ビューには、ユニーク訪問者数とページビュー数の合計に加え、時間経過に伴う両方の指標が表示されます。日付範囲または粒度を変更すると、別の期間を確認できます。
Sites を開き、Site を見つけて、More actions > Analytics を選択します。
Analytics は現在、Enterprise ワークスペースが所有していない Sites で利用できます。
Sign in with ChatGPT を追加する¶
パブリック Site は誰でもアクセスできる状態を維持しながら、保存された進行状況、パーソナライズされたビュー、特定のユーザーに属する記録など、本人確認を利用する機能向けに Sign in with ChatGPT を任意で提供できます。ワークスペースに制限された Sites では、共有設定を適用するために ChatGPT の ID がすでに使用されています。
サインイン体験を追加するよう Sites に依頼します。
Add Sign in with ChatGPT to this public Site. Keep the Site available to signed-out visitors. Show a Sign in with ChatGPT action when someone is signed out. After they sign in, greet them with their full name when available, or their email address otherwise. Add a Sign out action, and keep authorization decisions in server-side code.
Sites はプラットフォームが提供するパスを通じてサインインとサインアウトのフローを処理し、その後、訪問者を Site に戻します。
<a href="/signin-with-chatgpt">Sign in with ChatGPT</a>
<a href="/signout-with-chatgpt">Sign out</a>
訪問者がサインインすると、Sites は次のリクエストヘッダーを通じて、その ID をサーバーに転送します。
oai-authenticated-user-emailには、認証されたメールアドレスが含まれます。oai-authenticated-user-full-nameには、空でないプロフィール名が含まれる場合があります。これは任意として扱い、メールアドレスにフォールバックしてください。
認可の判断はサーバー側のコードで行い、名前を分割したヘッダーに依存しないでください。
プロジェクト、バージョン、デプロイについて理解する¶
Site は、ChatGPT の Sites から再度開き、改善、設定、共有できる、永続的にホストされた出力です。
Sites プロジェクトは、ローカルソースプロジェクトを Sites で管理されるホスティングにリンクします。Sites はそのリンクと、任意のストレージバインディング名を .openai/hosting.json に保存します。新しく作成したローカルスターターは、project_id なしで開始できます。Sites はホストされたプロジェクトをプロビジョニングした後にこれを追加します。
たとえば、リレーショナルデータベースバインディングを使用し、ファイルストレージを使用しないプロビジョニング済み Site には、次のような内容を含めることができます。
Sites の公開には、次の 2 つの段階があります。
- バージョンを保存する。 ChatGPT はデプロイ可能なバージョンをビルドします。ローカルソースプロジェクトの場合、ChatGPT はそのバージョンをビルドに使用した Git コミットに関連付けます。確認可能なデプロイ候補を作成したい場合に、この段階を使用します。
- バージョンをデプロイする。 ChatGPT は保存されたバージョンを公開し、デプロイに成功すると本番 URL を報告します。選択した対象ユーザーに Site へのアクセスを許可する場合にのみ、この操作を行ってください。
以前のデプロイ候補を特定する必要がある場合は、保存されたバージョンを一覧表示または確認するよう ChatGPT に依頼してください。
サポートされている Site の形態を選択する¶
新しいプロジェクトでは、Sites ワークフローを推奨される Site スターターで開始できます。既存のプロジェクトでは、デプロイを依頼する前に、互換性のあるデプロイ成果物を生成できるプロジェクトかどうかを ChatGPT に確認してもらいます。
必要な製品の動作を ChatGPT に伝えると、適切な Site の形態を選択できます。
| Site のニーズ | Sites に依頼する内容 |
|---|---|
| コンテンツ主体の Web サイトまたはランディングページ | 体験に必要な場合を除き、永続的なアプリケーション状態を持たない Site |
| 保存された記録、ユーザーの進行状況、ゲームのスコア | D1。永続的な構造化データ向けのリレーショナルデータベース |
| 画像、ドキュメント、音声、動画、その他のアップロード | R2。ファイル向けのオブジェクトストレージ |
| 検索可能なメタデータを持つアップロードファイル | メタデータ用の D1 とファイル内容用の R2 |
| 現在のワークスペースユーザーの ID が必要な内部 Site | ワークスペース認証済みのユーザー ID |
| パブリックサインインまたは外部 ID プロバイダー | 認証が有効な Site |
テーマの選択や閉じたバナーなど、一時的な表示状態に永続ストレージを要求しないでください。ホストされた Site に記憶されることをユーザーが期待する製品データについては、永続ストレージを要求してください。
アクセスとシークレットを管理する¶
新しい Site は、アクセス設定を変更するまで、所有者とワークスペース管理者に限定されます。コンテンツ、データ処理、想定される対象ユーザーを確認している間は、アクセスを制限したままにしてください。
アカウントとワークスペースの設定によって、共有オプションには次のものが含まれる場合があります。
- 所有者とワークスペース管理者
- 選択したアクティブユーザーまたはグループ(サポートされている場合)
- ワークスペース内の全員(サポートされている場合)
- インターネット上の全員(パブリック公開が有効な場合のみ)
共有するとユーザーは Site にアクセスできますが、編集はできません。Enterprise ワークスペースでは、パブリック公開はデフォルトで無効になっており、管理者が有効にする必要があります。
限定共有の場合、招待された訪問者はアクセス権を付与されたアカウントでサインインする必要があります。パブリック Site は、ChatGPT ワークスペースへのアクセスなしで利用できます。Site の対象ユーザー設定と、Site に組み込まれたサインイン機能は別々の制御です。
たとえば、次のようになります。
Change this Site's access to everyone in my workspace after showing me the
current Site and confirming its URL.
ランタイム環境値を設定する¶
Sites を開き、Site の設定を開いて、ホストされた環境変数とシークレットを追加、更新、または削除します。シークレット値をプロンプト、添付ファイル、Site のコンテンツに含めないでください。
これらの値を .openai/hosting.json に保存しないでください。ローカルの .env と .env.example のファイルを、ローカル開発に必要なキーと一致させ、シークレット値をコミットしないでください。
ホストされた環境値を追加、更新、または削除した場合は、承認済みの保存バージョンを再デプロイするよう ChatGPT に依頼してください。次回のデプロイで更新された設定が使用されます。
カスタムドメインを接続する¶
カスタムドメインが利用できる場合は、すでに所有している apex ドメインまたはサブドメインを接続できます。Sites はドメインを登録しないため、ドメインの DNS レコードを変更できる必要があります。カスタムドメインは、Enterprise ワークスペースではローンチ時点で利用できません。
ドメインを接続するには、次の手順を実行します。
- Site の設定を開き、Add domain を選択します。
- 使用する apex ドメインまたはサブドメインを入力します。
- Sites が提供する DNS レコードと値をコピーし、ドメインプロバイダーを通じて追加します。
- 数分待ってから Site の設定に戻り、ドメインのステータスを更新します。
ChatGPT に Site をドメインに割り当てる作業を手伝ってもらうこともできます。ブラウジングまたはコンピュータ操作が有効な場合は、サインイン後に ChatGPT がドメインプロバイダーの操作を支援できます。
共有前に確認する¶
Site を共有する前に、次の点を確認してください。
- コンテンツ、生成されたテキストと画像、リンク、アップロードされたファイル、フォーム、インタラクティブな動作を確認します。
- 機密情報やセンシティブ情報、シークレット値、または共有する権利のない第三者のコンテンツが公開されていないことを確認します。
- アクセス動作とサインイン動作を含め、想定される訪問者の体験で Site をテストします。
- 個人情報やその他の訪問者コンテンツを収集する機能を確認します。Site がその情報を収集、共有、公開するかどうかを決定します。
- Site が Sign in with ChatGPT を使用する場合は、受け取る訪問者情報とその使用方法を説明します。
- Site が個人データを収集または処理する場合は、適用されるプライバシーおよびデータ保護法を遵守します。
- 想定される対象ユーザーに適した、最も限定的な共有オプションを選択します。
- 共有した Site を開き、想定される対象ユーザーがアクセスできることを確認します。
ローカルプロジェクトから構築した Site の場合は、ソースの変更とデータベースのマイグレーションも Codex のレビューウィンドウで確認してください。
Site を停止または削除する¶
Site を削除せずにアクセスを解除するには、共有設定を開き、自分自身または選択したユーザーにアクセスを制限します。以前の対象ユーザーが Site を開けなくなったことを確認してください。
Site を完全に削除するには、次の手順を実行します。
- Sites を開き、Site を見つけます。
- Delete site を選択し、プロンプトの指示に従います。
- Site のスラッグを入力し、Permanently delete を選択します。
Site を削除すると、完全に削除されます。削除した Site は復元できません。
制限とサポートされていない用途を理解する¶
Sites は、サポートされている Sites ランタイムで実行される Web 体験をホストします。一部のフレームワーク、プライベートネットワーク、データベース、バックグラウンドサービス、ホスティングパターンはサポートされていません。
Sites はローンチ時点で、データレジデンシーまたは推論レジデンシーをサポートしていません。これには、デプロイされた Sites、Site のコード、D1 と R2 のデータおよびファイルストレージ、生成された成果物、ログが含まれます。
Sites を、保護対象保健情報または決済カードデータの処理、13 歳未満または適用されるデジタル同意年齢未満の子どもを対象とすること、金融取引の有効化、マルウェアの配布、フィッシングの有効化、個人や組織へのなりすまし、その他 OpenAI のポリシーに違反する目的で使用しないでください。現在の制限とポリシーへのリンクについては、ChatGPT Sites の作成と管理を参照してください。
関連ドキュメント¶
- ChatGPT デスクトップアプリでは、アプリのナビゲーション、プロジェクト、チャットについて説明します。
- 変更を確認してリリースするでは、公開前にソースの変更を確認する方法を説明します。