いずみこんな悩みを解決できる記事を書きました!
僕は現役フリーランスエンジニア(歴10年)で、資格は13個保有しています。
「Claude Files APIをPythonで使う方法を知りたい」とお考えではありませんか?
PDFや画像などのファイルをClaudeに読み込ませたいと考えている方へ。
Files APIを使えば、ファイルを一度アップロードするだけで何度もリクエストに使い回すことが可能です。



ベリーイージーなのでサクッと解説します。
ということで、本記事ではClaude Files APIをPythonで使う方法を解説します。



すぐ読み終わるので、ぜひ最後まで読んでくださいませ。
| 【当サイト】おすすめフリーランスエージェント3選 | |||
|---|---|---|---|
| エージェント | 評価 | ポイント | 公式サイト |
レバテックフリーランス | 5.0 | 業界最大級のエージェント。 高単価案件が豊富。 | 公式 |
Midworks | 4.8 | 満足度調査で 3年連続3冠を達成。 | 公式 |
ITプロパートナーズ | 4.6 | 週2〜3向けの案件が豊富。 | 公式 |
【AI】Claude Files APIをPythonで使う方法
早速ですが、Claude Files APIをPythonで使う方法を解説します。
Files APIとは
Files APIは、ファイルを一度アップロードしてfile_idを受け取り、以降のMessagesリクエストで同じファイルを繰り返し参照できる仕組みです。
PDFやプレーンテキスト、画像などをアップロードでき、同じ資料について何度も質問するようなユースケースで威力を発揮します。
ファイルを都度base64エンコードして送信する必要がなくなるため、リクエストボディを小さく保てます。



同じ資料を毎回アップロードし直すのは地味にめんどくさいですよね。
Files APIを使えば一度アップロードするだけで済みます。
事前準備
まずは、Files APIを使うための準備をします。
pipでインストールします。
pip install anthropicAnthropic ConsoleでAPIキーを発行し、環境変数に設定します。
export ANTHROPIC_API_KEY="your_api_key"ファイルをアップロードして参照する
準備ができたら、実際にファイルをアップロードしてメッセージで使ってみます。
client.files.uploadにファイル名・バイナリ・MIMEタイプのタプルを渡します。
import anthropic
client = anthropic.Anthropic()
uploaded = client.files.upload(
file=("report.pdf", open("report.pdf", "rb"), "application/pdf"),
)
print(uploaded.id)レスポンスのidがfile_idです。
以降のリクエストでは、file_idを使い回せます。
messages.createのcontentにdocumentブロックを追加し、file_idを指定します。
response = client.messages.create(
model="claude-opus-5",
max_tokens=1024,
messages=[
{
"role": "user",
"content": [
{"type": "text", "text": "この資料の要点を3つにまとめてください。"},
{
"type": "document",
"source": {
"type": "file",
"file_id": uploaded.id,
},
},
],
}
],
)
print(response.content[0].text)


ファイルの中身を毎回貼り付けなくて良いので、長いドキュメントを扱うときほど楽になります。
ファイルの一覧表示と削除
アップロードしたファイルは、一覧表示や削除で管理できます。
files = client.files.list()
for f in files.data:
print(f.id, f.filename, f.size_bytes)list()でアップロード済みのファイルを新しい順に取得できます。
client.files.delete(uploaded.id)不要になったファイルはdelete()で明示的に削除します。
ファイルは自動では消えないため、使い終わったファイルは削除しておくとストレージ容量を圧迫せずに済みます。
ファイルの有効期限を設定する
一時的にしか使わないファイルには、有効期限を設定しておくと管理が楽になります。
uploaded = client.files.upload(
file=("temp_data.csv", open("temp_data.csv", "rb"), "text/plain"),
expires_in_seconds=3600,
)expires_in_secondsに3600(1時間)から7776000(90日)までの秒数を指定すると、期限切れ後は自動的にダウンロードや参照ができなくなります。
利用時の注意点
Files APIを使う際は、いくつか注意しておきたい点があります。
- アップロードしたファイルは、同じワークスペース内のどのAPIキーからでも参照できる
- アップロードしたファイル自体はダウンロードできない
- ファイルの内容は後から変更できない



