AI APIへPDFや画像を送るコードは、ファイル名だけ変えれば使えるとは限りません。送信先がmultipartフォームを求めるのか、ファイル本体を本文にするのか、JSONにファイルIDやデータを指定するのかで、リクエストの組み方が変わります。まず対象APIの入力仕様と送信コードを照合します。
日本テレビ・Bitget等でのB2Bマーケティング実務を経て、2023年にSHIFT AI創業へ参画。コミュニティ・スクール責任者として2年で3万人規模へのグロースを主導。2026年、静岡県熱海市でAiWiLL株式会社を創業。生成AI顧問「WiLLAGENT」として、防災設備・不動産管理・旅館・飲食など現場型の中小企業に入り、売り上げ向上に寄与するマーケティングや営業施策をどうAIで質を上げ、数を増やすかを一緒に考え抜き、人手不足のなか報告書・見積・マニュアルづくりといった実務をいかにAIで省くかといった、AIを使った事業づくりを伴走支援している。生成AI研修・Eラーニングの監修も担当。企画したイベント・ウェビナーは累計112件、参加者は1万人超。
AIエージェント・新規事業リサーチ・マーケティングの実践セミナー3本の本編と、WiLLAGENTのサービス説明PDFを、無料の資料セットとして公開しています。→ 無料資料セットを受け取る
三つの送信方法を取り違えない
| 形式 | PowerShellでの考え方 | 注意点 |
|---|---|---|
| multipart/form-data | 対応するバージョンで-Formに項目を渡す | 項目名とファイルの指定方法をAPIに合わせる |
| ファイル本体がHTTP本文 | -InFileで内容を送る | 本文に追加のJSONやフォーム項目が必要なAPIとは形が違う |
| JSON | 必要な項目を作りJSONに変換する | パス文字列を書いただけで、PC内のファイルが送られるわけではない |
Microsoftの公式例では、-Formの値にFileInfoを渡すとファイル内容を送ります。単なるパス文字列との違いが大切です。また-Formと-Bodyは併用できません。以下はPowerShell 7を想定した準備例で、特定のAI APIへそのまま送信できる完成コードではありません。
通信前に、対象ファイルだけを点検する
$PSVersionTable.PSVersion
$uploadPath = 'C:\Work\sample.pdf'
if (-not (Test-Path -LiteralPath $uploadPath -PathType Leaf)) {
throw 'Upload file was not found'
}
$uploadFile = Get-Item -LiteralPath $uploadPath
$uploadFile | Select-Object Name,Length
$form = @{ file = $uploadFile }
# ここでは送信しない。項目名fileも対象APIの仕様と照合する。
拡張子が.pdfでも、中身がPDFであることまでは証明できません。普段のビューアーで開けるかを確認し、APIが対応する形式とサイズ内かを見ます。最初は個人情報のない小さなサンプルを使うと、内容の問題と通信の問題を分けやすくなります。
エラー別に確認を進める
必須項目がないと返されたら、フォームの項目名やJSONの階層を確認します。ファイルが空だと返されたら、パス文字列だけを渡していないか、読み取りに失敗していないかを見ます。サイズや形式を理由に拒否された場合は、そのAPIの上限と対応形式を確認します。認証エラーなら、ファイルを変更する前に資格情報側へ戻ります。
手動でContent-Typeを付け足すことが、常に修正になるわけでもありません。multipartには本文との対応が必要な情報があるため、クライアントが組み立てる内容と矛盾させないようにします。公式の同じ方式の例から、最小の必須項目だけで組み直すのが確認しやすい方法です。
アップロードと、AIの読み取りを別々に確認する
ファイルIDが返った段階は、送信先が受け付けたことを示す場合があります。その後に処理状態を待つ、質問リクエストへIDを渡す、といった工程が必要かはAPIによって異なります。「IDが出たので内容も解析済み」と決めず、次の操作に必要な状態を公式仕様で確認します。
接続先のAPIとパス:
要求される送信形式:
必須項目名:
ファイル形式と容量:
応答コード:
返されたIDの種類:
後続処理が必要か:
解析できたと判断する確認結果:
同じファイルを繰り返し送る前に、既に作られたアップロードがあるかも確認します。重複ファイルや処理費用を増やさず、最後に成功した工程から再開するためです。業務でのPDF利用はNotebookLMでPDFを読み取れないときの確認、報告書への活用は点検報告書とAIの役割分担へつなげて考えられます。
確認に使った資料
自社の仕事なら、何をAIに任せられるか。
報告書の作成、見積りの下書き、問い合わせ返信、社内資料の整理。いま困っている仕事を一つ選び、必要な資料と、人が確認する範囲から整理します。
AI社員の制作と、自社でAIを作り育てるAI顧問をご案内しています。支援内容・料金を見る



