跳转到主要内容
Tripo-格式转换

Tripo-格式转换

Tripo格式转换可将3D模型转换为GLTF、USDZ、FBX、OBJ、STL、3MF等格式,并支持网格处理、贴图烘焙和导出设置。

POST
/api/v1/services/aigc/video-generation/3d-generation
curl --location 'https://maas.qianwenaiapi.com/api/v1/services/aigc/video-generation/3d-generation' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "Tripo/Tripo-ConvertFormat",
    "input": {
        "original_model_task_id": "ca51d54a-ffba-4ecc-8e42-xxxxxx",
        "format": "GLTF"
    }
}'
{
  "output": {
    "task_status": "PENDING",
    "task_id": "0385dc79-5ff8-4d82-bcb6-xxxxxx"
  },
  "request_id": "4909100c-7b5a-9f92-bfe5-xxxxxx"
}

前提条件

  1. 开通服务:前往千问AI平台控制台,搜索“Tripo”,找到Tripo模型卡片,单击立即开通,在弹窗内确认开通及授权。
  2. 配置 API Key:获取与配置 API Key,再配置API Key到环境变量。
  3. 准备前序任务:先创建可产出3D模型的任务(如Tripo-文生/图生3D模型),待任务执行成功后,将其task_id传入original_model_task_id。

HTTP调用

API采用异步调用。整个流程包含 "创建任务 -> 轮询获取" 两个核心步骤,具体如下:

步骤1:创建任务获取任务ID

POST https://maas.qianwenaiapi.com/api/v1/services/aigc/video-generation/3d-generation
  • 创建成功后,使用接口返回的 task_id 查询结果,task_id 有效期为 24 小时。请勿重复创建任务,轮询获取即可。
  • 新手指引请参见Postman。

请求参数

请求头(Headers)
Content-Typestring(必选)请求内容类型。此参数必须设置为application/json。Authorizationstring(必选)请求身份认证。接口使用千问AI平台API Key进行身份认证。示例值:Bearer sk-xxxx。X-DashScope-Asyncstring(必选)异步处理配置参数。HTTP请求只支持异步,必须设置为enable。
缺少此请求头将报错:“current user api does not support synchronous calls”。
请求体(Request Body)
model string (必选)模型名称。固定值:Tripo/Tripo-ConvertFormat。input object (必选)输入信息。

属性

original_model_task_id string (必选)前序任务ID。传入前序任务创建时返回的task_id,系统会自动使用该任务输出的3D模型。前序任务可为任意产出3D模型文件(如GLB)的任务,例如Tripo-文生/图生3D模型。需满足以下条件:
  • 前序任务必须已执行成功。
  • 发起本次调用的账号须与前序任务的账号一致,引用其他账号创建的任务将返回400错误。
  • 使用part_names时,须传入Tripo-网格分割任务的task_id。
模型限制:
  • 支持格式:GLB、GLTF、FBX、OBJ、STL。
  • 文件大小:不超过150MB。
format string (必选)目标导出格式。可选值:
  • GLTF:适用于Web查看器、WebGL引擎(如Three.js、Babylon.js)。
  • USDZ:适用于Apple AR Quick Look、RealityKit。
  • FBX:适用于Unreal、Unity及Maya、Blender等DCC工具。
  • OBJ:传统交换格式,不支持动画。
  • STL:适用于3D打印,仅包含几何体。
  • 3MF:适用于3D打印。
兼容写法:format也可传入glb,效果与传入GLTF相同。
parameters object (可选)格式转换参数。

属性

quad boolean (可选)是否输出四边面网格(而非三角面)。默认值为false。开启后,输出格式强制为FBX;未设置face_limit时,默认面数为10,000。设置为true时按高级转换计费。force_symmetry boolean (可选)是否强制模型对称。默认值为false。仅当quad为true时生效。face_limit integer (可选)输出模型的最大面数。建议不低于100。默认值为null,即不限制面数,保持原模型面数;开启quad时默认面数为10,000。传入非null的值时按高级转换计费。flatten_bottom boolean (可选)是否将模型底部压平。默认值为false。设置为true时按高级转换计费。flatten_bottom_threshold number (可选)底部压平的深度阈值。默认值为0.01。仅当flatten_bottom为true时生效。取值不为0.01时按高级转换计费。texture_size integer (可选)漫反射贴图的尺寸,单位为像素。建议取值512~8192,不要求为2的幂。默认值为4096。取值不为4096时按高级转换计费。texture_format string (可选)贴图格式。取值不为JPEG时按高级转换计费。可选值:
  • JPEG:默认值,文件体积最小。
  • PNG:无损格式,支持透明度。
  • WEBP:现代Web格式。
  • BMP、DPX、HDR、OPEN_EXR、TARGA、TIFF:适用于专业用途。
