Was this page helpful?
Die Files API ermöglicht es Ihnen, Dateien hochzuladen und zu verwalten, um sie mit der Claude API zu verwenden, ohne Inhalte bei jeder Anfrage erneut hochzuladen. Dies ist besonders nützlich, wenn Sie das Code-Ausführungs-Tool verwenden, um Eingaben (z. B. Datensätze und Dokumente) bereitzustellen und dann Ausgaben (z. B. Diagramme) herunterzuladen. Sie können die Files API auch verwenden, um zu vermeiden, dass häufig verwendete Dokumente und Bilder bei mehreren API-Aufrufen kontinuierlich erneut hochgeladen werden müssen. Sie können die API-Referenz direkt erkunden, zusätzlich zu diesem Leitfaden.
Die Files API befindet sich in der Beta-Phase. Teilen Sie Ihre Erfahrungen mit der Files API über das Feedback-Formular mit.
This feature is not eligible for Zero Data Retention (ZDR). Data is retained according to the feature's standard retention policy.
Das Referenzieren einer file_id in einer Messages-Anfrage wird in allen Modellen unterstützt, die den angegebenen Dateityp unterstützen. Beispielsweise werden Bilder in allen Claude 3+-Modellen unterstützt, PDFs in allen Claude 3.5+-Modellen und verschiedene andere Dateitypen für das Code-Ausführungs-Tool in Claude Haiku 4.5 sowie allen Claude 3.7+-Modellen.
Die Files API wird derzeit nicht auf Amazon Bedrock oder Google Vertex AI unterstützt.
Die Files API bietet einen einfachen Ansatz zum einmaligen Hochladen und mehrfachen Verwenden von Dateien:
file_idfile_id statt Inhalte erneut hochzuladenUm die Files API zu verwenden, müssen Sie den Beta-Feature-Header einschließen: anthropic-beta: files-api-2025-04-14.
Laden Sie eine Datei hoch, um sie in zukünftigen API-Aufrufen zu referenzieren:
Die Antwort vom Hochladen einer Datei enthält:
{
"id": "file_011CNha8iCJcU1wXNR6q4V8w",
"type": "file",
"filename": "document.pdf",
"mime_type": "application/pdf",
"size_bytes": 1024000,
"created_at": "2025-01-01T00:00:00Z",
"downloadable": false
}Nach dem Hochladen referenzieren Sie die Datei mit ihrer file_id:
Die Files API unterstützt verschiedene Dateitypen, die verschiedenen Inhaltsblocktypen entsprechen:
| Dateityp | MIME-Typ | Inhaltsblocktyp | Anwendungsfall |
|---|---|---|---|
application/pdf | document | Textanalyse, Dokumentverarbeitung | |
| Nur-Text | text/plain | document | Textanalyse, Verarbeitung |
| Bilder | image/jpeg, image/png, image/gif, image/webp | image | Bildanalyse, visuelle Aufgaben |
| Datensätze, andere |
Für Dateitypen, die nicht als document-Blöcke unterstützt werden (.csv, .txt, .md, .docx, .xlsx), konvertieren Sie die Dateien in Nur-Text und fügen Sie den Inhalt direkt in Ihre Nachricht ein:
Für .docx-Dateien mit Bildern konvertieren Sie diese zuerst in das PDF-Format und verwenden Sie dann PDF-Unterstützung, um die integrierte Bildanalyse zu nutzen. Dies ermöglicht die Verwendung von Zitaten aus dem PDF-Dokument.
Für PDFs und Textdateien verwenden Sie den document-Inhaltsblock:
{
"type": "document",
"source": {
"type": "file",
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w"
},
"title": "Document Title", // Optional
"context": "Context about the document", // Optional
"citations": { "enabled": true } // Optional, enables citations
}Für Bilder verwenden Sie den image-Inhaltsblock:
{
"type": "image",
"source": {
"type": "file",
"file_id": "file_011CPMxVD3fHLUhvTqtsQA5w"
}
}Rufen Sie eine Liste Ihrer hochgeladenen Dateien ab:
Rufen Sie Informationen über eine bestimmte Datei ab:
Entfernen Sie eine Datei aus Ihrem Arbeitsbereich:
Laden Sie Dateien herunter, die von Skills oder dem Code-Ausführungs-Tool erstellt wurden:
Sie können nur Dateien herunterladen, die von Skills oder dem Code-Ausführungs-Tool erstellt wurden. Dateien, die Sie hochgeladen haben, können nicht heruntergeladen werden.
Messages-API-Aufrufen und zugehörigen Tool-Verwendungen bestehen bleibenDateien, die über die Files API hochgeladen werden, werden beibehalten, bis sie explizit mit dem Endpunkt DELETE /v1/files/{file_id} gelöscht werden. Dateien werden zur Wiederverwendung über mehrere API-Anfragen hinweg gespeichert.
Für ZDR-Berechtigung über alle Funktionen hinweg siehe API und Datenspeicherung.
Häufige Fehler bei der Verwendung der Files API sind:
file_id existiert nicht oder Sie haben keinen Zugriff darauf/v1/messages-Anfrage)<, >, :, ", |, ?, *, \, / oder Unicode-Zeichen 0-31){
"type": "error",
"error": {
"type": "invalid_request_error",
"message": "File not found: file_011CNha8iCJcU1wXNR6q4V8w"
}
}File-API-Operationen sind kostenlos:
Dateiinhalte, die in Messages-Anfragen verwendet werden, werden als Eingabe-Token berechnet. Sie können nur Dateien herunterladen, die von Skills oder dem Code-Ausführungs-Tool erstellt wurden.
Während der Beta-Phase:
uploaded = client.beta.files.upload(
file=("document.pdf", open("/path/to/document.pdf", "rb"), "application/pdf"),
)response = client.beta.messages.create(
model="claude-opus-4-6",
max_tokens=1024,
messages=[
{
"role": "user",
"content": [
{"type": "text", "text": "Please summarize this document for me."},
{
"type": "document",
"source": {
"type": "file",
"file_id": file_id,
},
},
],
}
],
betas=["files-api-2025-04-14"],
)
print(response)| Variiert |
container_upload |
| Daten analysieren, Visualisierungen erstellen |
import pandas as pd
# Beispiel: Lesen einer CSV-Datei
df = pd.read_csv("data.csv")
csv_content = df.to_string()
# Als Nur-Text in der Nachricht senden
response = client.messages.create(
model="claude-opus-4-7",
max_tokens=1024,
messages=[
{
"role": "user",
"content": [
{
"type": "text",
"text": f"Here's the CSV data:\n\n{csv_content}\n\nPlease analyze this data.",
}
],
}
],
)
print(response.content[0].text)client = anthropic.Anthropic()
files = client.beta.files.list()file = client.beta.files.retrieve_metadata(file_id)result = client.beta.files.delete(file_id)file_content = client.beta.files.download(file_id)
# Save to file
file_content.write_to_file("downloaded_file.txt")