Загрузка файлов

Загрузка локальных файлов в Atlas Cloud для рабочих процессов image-to-video, редактирования изображений и других

Обзор

Многие рабочие процессы AI-генерации требуют входных файлов — например, анимация статического изображения в видео, применение переноса стиля или редактирование существующего изображения. Эндпоинт Upload Media позволяет загружать локальные файлы в Atlas Cloud и получать временный URL, который можно передать эндпоинтам генерации.

API-эндпоинт

POST https://api.atlascloud.ai/api/v1/model/uploadMedia

Аутентификация

Включите API-ключ в заголовок Authorization:

Authorization: Bearer your-api-key

Запрос

Отправьте файл как multipart/form-data запрос с файлом в поле file.

Ответ

Возвращает JSON-объект с временным URL загруженного файла.

Примеры кода

Python

import requests

response = requests.post(
    "https://api.atlascloud.ai/api/v1/model/uploadMedia",
    headers={"Authorization": "Bearer your-api-key"},
    files={"file": open("photo.jpg", "rb")}
)

data = response.json()
file_url = data.get("url")
print(f"Uploaded file URL: {file_url}")

Node.js

import fs from "fs";

const formData = new FormData();
formData.append("file", new Blob([fs.readFileSync("photo.jpg")]));

const response = await fetch(
  "https://api.atlascloud.ai/api/v1/model/uploadMedia",
  {
    method: "POST",
    headers: { Authorization: "Bearer your-api-key" },
    body: formData,
  }
);

const { url } = await response.json();
console.log(`Uploaded file URL: ${url}`);

cURL

curl -X POST https://api.atlascloud.ai/api/v1/model/uploadMedia \
  -H "Authorization: Bearer your-api-key" \
  -F "[email protected]"

Типичные рабочие процессы

Изображение в видео

Загрузите исходное изображение, затем передайте его URL в модель генерации видео:

import requests

# Шаг 1: Загрузка изображения
upload_resp = requests.post(
    "https://api.atlascloud.ai/api/v1/model/uploadMedia",
    headers={"Authorization": "Bearer your-api-key"},
    files={"file": open("my_image.jpg", "rb")}
)
image_url = upload_resp.json().get("url")

# Шаг 2: Генерация видео из загруженного изображения
video_resp = requests.post(
    "https://api.atlascloud.ai/api/v1/model/generateVideo",
    headers={
        "Authorization": "Bearer your-api-key",
        "Content-Type": "application/json"
    },
    json={
        "model": "kling-v2.0",
        "prompt": "The person slowly turns and smiles",
        "image_url": image_url
    }
)

prediction_id = video_resp.json()["data"]["id"]
print(f"Video generation started: {prediction_id}")

Изображение в изображение (перенос стиля, улучшение)

import requests

# Шаг 1: Загрузка исходного изображения
upload_resp = requests.post(
    "https://api.atlascloud.ai/api/v1/model/uploadMedia",
    headers={"Authorization": "Bearer your-api-key"},
    files={"file": open("source.jpg", "rb")}
)
image_url = upload_resp.json().get("url")

# Шаг 2: Применение трансформации
result = requests.post(
    "https://api.atlascloud.ai/api/v1/model/generateImage",
    headers={
        "Authorization": "Bearer your-api-key",
        "Content-Type": "application/json"
    },
    json={
        "model": "your-image-to-image-model",
        "image_url": image_url,
        "prompt": "Transform into oil painting style"
    }
)

Важные замечания

  • Временные URL: Загруженные файлы предназначены для временного использования только с задачами генерации Atlas Cloud. Файлы могут быть периодически удалены.
  • Поддерживаемые форматы: Поддерживаются распространённые форматы изображений (JPEG, PNG, WebP) и видеоформаты. Проверьте документацию конкретной модели на предмет требований к формату.
  • Размер файла: Могут быть ограничения на размер загружаемого файла в зависимости от модели. Обратитесь к странице деталей модели для конкретных ограничений.
  • Используйте незамедлительно: Используйте URL загруженных файлов в рамках одной сессии. Не полагайтесь на них для долгосрочного хранения.

Следующие шаги