pivot_to_center_bottom boolean (可选)是否将模型轴心点移至底部中心。默认值为false。设置为true时按高级转换计费。scale_factor number (可选)导出模型的缩放系数。取值须大于0。默认值为1.0。传入0或负数不会报错,但无法保证转换结果。取值不为1.0时按高级转换计费。bake boolean (可选)是否将高级材质烘焙为基础贴图。默认值为true。pack_uv boolean (可选)是否将所有UV合并到统一布局。默认值为false。with_animation boolean (可选)是否包含骨骼和动画数据。默认值为true。animate_in_place boolean (可选)是否导出原地动画(无根骨骼位移)。默认值为false。part_names array[string] (可选)要导出的部件名称列表。
  • 部件名取自前序网格分割任务结果模型(GLB)中的部件节点名,形如tripo_part_0、tripo_part_1;任务结果字段不单独返回部件名,且编号可能不连续,请读取 GLB 的节点名获取。
  • 仅当前序任务为Tripo-网格分割任务(或Tripo-智能分割返回的seg_task_id)时有效。
  • 不传则处理全部部件。
  • 传入不存在的名称不报错、照常计费。
export_vertex_colors boolean (可选)是否导出顶点色。默认值为false。仅对OBJ和GLTF格式生效。export_orientation string (可选)导出模型的朝向(前向轴)。可选值:
  • +x:默认值,X轴正方向朝前。
  • -x:X轴负方向朝前。
  • +y:Y轴正方向朝前。
  • -y:Y轴负方向朝前。
fbx_preset string (可选)FBX格式的兼容预设。可选值:
  • blender:默认值,针对Blender导入优化。
  • 3dsmax:针对3ds Max导入优化。
  • mixamo:兼容Mixamo绑骨。
  • bake_scale:导出FBX时将缩放变换烘焙进几何体,而不保留在节点transform上。
  • 基础转换
  • 高级转换(四边面)
curl --location 'https://maas.qianwenaiapi.com/api/v1/services/aigc/video-generation/3d-generation' \
    -H 'X-DashScope-Async: enable' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY" \
    -H 'Content-Type: application/json' \
    -d '{
    "model": "Tripo/Tripo-ConvertFormat",
    "input": {
        "original_model_task_id": "ca51d54a-ffba-4ecc-8e42-xxxxxx",
        "format": "GLTF"
    }
}'

响应参数

output object任务输出信息。

属性

task_id string任务ID。查询有效期24小时。task_status string任务状态。

枚举值

  • PENDING:任务排队中
  • RUNNING:任务处理中
  • SUCCEEDED:任务执行成功
  • FAILED:任务执行失败
  • CANCELED:任务已取消
  • UNKNOWN:任务不存在或状态未知
request_idstring请求唯一标识。可用于请求明细溯源和问题排查。codestring请求失败的错误码。请求成功时不会返回此参数,详情请参见错误码。messagestring请求失败的详细信息。请求成功时不会返回此参数,详情请参见错误码。
  • 成功响应
  • 异常响应
请保存 task_id,用于查询任务状态与结果。
{
    "output": {
        "task_status": "PENDING",
        "task_id": "0385dc79-5ff8-4d82-bcb6-xxxxxx"
    },
    "request_id": "4909100c-7b5a-9f92-bfe5-xxxxxx"
}

步骤2:根据任务ID查询结果

GET https://maas.qianwenaiapi.com/api/v1/tasks/{task_id}
  • 轮询建议:格式转换通常需要10~30秒,建议采用轮询机制获取结果:首次在提交任务10秒后查询,之后每15~30秒查询一次。
  • 任务状态流转:PENDING(排队中)→ RUNNING(处理中)→ SUCCEEDED(成功)/ FAILED(失败)。
  • task_id 有效期:24小时,超时后将无法查询结果,接口将返回任务状态为UNKNOWN。
  • RPS 限制:查询接口默认RPS为20。如需更高频查询或事件通知,建议配置异步任务回调。
  • 更多操作:如需批量查询、取消任务等操作,请参见管理异步任务。

请求参数

请求头(Headers)
Authorizationstring(必选)请求身份认证。接口使用千问AI平台API Key进行身份认证。示例值:Bearer sk-xxxx。
URL路径参数(Path parameters)
task_id string(必选)任务ID。
  • 查询任务结果
将{task_id}完整替换为上一步接口返回的task_id的值。task_id查询有效期为24小时。
curl -X GET https://maas.qianwenaiapi.com/api/v1/tasks/{task_id} \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

响应参数

outputobject任务输出信息。

属性

task_id string任务ID。查询有效期24小时。task_status string任务状态。

