Seedream 5.0 Pro đã ra mắt | Thử trong Trình tạo ảnh →

Hunyuan3D V2 Base

wavespeed-ai /

Hunyuan3D-V2-Base is a state-of-the-art Image-to-3D model by Tencent that turns images into 3D assets for visualization and content. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

image-to-3d
Đầu vào

Chờ

$0.16cho mỗi lần chạy·~62 / $10

Ví dụXem tất cả

Mô hình liên quan

README

Hunyuan3D V2 Base — Image-to-3D

Hunyuan3D V2 Base is part of Tencent's open-source Hunyuan3D-2 series — a state-of-the-art 3D generation system that transforms 2D images into high-fidelity 3D models with detailed textures. This full-featured version delivers superior quality and detail for professional 3D generation needs.

Why It Stands Out

  • Single image input: Generate complete 3D models from just one 2D image.
  • High-fidelity output: Produces detailed 3D models with accurate geometry and high-resolution (4K) textures.
  • Superior quality: Full model capabilities for maximum detail and precision.
  • Decoupled architecture: Separates geometry generation and texture synthesis for improved quality.
  • Simple workflow: Just upload an image — no 3D expertise required.

Technical Highlights

The Hunyuan3D-2 system adopts a separated process of geometry generation + texture synthesis:

  • Geometry Generation (Hunyuan3D-DiT): Based on a flow diffusion model that generates untextured 3D geometric models, with 2.6B parameters, capable of precisely extracting geometric information from input images.

  • Texture Synthesis (Hunyuan3D-Paint): Adds high-resolution (4K) textures to geometric models, with 1.3B parameters, supporting multi-view diffusion generation technology to ensure realistic textures and consistent lighting.

By decoupling shape and texture generation, the system effectively reduces complexity and improves generation quality.

Performance and Efficiency

  • High-Quality Output: Full model delivers maximum detail and texture resolution.
  • Multi-modal Support: Compatible with various input methods and integrations including Blender plugins and Gradio applications.
  • Open Source Ecosystem: Part of Tencent's open-source 3D generation initiative.

Parameters

ParameterRequiredDescription
imageYesSource image to convert to 3D (upload or public URL).

How to Use

  1. Upload your image — drag and drop a file or paste a public URL.
  2. Click Run and wait for the 3D model to generate.
  3. Preview and download the result.

Best Use Cases

  • Game Development — Generate production-ready 3D assets from concept art.
  • E-commerce — Create detailed 3D product models for interactive displays.
  • 3D Printing — Convert 2D designs into high-detail printable 3D models.
  • AR/VR Content — Generate quality 3D objects for immersive experiences.
  • Film & Animation — Create 3D assets from character designs and storyboards.
  • Product Visualization — Transform product photos into interactive 3D models.

Pricing

OutputPrice
Per 3D model$0.16

Model Comparison

ModelPriceBest For
Hunyuan3D V2 Mini$0.10Quick prototypes, icons, simple objects
Hunyuan3D V2 Base$0.16Production assets, detailed models

Pro Tips for Best Quality

  • Use images with clear subjects against simple or transparent backgrounds.
  • Front-facing or 3/4 angle views typically produce the best results.
  • Ensure the subject is well-lit and clearly visible in the image.
  • Higher resolution source images yield more detailed 3D models.
  • For complex objects, use images that clearly show the main features.

Notes

  • Ensure uploaded image URLs are publicly accessible.
  • Processing time varies based on image complexity and current queue load.
  • For faster, more affordable generation, consider using Hunyuan3D V2 Mini.
  • Please ensure your content complies with usage guidelines.
Lưu ý:Trang web này sử dụng các mô hình AI do bên thứ ba cung cấp.

Hunyuan3d v2 Base API — Quick start

Grab a WaveSpeedAI API key, then call POST https://api.wavespeed.ai/api/v3/wavespeed-ai/hunyuan3d/v2-base with your input as JSON. The endpoint returns a prediction id. Start polling the result endpoint around every 2 seconds, increase the interval for long-running tasks, and stop on any terminal status. On completed, read output values from data.outputs. Examples for Hunyuan3d v2 Base below.

HTTP example
set -euo pipefail

: "${WAVESPEED_API_KEY:?Set WAVESPEED_API_KEY}"

REQUEST_BODY=$(cat <<'JSON'
{
    "image": "https://interactive-examples.mdn.mozilla.net/media/cc0-images/painted-hand-298-332.jpg"
}
JSON
)

# 1. Submit the prediction.
SUBMIT_RESPONSE=$(curl --silent --show-error --fail-with-body \
  -X POST "https://api.wavespeed.ai/api/v3/wavespeed-ai/hunyuan3d/v2-base" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $WAVESPEED_API_KEY" \
  -d "$REQUEST_BODY")

TASK=$(printf '%s' "$SUBMIT_RESPONSE" | jq 'if has("data") then .data else . end')
PREDICTION_ID=$(printf '%s' "$TASK" | jq -r '.id')
if [ -z "$PREDICTION_ID" ] || [ "$PREDICTION_ID" = "null" ]; then
  printf 'Submission response did not contain a prediction id
' >&2
  exit 1
fi
RESULT_URL=$(printf '%s' "$TASK" | jq -r '.urls.get // empty')
if [ -z "$RESULT_URL" ]; then
  RESULT_URL="https://api.wavespeed.ai/api/v3/predictions/$PREDICTION_ID/result"
fi

# 2. Poll until the prediction finishes.
while true; do
  RESPONSE=$(curl --silent --show-error --fail-with-body "$RESULT_URL" \
    -H "Authorization: Bearer $WAVESPEED_API_KEY")
  RESULT=$(printf '%s' "$RESPONSE" | jq 'if has("data") then .data else . end')
  STATUS=$(printf '%s' "$RESULT" | jq -r '.status')
  case "$STATUS" in
    completed) printf '%s\n' "$RESULT" | jq '.outputs'; break ;;
    failed|cancelled|timeout) printf '%s\n' "$RESULT" | jq . >&2; exit 1 ;;
    created|processing) sleep 2 ;;
    *) printf 'Unexpected status: %s
