Whiziでファイルのアップロードが拒否・失敗した場合

簡潔な回答

Whiziは添付ファイル1件につき10MBまで、1つのプロンプトに含まれる添付ファイル全体では合計20MBまでに制限しており、エラーメッセージにはどの層がファイルを拒否したのかが示されます。バックエンドが受け付けるのは1プロンプトにつき4件の添付までで、しかも最後のユーザーメッセージに限られますが、ウェブサイトの作成画面では最大6件までファイルを準備できます。添付ファイルはクレジットを消費しません。

簡単な答え

Whiziは添付ファイル1件につき10MBまで、1つのプロンプトに含まれる添付ファイル全体では合計20MBまでに制限しており、エラーメッセージにはどの層がファイルを拒否したのかが示されます。

上限をまとめると:

上限適用範囲
添付ファイル1件10 MBチャットメッセージに添付する任意のファイル
1プロンプトの添付ファイル全体20 MBプロンプト全体
1プロンプトあたりの添付件数4バックエンドが強制し、最後のユーザーメッセージにのみ適用
作成画面で準備できるファイル数6ウェブサイトの作成画面
画像の直接アップロード8 MB画像アップロード経路
1分あたりの画像アップロード回数10アカウントごと、UTCの1分ごと
1日あたりの画像アップロード回数60アカウントごと、UTCの1日ごと
プロジェクトに固定するファイル10 MB、10ファイルプロジェクトごと
1つのチャットメッセージ内のテキスト100,000文字ファイルから抽出したテキストを含む

添付ファイルはクレジットを消費しないため、拒否されたアップロードにも成功したアップロードにも一切コストはかかりません。

ファイルが大きすぎる場合

サイズによる拒否では、どの層がファイルを検知したかによって4種類の異なる文言が表示される可能性があります。

メッセージHTTPコード発生条件
File {name} exceeds 10MB limit. Please upload a smaller file.なし、ウェブサイトのトースト通知添付ボタンから10MBを超える単一のファイルを選んだ場合
One or more files exceed the 10MB size limit. Please upload smaller files.なし、ウェブサイトのトースト通知複数ファイルをドロップし、少なくとも1つが10MBを超えている場合
Attachments must be 10 MB or smaller.413 attachment_too_largeバックエンドがファイルを拒否した場合。宣言された長さに対してまず確認され、実際のバイト数に対して再度確認される
Attachments are limited to 20 MB per prompt.413 attachments_too_large各ファイルは10MB未満だが、合計すると20MBを超える場合

最初の2つの{name}には、あなたのファイル名が入ります。

宣言された長さは実際のバイト数より先に確認されるため、小さいサイズを偽って宣言しても、大きなファイルが10MBのチェックを通過することはありません。

4つすべてに共通する対処法は同じです。一度に送る量を減らすことです。長いPDFは実際に読んでほしいセクションだけに分割し、質問しているセクションを添付してください。添付ファイルが転送されるのは、添付を持つ直近のユーザーメッセージだけなので、会話の以前に送った添付に頼るのではなく、質問しているメッセージにファイルを添付してください。

直接アップロードする画像には、それ専用の低い上限があります。Image is too large. Please upload an image under 8 MB.はHTTP 413のupload_too_largeです。これは2段階で発生し、宣言されたContent-Lengthが上限の2倍を超えた場合と、実際のファイルサイズが8MiBを超えた場合の両方でチェックされるため、長さの申告を偽っていてもどちらにせよ検知されます。画像はより小さいサイズや低い解像度で書き出し直してください。

プロジェクトに固定するファイルの上限も10MBで、専用の文言があります。ウェブサイトのトースト通知は{name} is over the 10 MB limit.、HTTP 413のproject_file_too_largeProject files must be 10 MB or smaller.です。

ファイル形式が対応していない場合

チャットの添付ファイル、画像の直接アップロード、プロジェクトに固定するファイルは3つの異なる経路であるため、対応形式のリストも3種類存在します。