枚举值

  • PENDING:任务排队中
  • RUNNING:任务处理中
  • SUCCEEDED:任务执行成功
  • FAILED:任务执行失败
  • CANCELED:任务已取消
  • UNKNOWN:任务不存在或状态未知
轮询过程中的状态流转:
  • PENDING(排队中) → RUNNING(处理中)→ SUCCEEDED(成功)/ FAILED(失败)。
  • 初次查询状态通常为 PENDING(排队中)或 RUNNING(处理中)。
  • 当状态变为 SUCCEEDED 时,响应中将包含转换后的3D模型URL。
  • 若状态为 FAILED,请检查错误信息并重试。
  • 若状态为 CANCELED,表示任务已取消,如需继续请重新提交任务。
  • 若状态为 UNKNOWN,表示任务不存在或状态未知,可能在 task_id 不存在或超过 24 小时有效期后出现。
submit_time string任务提交时间。格式为 YYYY-MM-DD HH:mm:ss.SSS。scheduled_time string任务执行时间。格式为 YYYY-MM-DD HH:mm:ss.SSS。end_time string任务完成时间。格式为 YYYY-MM-DD HH:mm:ss.SSS。resultsarray转换结果列表。仅在 task_status 为 SUCCEEDED 时返回。各URL均为带签名的临时链接,有效期2小时,请及时下载。

属性

model_url string转换后3D模型的URL。
codestring请求失败的错误码。请求成功时不会返回此参数,详情请参见错误码。messagestring请求失败的详细信息。请求成功时不会返回此参数,详情请参见错误码。
usage object输出信息统计。仅在任务成功时返回,任务失败时不返回。

属性

3d_task_type string任务类型。格式转换固定为convert-3d-format。credits_consumed integer本次任务消耗的积分,等于convert_level。convert_level integer格式转换消耗的积分,按转换复杂度(基础转换或高级转换)计算。判定条件见计费与参数说明。
  • 任务执行成功
  • 任务执行失败
  • 任务查询过期
{
    "request_id": "cc451f5a-fdd7-9d9e-a3a9-xxxxxx",
    "output": {
        "task_id": "2ea046a6-d7bd-4c26-af70-xxxxxx",
        "task_status": "SUCCEEDED",
        "submit_time": "2026-10-21 12:59:21.869",
        "scheduled_time": "2026-10-21 12:59:21.908",
        "end_time": "2026-10-21 12:59:30.384",
        "results": [
            {
                "model_url": "https://openapi.cdn.tripo3d.com/xxxx/tripo_convert_xxxx.glb?auth_key=xxxx"
            }
        ]
    },
    "usage": {
        "3d_task_type": "convert-3d-format",
        "credits_consumed": 5,
        "convert_level": 5
    }
}

计费与参数说明

  • 计费档位:格式转换分为基础转换和高级转换两档计费,高级转换消耗更多积分。满足以下任一条件即按高级转换计费,均不满足时按基础转换计费。实际消耗的积分见查询结果中的usage.convert_level。
    • quad为true
    • face_limit为非null的值
    • flatten_bottom为true
    • flatten_bottom_threshold不为0.01
    • texture_size不为4096
    • texture_format不为JPEG
    • pivot_to_center_bottom为true
    • scale_factor不为1.0
  • 不支持的参数:smart_low_poly(智能低模)是Tripo-文生/图生3D模型接口的参数,格式转换接口不支持。如果请求中带了该参数(例如沿用生成任务的参数),会被忽略,不报错也不计费。
  • 未列出的参数:除smart_low_poly外,传入本文未列出的参数将返回400错误(InvalidParameter)。

错误码

如果模型调用失败并返回报错信息,请参见错误信息进行解决。

其他接口

鉴权

string
header
必填

Header 参数

enum<string>
必填

(必选)

异步处理配置参数。HTTP请求只支持异步,必须设置为enable。

缺少此请求头将报错:“current user api does not support synchronous calls”。

enable

请求体

application/json
HTTP调用
enum<string>
必填

(必选)

模型名称。固定值:Tripo/Tripo-ConvertFormat。

(必选) 模型名称。固定值:Tripo/Tripo-ConvertFormat。

Tripo/Tripo-ConvertFormat
object
必填

(必选)

输入信息。

(必选) 输入信息。

object

(可选)

格式转换参数。

(可选) 格式转换参数。

响应

200-application/json
object

任务输出信息。

string

请求唯一标识。可用于请求明细溯源和问题排查。

object

输出信息统计。仅在任务成功时返回,任务失败时不返回。

string

请求失败的错误码。请求成功时不会返回此参数,详情请参见错误码。

string

请求失败的详细信息。请求成功时不会返回此参数,详情请参见错误码。