Files API позволяет загружать и управлять файлами для использования с Claude API без повторной загрузки содержимого при каждом запросе. Это особенно полезно при использовании инструмента выполнения кода для предоставления входных данных (например, наборов данных и документов) и последующей загрузки выходных данных (например, диаграмм). Вы также можете использовать Files API, чтобы избежать необходимости постоянно повторно загружать часто используемые документы и изображения при нескольких вызовах API. Вы можете изучить справку API напрямую, в дополнение к этому руководству.
Files API в настоящее время находится в бета-версии. Пожалуйста, свяжитесь с нами через нашу форму обратной связи, чтобы поделиться своим опытом использования Files API.
This feature is in beta and is not covered by Zero Data Retention (ZDR) arrangements. Beta features are excluded from ZDR.
Ссылка на file_id в запросе Messages поддерживается во всех моделях, которые поддерживают данный тип файла. Например, изображения поддерживаются во всех моделях Claude 3+, PDF во всех моделях Claude 3.5+, и различные другие типы файлов для инструмента выполнения кода в Claude Haiku 4.5 и всех моделях Claude 3.7+.
Files API в настоящее время не поддерживается на Amazon Bedrock или Google Vertex AI.
Files API предоставляет простой подход "загрузить один раз, использовать много раз" для работы с файлами:
file_idfile_id вместо повторной загрузки содержимогоЧтобы использовать Files API, вам нужно включить заголовок бета-функции: anthropic-beta: files-api-2025-04-14.
Загрузите файл для использования в будущих вызовах API:
curl -X POST https://api.anthropic.com/v1/files \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: files-api-2025-04-14" \
-F "file=@/path/to/document.pdf"Ответ от загрузки файла будет включать:
{
"id": "file_011CNha8iCJcU1wXNR6q4V8w",
"type": "file",
"filename": "document.pdf",
"mime_type": "application/pdf",
"size_bytes": 1024000,
"created_at": "2025-01-01T00:00:00Z",
"downloadable": false
}После загрузки ссылайтесь на файл, используя его file_id:
curl -X POST https://api.anthropic.com/v1/messages \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: files-api-2025-04-14" \
-H "content-type: application/json" \
-d '{
"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_011CNha8iCJcU1wXNR6q4V8w"
}
}
]
}
]
}'Files API поддерживает различные типы файлов, которые соответствуют различным типам блоков содержимого:
| Тип файла | MIME тип | Тип блока содержимого | Вариант использования |
|---|---|---|---|
application/pdf | document | Анализ текста, обработка документов | |
| Простой текст | text/plain | document | Анализ текста, обработка |
| Изображения | image/jpeg, image/png, image/gif, image/webp | image | Анализ изображений, визуальные задачи |
| Наборы данных, другие | Различные | container_upload | Анализ данных, создание визуализаций |
Для типов файлов, которые не поддерживаются как блоки document (.csv, .txt, .md, .docx, .xlsx), преобразуйте файлы в простой текст и включите содержимое непосредственно в ваше сообщение:
# Пример: чтение текстового файла и отправка его как простого текста
# Примечание: для файлов со специальными символами рассмотрите кодирование base64
TEXT_CONTENT=$(cat document.txt | jq -Rs .)
curl https://api.anthropic.com/v1/messages \
-H "content-type: application/json" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d @- <<EOF
{
"model": "claude-opus-4-6",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Here's the document content:\n\n${TEXT_CONTENT}\n\nPlease summarize this document."
}
]
}
]
}
EOFДля файлов .docx, содержащих изображения, сначала преобразуйте их в формат PDF, а затем используйте поддержку PDF, чтобы воспользоваться встроенным анализом изображений. Это позволяет использовать цитаты из документа PDF.
Для PDF и текстовых файлов используйте блок содержимого document:
{
"type": "document",
"source": {
"type": "file",
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w"
},
"title": "Document Title", // Опционально
"context": "Context about the document", // Опционально
"citations": {"enabled": true} // Опционально, включает цитаты
}Для изображений используйте блок содержимого image:
{
"type": "image",
"source": {
"type": "file",
"file_id": "file_011CPMxVD3fHLUhvTqtsQA5w"
}
}Получите список загруженных файлов:
curl https://api.anthropic.com/v1/files \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: files-api-2025-04-14"Получите информацию о конкретном файле:
curl https://api.anthropic.com/v1/files/file_011CNha8iCJcU1wXNR6q4V8w \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: files-api-2025-04-14"Удалите файл из вашего рабочего пространства:
curl -X DELETE https://api.anthropic.com/v1/files/file_011CNha8iCJcU1wXNR6q4V8w \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: files-api-2025-04-14"Загружайте файлы, созданные навыками или инструментом выполнения кода:
curl -X GET "https://api.anthropic.com/v1/files/file_011CNha8iCJcU1wXNR6q4V8w/content" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: files-api-2025-04-14" \
--output downloaded_file.txtВы можете загружать только файлы, созданные навыками или инструментом выполнения кода. Загруженные вами файлы не могут быть загружены.
Messages API и связанных использованиях инструментовРаспространённые ошибки при использовании Files API включают:
file_id не существует или у вас нет доступа к нему/v1/messages)<, >, :, ", |, ?, *, \, / или символы unicode 0-31){
"type": "error",
"error": {
"type": "invalid_request_error",
"message": "File not found: file_011CNha8iCJcU1wXNR6q4V8w"
}
}Операции File API бесплатны:
Содержимое файла, используемое в запросах Messages, оценивается как входные токены. Вы можете загружать только файлы, созданные навыками или инструментом выполнения кода.
Во время бета-периода:
Was this page helpful?