メッセージHTTPコード受け付ける形式
Choose an image, PDF, text, Markdown, CSV, or JSON file.415 unsupported_attachment_typeチャットの添付ファイル: JPEG、PNG、WebP、GIF、PDF、TXT、Markdown、CSV、JSON
Unsupported image type. Please upload a JPG, PNG, WebP, or GIF.400 unsupported_image_type画像アップロード経路: image/jpegimage/pngimage/webpimage/gif
Choose a PDF, Word, Excel, text, Markdown, CSV, or JSON file.415 unsupported_project_file_typeプロジェクトに固定するファイル。画像は意図的に除外されている
Unsupported file type. Please upload an image, document (PDF, Word), spreadsheet (Excel), or text-based file.なし、ウェブサイトのトースト通知作成画面が選択されたファイルを分類する処理
{name} is not a supported file type.なし、ウェブサイトのトースト通知選択したプロジェクトファイルが画像である、またはその他の非対応形式である場合

作成画面は、添付ボタンからファイルを選んだときにこの非対応形式のトースト通知を表示します。ドラッグ&ドロップは同じ状況でも無反応のままなので、作成画面に一切表示されずメッセージも生成されないファイルは、非対応形式である可能性が最も高いです。代わりに添付ボタンから選べば、問題を示すトースト通知が表示されます。

GIFはこの2つの経路の判断が食い違う唯一のケースです。ウェブサイトの作成画面はGIF files are not supported. Please upload a PNG or JPEG image.として完全に拒否しますが、バックエンドの画像アップロード経路はimage/gifを受け付けます。ウェブサイト上ではGIFをPNGかJPEGのフレームに変換してからアップロードしてください。

リストにないその他の形式については、形式変換が最も早い解決策です。PDF、CSV、またはプレーンテキストとして保存し直してからアップロードしてください。対応形式の全リストは対応ファイル形式にあります。

ファイルの中身が申告と一致しない場合

形式のリストを通過した後にも2つのチェックが実行され、それぞれ独自のメッセージを出します。

The file extension does not match its content type.はHTTP 415で、チャット添付ではattachment_extension_mismatch、プロジェクトファイルではproject_file_extension_mismatchというコードになります。これは、ファイル名の拡張子と一緒に送られたコンテンツタイプが一致しない場合に発生します。

The selected file does not match its declared format.はHTTP 415で、チャット添付ではinvalid_attachment、プロジェクトファイルではinvalid_project_fileというコードになります。これは署名のチェックで、ファイルの先頭バイトを読み取り、宣言されたMIMEタイプと比較します。そのため、変換ではなく単に名前を変更しただけのファイルはここで検知されます。

よくある原因はファイル名の変更です。report.txtreport.pdfに変えても、それがPDFになるわけではなく、このチェックがそれを見抜きます。ファイルを本来のアプリケーションで開き、目的の形式でエクスポートまたは名前を付けて保存してから、その結果をアップロードしてください。

ファイル数やアップロード回数が多すぎる場合

件数の上限にもそれぞれ独自のメッセージがあり、作成画面とバックエンドでは数える対象が異なるため、数値もすべて同じというわけではありません。

メッセージHTTPコード発生条件
You can only upload up to 6 files per message.なし、ウェブサイトのトースト通知選択またはドロップによって作成画面の準備済みファイルが6件を超える場合
Message {n} may carry up to 4 valid attachments, and only on the final user message.400 invalid_attachments1つのプロンプトに4件を超える添付がある場合、または最後のユーザーターンではないメッセージに添付がある場合
Message {n} repeats an attachment.400 invalid_attachments同じ添付IDが1つのメッセージ内で2回出現する場合
Projects hold up to 10 files. Remove one first.409 project_file_limit_reachedプロジェクトに11個目の固定ファイルを追加しようとした場合
This project already holds 10 files. Remove one first.なし、ウェブサイトのトースト通知リストがすでに満杯の状態で、アップロードが始まる前に表示される

レート制限は件数の制限とは別のものです。Upload rate limit reached. Please wait a moment before uploading another image.はHTTP 429で、1つのUTC分間に10回を超える画像アップロードが発生すると起こります。待ち時間は1分間です。

Daily upload limit reached. Please try again tomorrow.はHTTP 429のupload_daily_limit_reachedで、1つのUTC日に60回を超える画像アップロードが発生した後に起こります。リセットはあなたのいる場所の深夜ではなく、UTCの深夜0時に行われます。プロジェクトファイルのアップロードには、1分あたり10件という別の上限があります。

アップロードは成功したが、ファイルを読み込めない場合

PDF、Word、または表計算ファイルの抽出処理が失敗すると、アップロード自体は成功しているものの、内容を読み取る段階で失敗しています。形式ごとに独自のメッセージがあります。

