Генерация 3D-объектов · tripo

Tripo 3D v3.1

tripo-v3-1-0

Tripo 3D v3.1 — генерация 3d-объектов от tripo, доступная через единый Ranvik API. Поддерживаемые возможности: async, text_to_3d.

от 84 ₽ / запрос

Технические характеристики

МодальностьГенерация 3D-объектов
Провайдерtripo
СтатусАктивна
ID для запросовtripo-v3-1-0

Возможности

  • Async
  • Text-to-3D

Цены

ЕдиницаЦена
за запрос · Text-to-3D84 ₽
за запрос · Image-to-3D112 ₽

Цены указаны в рублях. Списываются с баланса проекта при каждом успешном запросе.

Поддерживаемые параметры

Параметры передаются вендору как есть (pure proxy) — мы не валидируем их у себя на стороне. Если вендор не примет — вернётся его ошибка.

ПараметрТипДиапазон / valuesDefaultОписание
positivePromptstringmax: 1024 Текстовый промпт описывающий желаемый 3D-объект. Несовместим с inputs.images (выбери text-to-3D или image-to-3D).
примеры значений
Примеры
Игрушка-робот с большими глазами и антенной, мультяшный стиль.
negativePromptstringmax: 255 Что НЕ должно быть в результате.
seedintegermin: 0 · max: 20240919 Seed для воспроизводимой генерации. Если не задан — выбирается случайно.
inputs.imagesarray of stringsmin: 1 · max: 4 Изображения для image-to-3D или multiview-to-3D (UUID / URL / Data URI / Base64). 1..4 шт. Несовместимо с positivePrompt.
примеры значений
Примеры
[
  "https://example.com/front.png",
  "https://example.com/side.png"
]
settings.autoSizebooleanfalse Масштабирование модели в real-world размеры (метры).
settings.compressenumgeometry, meshoptmeshopt Алгоритм сжатия: geometry или meshopt (оптимальный).
settings.exportUvbooleantrue Включить UV unwrapping для текстурирования.
settings.faceLimitintegermin: 500 · max: 20000 Максимум полигонов (500..20000). По умолчанию adaptive.
settings.generatePartsbooleanfalse Генерировать сегментированную модель с независимо редактируемыми частями.
settings.geometryQualityenumstandard, detailedstandard Качество геометрии: standard или detailed.
settings.imageAutoFixbooleanfalse Оптимизация входного изображения для лучших результатов. ТРЕБУЕТ inputs.images.
settings.orientationenumdefault, align_imagedefault Ориентация модели. align_image — выровнять под input image (ТРЕБУЕТ inputs.images).
settings.pbrbooleantrue Включить PBR materials (physically-based rendering). ТРЕБУЕТ settings.texture=true.
settings.quadbooleanfalse Quad mesh output (вместо triangle) для DCC-пайплайнов.
settings.smartLowPolybooleanfalse Генерировать low-poly меш с сохранением деталей.
settings.texturebooleantrue Включить генерацию текстур. Требуется для pbr.
settings.textureAlignmentenumoriginal_image, geometry Стратегия alignment текстуры: original_image (под исходник) или geometry (под форму).
settings.textureQualityenumstandard, detailedstandard Качество текстур: standard или detailed.
settings.textureSeedintegermin: 0 · max: 20240919 Отдельный seed для текстурной генерации (опционально).
numberResultsintegermin: 1 · max: 41 Сколько вариаций сгенерировать.
outputTypeenumURLURL Формат доставки.
outputFormatenumGLBGLB Формат 3D-файла. Только GLB (Binary glTF).
webhookURLstring URL для POST-уведомления при готовности.
примеры значений
Примеры
https://yourapp.com/webhooks/runware
uploadEndpointstring Presigned URL для автозагрузки готового .glb.
примеры значений
Примеры
https://bucket.s3.amazonaws.com/result.glb?X-Amz-Signature=...

Параметры ответа

Что возвращает API. У медиа-моделей формат зависит от режима: sync — сразу результат, async — task_id для опроса через GET /v1/tasks/{id}. Эта модель работает только в async-режиме.

Async (HTTP 202)

HTTP 202. 3D-генерация всегда async (несколько минут).

ПолеТипЗначенияОписание
idstring
objectstringobject3d.task
statusenumqueued, processing, completed, failed
modelstring
createdinteger

Опрос статуса (GET /v1/tasks/{id})

GET /v1/tasks/{id}.

ПолеТипЗначенияОписание
idstring
statusenumqueued, processing, completed, failed, canceled
modalitystringobject3d
modelstring
dataarray
Каждый элемент:
  • url— string · CDN URL .glb (binary glTF — geometry + textures + PBR materials).
errorstring

Пример запроса

import requests, json

r = requests.post(
    "https://api.ranvik.ru/v1/object3d/generations",
    headers={"Authorization": "Bearer rk_live_...", "Content-Type": "application/json"},
    json={
    "model": "tripo-v3-1-0",
    "positivePrompt": "Пример промпта",
    "negativePrompt": "Пример промпта",
    "seed": 10120460,
    "inputs.images": [],
    "settings.autoSize": False,
    "settings.compress": "meshopt",
    "settings.exportUv": True,
    "settings.faceLimit": 10250,
    "settings.generateParts": False,
    "settings.geometryQuality": "standard",
    "settings.imageAutoFix": False,
    "settings.orientation": "default",
    "settings.pbr": True,
    "settings.quad": False,
    "settings.smartLowPoly": False,
    "settings.texture": True,
    "settings.textureAlignment": "original_image",
    "settings.textureQuality": "standard",
    "settings.textureSeed": 10120460,
    "numberResults": 1,
    "outputType": "URL",
    "outputFormat": "GLB",
    "webhookURL": "https://example.com/...",
    "uploadEndpoint": "value"
},
)
print(r.json())

Замените rk_live_... на ваш ключ из кабинета.