ファイルIDを他人のリクエストからそのまま受け取らないようにする点だけは、実装時に意識しておくと安全です。
| 【当サイト】おすすめフリーランスエージェント3選 | |||
|---|---|---|---|
| エージェント | 評価 | ポイント | 公式サイト |
レバテックフリーランス | 5.0 | 業界最大級のエージェント。 高単価案件が豊富。 | 公式 |
Midworks | 4.8 | 満足度調査で 3年連続3冠を達成。 | 公式 |
ITプロパートナーズ | 4.6 | 週2〜3向けの案件が豊富。 | 公式 |
【厳選】フリーランスエンジニアにおすすめなエージェント3選


フリーランスエンジニアになるにはエージェントから案件をもらう必要があります。
僕が実際に利用しているおすすめエージェントを紹介しますね。



エージェントは必ず複数登録してください。
担当者によっては「全然案件紹介してくれない…」みたいなこともあるので…
僕は実際に5つのエージェントを使い回していますよ。
フリーランスを始めるなら「レバテックフリーランス


」
- 業界最大級の案件数。
- 業界トップクラスの高単価報酬、低マージン(平均年収862万円)。
- 案件参画中のフォローの充実。
※詳細は「【業界最大手】レバテックフリーランスとは?メリットや利用手順を解説!」を参照。
レバテックフリーランス
![]()
![]()
とにかく案件数が多いので、とりあえず登録しておけば間違いないエージェントです!



僕もはじめてフリーランスの案件を貰ったのはレバテックフリーランス
![]()
![]()
保有している案件数が多いので、業務経験がなくても何かしらの案件は紹介してもらえますよ(僕はJavaの経験3年でも案件を貰えました)。
手厚い保障を重視したいなら「Midworks


」
- 手厚い保障で正社員並みの安心感。
- 還元率60%超え&単価公開でクリアな契約。
- 給与保障制度(審査あり)。
Midworks
![]()
![]()
フリーランスを目指しているけど不安な方や保障を重視したい方におすすめです。



僕も何度か案件を紹介してもらいました。
自分のスキルに合った案件を紹介してもらえましたし、電話のやり取りも非常に丁寧でした。
週2〜3日の案件探しなら「ITプロパートナーズ


」
- IT案件に特化したフリーランスエージェント。
- 週2〜3日の案件が豊富。
- リモート案件が多く、直エンドなので単価も高い。
※詳細は「【週2・3案件】ITプロパートナーズとは?メリットや利用手順を解説!」を参照。
ITプロパートナーズ
![]()
![]()
週2〜3日から参画できる案件が豊富なので、起業したい人にもおすすめです。



週2〜3日の案件はある程度スキルがないと紹介してもらえない印象です。
とはいえ、週5の案件ももちろんありますし、僕が利用した時は迅速・丁寧に対応していただきました!
よくある質問
Files APIの利用に料金はかかりますか?
ファイルのアップロード・ダウンロード・一覧取得・削除といった操作自体は無料です。
Messagesリクエストでファイルの中身を読み込ませた際は、入力トークンとして課金されます。
どんなファイル形式に対応していますか?
PDF(application/pdf)とプレーンテキスト(text/plain)はdocumentブロックで、画像(JPEG/PNG/GIF/WebP)はimageブロックで参照できます。
docxやxlsxなど直接対応していない形式は、プレーンテキストに変換するかPDFに変換してから利用します。
まとめ
今回は、Claude Files APIをPythonで使う方法について解説しました。
以下が本記事のまとめになります。



最後までお読みいただき、ありがとうございました!
| 【当サイト】おすすめフリーランスエージェント3選 | |||
|---|---|---|---|
| エージェント | 評価 | ポイント | 公式サイト |
レバテックフリーランス | 5.0 | 業界最大級のエージェント。 高単価案件が豊富。 | 公式 |
Midworks | 4.8 | 満足度調査で 3年連続3冠を達成。 | 公式 |
ITプロパートナーズ | 4.6 | 週2〜3向けの案件が豊富。 | 公式 |
- クソおすすめ本



海外のエンジニアがどういった思考で働いているかが理解できます。
海外に行く気はないけど海外エンジニアの動向が気になる雑魚エンジニアにおすすめです(本当におすすめな本しか紹介しないのでご安心を)。