メッセージ通常の意味
Could not read {name}. The PDF may be corrupted or password-protected.PDFのテキスト抽出が失敗した。パスワード保護されたPDFがよくあるケース
Could not read {name}. Please try re-saving the document.Wordの抽出が失敗した
Could not read {name}. The spreadsheet may be corrupted.表計算ファイルの抽出が失敗した
Could not read {name}. Older .xls files are not supported. Please re-save the file as .xlsx and upload it again.旧式のバイナリExcelファイル。メッセージ自体が対処法になっている
Could not read {name}.プレーンテキストの抽出が失敗した
No readable text found in this file, so the model cannot see it.プロジェクトに固定されたファイルで、抽出結果がまったく得られなかった場合

パスワード保護されたPDFの場合は、お使いのPDFリーダーでパスワードを解除し、ロックの外れたコピーをアップロードしてください。古い.xlsの場合は、開いてから.xlsxとして保存してください。テキストレイヤーのないスキャンPDFについてはPDFとチャットするで扱っています。

ファイルが正常に読み込まれた後で切り詰められることもあります。1つのチャットメッセージには10万文字という上限があり、抽出されたファイルのテキストもそこに含まれます。抽出したテキストが収まりきらない場合、Your upload was too large, so only the first part of it was sent. Ask about a smaller section for full coverage.と表示され、メッセージ自体には切れ目の位置に[Attachment truncated: the upload was larger than one message can carry, so the content past this point was not included.]という目印が入ります。モデルが受け取るのはその目印までのテキストだけで、それ以降は渡されないため、完全に見える回答が実は一部の文書だけに基づいている場合があります。

メッセージ全体が切り詰められるのではなく拒否される場合、バックエンドはHTTP 400のmessage_too_longを返し、This message is {count} characters, over the 100,000 character limit. Attach a shorter file, or ask about one section at a time.と表示されます。ここでの{count}は実際の文字数です。

特に理由なくアップロードが失敗する場合

いくつかの文言は、内容の問題で拒否されたのではなく、アップロード自体が完了しなかったことを意味します。

メッセージ意味対処法
Failed to retrieve session token.アップロードの呼び出し前にセッショントークンを取得できなかったページを再読み込みして再度サインインし、やり直してください
Failed to upload image: {statusText}画像アップロードのレスポンスが正常ではなく、サーバーのステータステキストが付加されたやり直してください。繰り返す場合はそのステータステキストがサポートに必要な情報です
Image URL not returned by the server.アップロードは成功したが、レスポンスに画像URLが含まれていなかったアップロードをやり直してください
Could not upload your attachments.並べて比較する表示画面でアップロード処理が失敗したやり直すか、通常のチャットで同じプロンプトを送ってください
Could not upload {name}.プロジェクトファイルのアップロードが独自のメッセージなしで失敗したやり直してください
Invalid requestNo file uploadedHTTP 400のinvalid_uploadno_file_uploaded。リクエストがmultipart/form-dataではなかった、フォームデータの解析に失敗した、またはリクエスト本文にファイル項目が含まれていなかったアップロードをやり直してください
Media could not be stored.ストレージへの書き込みがオブジェクトを返さなかった一度やり直してください。改善しない場合はサポートに連絡してください
Stored media metadata was invalid.保存されたメディアの行を読み戻せなかった一度やり直してください。改善しない場合はサポートに連絡してください
Something went wrong. Please retry.HTTP 500。処理されていないバックエンドのエラー全般一度やり直し、それでも駄目ならサポートに連絡してください

別の一群のメッセージは、ファイルが届かなかったのではなく、消えてしまったことを意味します。One or more attachments could not be found.はHTTP 404のattachment_not_foundで、添付IDがあなたが所有する保存済みメディアに一致しない場合に返されます。Media not found.はHTTP 404のmedia_not_foundMedia has expired.はHTTP 404のmedia_expiredで、保存されたオブジェクトが保持期間(最長30日)を過ぎた場合に返されます。古い会話には、すでに存在しないファイルへの参照が残っていることがあるため、再アップロードしてください。保持期間についての詳細はデータとプライバシーにあります。

