短い答え
いいえ。Whiziにオフラインモードはありません。応答を生成するために、Whiziはリクエストに合理的に必要な情報をOpenRouterと経路上のモデルプロバイダー、あるいは選択した機能が使う別のプロバイダーに送信するため、回答は常にWhizi以外の企業へのネットワーク往復になります。ホスティング、同期されたチャット、メディア、アカウントの状態、利用上限、レポート、セキュリティと運用処理はすべてCloudflare Workers、D1、R2、Durable Objects上で動作しており、あなたが入力している会話もサーバー上に存在するということです。
モデルの一覧も同じ理由でサーバー側にあります。選択画面はWhiziバックエンドのGET /api/modelsから提供され、Webとモバイルのクライアントにハードコードされたモデル一覧は、その呼び出しに届かないときだけ使われるオフライン用のフォールバックにすぎません。フォールバック一覧は選択画面の表示だけを担うもので、通信が切れているときにそこに名前が見えても、その裏で実際に答えられるとは限りません。
| 接続が必要なもの | デバイス上で起きること |
|---|---|
| すべてのプランでの、あらゆるモデルの返信 | 選んだテーマがローカルストレージに保存され、次回訪問時に復元される |
| チャット一覧や会話の読み込み | ChatGPTやClaudeのエクスポートファイルの解析。ブラウザが送信前に読み込む |
| メッセージの送信、編集、バージョンの切り替え | 回答内のファイルカードから.xlsxや.docxを作成すること |
| ウェブ検索、音声、画像生成 | 後述するモバイルアプリの最近の会話のキャッシュ |
| ファイルのアップロードと、署名付きURLを通じた保存済みメディアの閲覧 |
モバイルアプリがデバイスに保持するもの
プライバシーポリシーはこの点を具体的に定めています。モバイルアプリは、ログイン済みまたはゲストのデバイス上に直近の会話を最大40件までローカルにキャッシュすることがあり、そのキャッシュは別のクラウドバックアップではありません。どのように消去されるか、そしてアカウント上の他のデータがどこにあるかはWhiziがデータを保存する場所にまとめています。
直近の会話のキャッシュはオフライン閲覧モードではなく、処理がどこで行われるかという点は何も変わりません。会話とメッセージは、削除するかアカウントを削除するまでアカウント上に保持され、新しい返信は依然としてネットワーク経由でプロバイダーに届く必要があります。
プランの判定もサーバー側で行われます。課金はアカウント単位で、ティアはそのアカウント自身のサブスクリプションからただ一箇所で導出されます。両プラットフォームが1つのアカウントをどう共有しているかはモバイルでのWhiziをご覧ください。
返信の途中で接続が切れた場合
生成処理は会話ごとのDurable Object上でサーバー側で実行されるため、ストリーミングの途中でタブを閉じても回答は失われず、返信はそのまま保存されます。タブを開き直した場合や別のデバイスからも、GET /api/conversations/:id/generate/activeを通じて進行中の生成に再接続できます。戻ってきて会話を再読み込みし、保存された内容を確認してください。
ただし最初のごく短い時間だけは当てはまりません。上流への接続が完了する前にクライアントが切断すると、サーバーはGeneration aborted before it started.と記録し、空のボディでHTTP 408を返します。つまりモデルには何も届いていません。
停止処理はクライアント側ではなくサーバー側が権威を持ちます。コーディネーターがプロバイダーからの読み取りをキャンセルし、途中までの回答を保存し、ロックを解放して、届かなかったターン分を払い戻します。ストリーミング中に表示される文字列とそれぞれの意味の全一覧はメッセージが送信できないにあります。
通信が完了できないときに表示される文字列
Whiziは一律の汎用メッセージではなく、実行中だった呼び出しの失敗をそのまま表示するため、表示される文字列は何をしていたかによって異なります。各文字列はそのまま引用し、それぞれが記録されている条件とともに示します。
| 文字列 | 記録されている条件 | 詳細 |
|---|---|---|
Failed to send message. | 送信に失敗し、バックエンドからメッセージが返らなかったときのウェブサイトのフォールバックトースト | メッセージが送信できない |
Could not load your chats. Please refresh to try again. | チャット一覧の読み込みに失敗したときに表示されるトースト | メッセージが送信できない |
Failed to retrieve session token. | チャット一覧、チャットの読み込み、削除、名前変更、アップロードの各呼び出しの前にトークン取得が何も返さなかったときに発生 | ログインとアカウントへのアクセス |
The import could not be finished. Check your connection and try again. | インポート実行中のその他のアップロード失敗 | チャットのインポートエラー |
Something went wrong. Please close and try again. | 共有ダイアログの汎用エラー。接続断やHTMLエラーページなど、失敗自体に固有のメッセージがない場合にのみ表示される | 会話を共有する |
The realtime voice connection failed. | ウェブソケットのエラーイベントで表示される | 音声モードが動作しない |
The realtime voice connection was closed. | セットアップ完了後にウェブソケットが閉じたときに表示される | 音声モードが動作しない |
Connection error | 音声セッションが失敗したときの音声オーバーレイの状態ラベル | 音声モードが動作しない |
That didn't send. Check your connection and try again. | それ以外のすべての失敗に対するフィードバックのフォールバック | トラブルシューティング |
音声機能については一点補足が必要です。その仕組みは独立しているように読めますが、実際は違います。ワーカーが短命のトークンを発行し、ブラウザはGoogleへ直接WebSocketを開くため、音声データがWhiziのバックエンドサーバーを経由することはありません。ただしこれはプライバシー上の性質であって、オフラインの性質ではありません。Googleへのソケットもソケットであることに変わりはなく、それを開くセッショントークンはワーカーが発行しています。
通信が切れる前にしておくこと
以下のどれも、接続なしで動くモデルを用意してくれるわけではありません。目的は、自分のコンテンツにアクセスできない状態で立ち往生しないことです。
データを持ち出す。 GET /api/account/exportは、アカウントデータを1つのダウンロード可能なJSONファイルとして返し、設定のアカウント欄にある「データのエクスポート(Export Data)」からアクセスできます。オフラインで重要な注意点は、メディアは実データではなくメタデータと署名付きURLとしてエクスポートされることです。つまりJSONは記録を保持しますが、画像そのものは後で取得する必要があります。アカウントが保持する内容はWhiziがデータを保存する場所にまとめています。
電波があるうちに回答をファイルとして取り出す。 チャットの回答はフェンス付きブロックを出力でき、ウェブサイトはそれをファイルカードとして表示し、ブラウザ上で実際の.xlsxや.docxに変換します。生成自体はローカルで行われますが、それを生んだ回答はローカルではありません。
インポートは移動中ではなく、到着してから行う。 エクスポートファイルを選ぶのはローカルの作業ですが、アップロードはそうではありません。とはいえ途中で接続が切れても損はありません。すべての会話はアカウント、送信元、送信元IDの組み合わせで管理され、1回だけ反映されるためです。失敗時の文字列はチャットのインポートエラーにあります。
- Whiziにオフラインモードはなく、デバイス上で回答を生成する経路もありません
- すべての返信は、経路上のモデルプロバイダーへのネットワークリクエストです
- モデル選択画面はバックエンドから提供され、組み込みの一覧はあくまでフォールバックです
- モバイルアプリは直近の会話を最大40件までキャッシュすることがありますが、それは別のクラウドバックアップではありません
- ティアは、あなた自身のアカウントのサブスクリプションからサーバー上で導出されます
- クライアントの接続が切れても返信は失われず、生成はDurable Object内で続行されます
- 移動前に、設定のアカウント欄からアカウントをJSONとしてエクスポートしてください
- エクスポート内のメディアは署名付きURLなので、後で改めて取得する必要があります
よくある質問
Whiziは機内でWi-Fiがなくても使えますか?
いいえ。すべての返信はネットワーク経由でモデルプロバイダーが生成するため、接続がないとモデルへの経路もチャット一覧への経路もありません。
生成の途中でスマートフォンの電波が切れました。すぐにノートパソコンで新しく始められますか?
必ずしもそうとは限りません。1つのアカウントにつき同時に実行できる生成は1件だけだからです。ユーザーごとのロックが保持されている間に2回目を試みると、「Generation already in progress. Please stop it or wait for it to finish.」で拒否されます。このロックは永続的ではなく、保持者が放置されたか停止していると判断されると奪えるようになり、期限切れのロックは定期的に一掃されます。
機内モードのスマートフォンで、古い会話をスクロールできますか?
モバイルアプリがキャッシュしている範囲内でのみ可能で、画像はそこでも事情が異なります。生成された画像はサーバー側に保存され、署名付きURLを通じて返されるため、古いスレッド内の画像も、実際に見る瞬間に取得されるのであり、デバイスに保持されているわけではありません。
モバイルのゲストアカウントで、この事情は変わりますか?
いいえ。プライバシーポリシーが定めるローカルキャッシュは、ログイン済みのデバイスでもゲストのデバイスでも同様に適用されます。ゲストの認証情報自体はデバイス上に保存されますが、Whiziはゲストのプロフィールを認識し、データを同期し、サブスクリプションへのアクセスを検証し、後でそのデータをアカウントに紐付けられるよう、一方向に導出された識別子を保存します。これらはすべてサーバー側の処理です。アカウントのエクスポートはゲストセッションでも機能します。ゲストも、デバイスを手放す前に取り出しておきたい実際のチャットや記憶を持っているためです。
エクスポート内のメディアリンクはどのくらいの期間有効ですか?
アップロードした添付ファイルや生成されたメディアは、最大30日で期限切れになるよう設定されており、あなた自身の操作やアカウント削除によってそれより早く消去されることもあります。保持期間を過ぎたオブジェクトには、実データの代わりに「Media has expired.」というHTTP 404のmedia_expiredが返されます。まだ接続があるうちに、残しておきたいものは取得しておいてください。