' "$STATUS" >&2; exit 1 ;;
  esac
done
Node.js example
const submitUrl = "https://api.wavespeed.ai/api/v3/wavespeed-ai/hunyuan3d/v2-base";
const apiKey = process.env.WAVESPEED_API_KEY;
if (!apiKey) throw new Error('Set WAVESPEED_API_KEY');

async function requestJson(url, options = {}) {
  const response = await fetch(url, options);
  if (!response.ok) throw new Error(await response.text());
  return response.json();
}

// 1. Submit the prediction.
const body = await requestJson(submitUrl, {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
        "image": "https://interactive-examples.mdn.mozilla.net/media/cc0-images/painted-hand-298-332.jpg"
}),
});
const task = body.data ?? body;
if (!task.id) throw new Error("Submission response did not contain a prediction id");
const resultUrl = task.urls?.get ||
  `https://api.wavespeed.ai/api/v3/predictions/${task.id}/result`;

// 2. Poll until the prediction finishes.
while (true) {
  const resultBody = await requestJson(resultUrl, {
    headers: { "Authorization": `Bearer ${apiKey}` },
  });
  const result = resultBody.data ?? resultBody;
  if (result.status === "completed") {
    console.log(result.outputs);
    break;
  }
  if (["failed", "cancelled", "timeout"].includes(result.status)) throw new Error(JSON.stringify(result));
  if (!["created", "processing"].includes(result.status)) throw new Error("Unexpected status: " + result.status);
  await new Promise(resolve => setTimeout(resolve, 2000));
}
Python example
import json
import os
import time
from urllib.request import Request, urlopen

api_key = os.environ["WAVESPEED_API_KEY"]
headers = {"Authorization": f"Bearer {api_key}", "Content-Type": "application/json"}
payload = {
    "image": "https://interactive-examples.mdn.mozilla.net/media/cc0-images/painted-hand-298-332.jpg"
}

def request_json(url, data=None):
    request = Request(url, data=data, headers=headers, method="POST" if data else "GET")
    with urlopen(request) as response:
        return json.load(response)

# 1. Submit the prediction.
body = request_json("https://api.wavespeed.ai/api/v3/wavespeed-ai/hunyuan3d/v2-base", json.dumps(payload).encode())
task = body.get("data", body)
if not task.get("id"):
    raise RuntimeError("Submission response did not contain a prediction id")
result_url = task.get("urls", {}).get("get") or f"https://api.wavespeed.ai/api/v3/predictions/{task['id']}/result"

# 2. Poll until the prediction finishes.
while True:
    result_body = request_json(result_url)
    result = result_body.get("data", result_body)
    status = result.get("status")
    if status == "completed":
        print(result.get("outputs", []))
        break
    if status in {"failed", "cancelled", "timeout"}:
        raise RuntimeError(result)
    if status not in {"created", "processing"}:
        raise RuntimeError(f"Unexpected status: {status}")
    time.sleep(2)

Hunyuan3d v2 Base API — Frequently asked questions

What is the Hunyuan3d v2 Base API?

Hunyuan3d v2 Base is a WaveSpeedAI model for 3D asset generation from images, exposed as a REST API on WaveSpeedAI. Hunyuan3D-V2-Base is a state-of-the-art Image-to-3D model by Tencent that turns images into 3D assets for visualization and content. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing. You can call it programmatically or try it from the playground above.

How do I call the Hunyuan3d v2 Base API?

POST your input parameters to the model's REST endpoint (shown in the API tab of this playground) with your WaveSpeedAI API key in the Authorization header. Submission returns a prediction ID. Poll the result endpoint starting around every 2 seconds, increase the interval for long-running tasks, and stop on any terminal status. The playground generates production-oriented Python, JavaScript, and cURL examples with timeouts, transient-error handling, and safe GET retries. Full request/response shape is documented at https://wavespeed.ai/docs/docs-api/wavespeed-ai/hunyuan3d-v2-base.

How much does Hunyuan3d v2 Base cost per run?

Hunyuan3d v2 Base starts at $0.16 per run. That figure is the base price — the final charge scales with the parameters you set in the form (output size, length, count, references, or whatever knobs this model exposes), so a higher-quality or larger output costs more than a minimal one. The exact cost for your current input is shown live next to the Generate button before you submit, and the actual per-call charge is recorded on the prediction afterwards.

What inputs does Hunyuan3d v2 Base accept?

Key inputs: `image`. The full JSON schema (types, defaults, allowed values) is rendered above the Generate button and mirrored in the API reference at https://wavespeed.ai/docs/docs-api/wavespeed-ai/hunyuan3d-v2-base.

How long does Hunyuan3d v2 Base take to generate?

Median end-to-end generation time on WaveSpeedAI is around 7 seconds per request, based on recent successful runs. Queue time varies with global demand; live status is visible in the prediction record.

Can I use Hunyuan3d v2 Base outputs commercially?

Commercial usage rights depend on the model's license, set by its provider (WaveSpeedAI). The license summary appears on the model card above; see WaveSpeedAI's Terms of Service for platform-level conditions.