チェックリスト
  • 添付ファイル1件につき10MBまで、1つのプロンプト全体では20MBまでという上限があります
  • 作成画面では最大6件のファイルを準備できますが、バックエンドが受け付けるのは1プロンプトにつき4件の添付までです
  • 画像の直接アップロードは8MBまで、1分間に10回、UTCの1日で60回までに制限されています
  • ファイル名を変更しただけでは形式は変換されず、署名チェックで見抜かれます
  • 非対応の形式をドラッグ&ドロップしても何も表示されませんが、添付ボタンからなら教えてくれます
  • GIFはウェブサイトの作成画面では拒否されるため、PNGかJPEGに変換してください
  • 古い.xlsファイルは.xlsxとして保存し直す必要があります
  • パスワード保護されたPDFは、読み込む前にロックを解除する必要があります
  • ファイルから抽出したテキストは、メッセージの10万文字の上限に加算されます
  • 添付ファイルはクレジットを消費しないため、アップロードに失敗しても何も損しません

よくある質問

「Attachments must be 10 MB or smaller.」とは何を意味しますか?

添付したファイルが1ファイルあたりの上限である10MBを超えているため、バックエンドがHTTP 413とコードattachment_too_largeでこれを拒否したという意味です。この文言は1ファイルごとの上限にのみ関するものです。それぞれは10MB未満でも合計が20MBを超える4つのファイルは、別の文言「Attachments are limited to 20 MB per prompt.」とコードattachments_too_largeを返します。同じプロンプトに5件目の添付があると「Message {n} may carry up to 4 valid attachments, and only on the final user message.」とコードinvalid_attachmentsが返されます。

問題なく開けるファイルなのに、なぜ「The file extension does not match its content type.」と表示されるのですか?

拡張子のチェックは署名チェックより先に実行されるため、拡張子と宣言されたコンテンツタイプが一致しないファイルは、この文言で拒否され、「The selected file does not match its declared format.」を返すマジックバイト比較には到達しません。コードはアップロード経路によって異なり、チャットの添付ファイルはattachment_extension_mismatchとinvalid_attachmentを、プロジェクトファイルはproject_file_extension_mismatchとinvalid_project_fileを返すため、ネットワークトレース上のコードを見ればどのアップロード経路がファイルを拒否したかが分かります。

チャットにファイルをドロップしても何も起きず、エラーも出ません。なぜですか?

最も可能性が高い原因は非対応のファイル形式で、ドロップ経路は意図的にそのことを何も知らせません。ドロップしたファイルは準備中のリストにも表示されないため、削除するものも、画面上に説明もない状態になります。ただしすべてのドロップが無反応というわけではなく、作成画面の準備済みファイルが6件を超えるようなドロップの場合は「You can only upload up to 6 files per message.」というトースト通知が表示されます。これは、非対応の形式では何も表示されないのと同じ経路上での挙動です。

「Upload rate limit reached. Please wait a moment before uploading another image.」を回避するにはどうすればよいですか?

待つしかありません。これはHTTP 429で、1つのUTC分間に10回を超える画像アップロードが発生すると発生します。この背後にあるカウンターは添付ファイル全般ではなく画像アップロード経路に属するもので、プロジェクトファイル経路には別のカウンターがあるため、プロジェクトへのファイルの固定と画像のアップロードは同じ割り当てを消費しているわけではありません。どちらの経路であっても、アカウントには全経路合計で1分間に30リクエストという共通の上限も課されています。

PDFはアップロードできたのに、モデルが中身を見られないと言います。何が問題ですか?

アップロード自体は成功しており、失敗しているのは抽出のステップです。パスワード保護されている、または破損しているPDFの場合、「Could not read {name}. The PDF may be corrupted or password-protected.」というトースト通知が表示されます。プロジェクトに固定されたPDFで抽出結果が空だった場合は、代わりにプロジェクト内のファイルの横に「No readable text found in this file, so the model cannot see it.」と表示されます。前者の場合はパスワードを解除して再アップロードしてください。後者、つまりテキストレイヤーのないスキャンについては、PDFとチャットするのページで扱っています。

プランをアップグレードすると、アップロードに関して何か変わりますか?

変わるのは、どのモデルにファイルを送れるかという点です。添付ファイルはどのプランでもクレジットを消費しないため、アップロード自体はプランが制限する対象では一切ありません。Starterでは4つのモデルにアクセスでき、Proではそれに加えてさらに37のモデルが利用できるようになり、カタログ内のそれ以外のすべてのモデルにはPowerhouseが必要です。