Kimi K3.1 Pro and Highspeed are now live on CometAPI →
guide/งานวิจัย CometAPI

วิธีสร้างเครื่องมือสร้างวิดีโอด้วย AI โดยใช้ Bolt & CometAPI: คู่มือทีละขั้นตอน

สร้างตัวสร้างวิดีโอ AI ด้วย Bolt และ CometAPI เชื่อมต่อ Vidu Q3, รักษาความปลอดภัยคีย์ API, ติดตามงาน, เปรียบเทียบต้นทุนของ official กับของ CometAPI, และปรับใช้

CometAPI
Deon Goodwinทีมวิจัยโมเดล AI และ API
อัปเดตแล้ว Oct 26, 2026 8 นาทีในการอ่าน
วิธีสร้างเครื่องมือสร้างวิดีโอด้วย AI โดยใช้ Bolt & CometAPI: คู่มือทีละขั้นตอน
ใช้รูปแบบนี้

เรียกใช้ API ครั้งแรก

from openai import OpenAI

client = OpenAI(
    api_key="YOUR_COMETAPI_KEY",
    base_url="https://api.cometapi.com/v1",
)

response = client.chat.completions.create(
    model="gpt-5-mini",
    messages=[{"role": "user", "content": "Build this workflow."}],
)

print(response.choices[0].message.content)

TL;DR

Bolt สามารถสร้างอินเทอร์เฟซของแอปได้ ขณะที่ CometAPI จัดหา API สำหรับสร้างวิดีโอ เก็บคีย์ CometAPI ไว้ฝั่งเซิร์ฟเวอร์ ส่งงาน Vidu ผ่าน POST /v1/videos โพลล์รหัสงานที่ได้กลับมา และเผยแพร่วิดีโอที่เสร็จแล้วผ่านเส้นทางพรีวิวและดาวน์โหลดที่ต้องยืนยันตัวตน คุณจะต้องมีโปรเจกต์ Bolt บัญชี CometAPI ที่มีเงินและเข้าถึงโมเดลที่เลือก และรันไทม์สำหรับฟังก์ชันเซิร์ฟเวอร์ ตัวอย่างด้านล่างสอนแกนหลักของการเชื่อมต่อ ส่วนการยืนยันตัวตน โควตา การตรวจสอบความเป็นเจ้าของ และบันทึกงานแบบถาวร ต้องถูกทำให้พร้อมก่อนเปิดตัว

Key Takeaways

• Bolt สร้าง UI สตูดิโอวิดีโอแบบตอบสนองจากสเปกแอปที่เป็นภาษาธรรมชาติ

• CometAPI ให้บริการอินเฟอเรนซ์วิดีโอผ่านโมเดลการสร้างที่รองรับ โดยใช้คีย์ API ฝั่งเซิร์ฟเวอร์ที่ป้องกันไว้

• เริ่มจาก text-to-video และขยายไปเป็น image-to-video หลังจากยืนยันวงจรงานแล้ว

• ความพร้อมระดับโปรดักชันต้องมีการยืนยันตัวตน โควตา การตรวจสอบความเป็นเจ้าของงาน รีทไร และการจัดเก็บเอาต์พุตแบบทนทาน

• วัดคุณค่าจริงด้วยอัตราสำเร็จ เวลาแฝง ค่าใช้จ่ายต่อคลิปที่ยอมรับ และความยึดตามพรอมป์ต์

What Are Bolt and CometAPI for AI Video Generation?

Bolt ใช้สร้างอินเทอร์เฟซ ตรรกะแอป และเวิร์กโฟลว์การเผยแพร่ Bolt Cloud ให้บริการสำหรับโปรเจกต์ เช่น ฐานข้อมูล โฮสติ้ง การยืนยันตัวตน การจัดเก็บ และฟังก์ชันเซิร์ฟเวอร์ CometAPI ให้การเข้าถึงโมเดล API รวมถึงโมเดลวิดีโอที่รองรับและเอ็นด์พอยต์อินเฟอเรนซ์ เก็บการอินเฟอเรนซ์แบบเสียเงินไว้หลังฟังก์ชันฝั่งเซิร์ฟเวอร์ที่ผ่านการยืนยัน พร้อมบันทึกงานแบบถาวร การตรวจสอบความเป็นเจ้าของ และการควบคุมบิลลิง

Is CometAPI OpenAI-Compatible?

CometAPI มีอินเทอร์เฟซที่เข้ากันได้กับ OpenAI สำหรับโมเดลข้อความและแชตที่รองรับ กำหนดค่าเอ็นด์พอยต์และโมเดลให้ตรงกับ SDK และเส้นทางที่ใช้งาน ความเข้ากันได้ไม่ได้หมายความว่าโมเดลทุกตัวจะยอมรับสคีมารีเควสต์เดียวกัน

Vidu video API แยกจากอินเทอร์เฟซแชตที่เข้ากันได้กับ OpenAI การสร้างวิดีโอใช้ POST /v1/videos ด้วย multipart/form-data ดังนั้นแอปจึงต้องเรียกเอ็นด์พอยต์วิดีโอโดยตรงจากฟังก์ชันฝั่งเซิร์ฟเวอร์ที่ป้องกันไว้

How Does the CometAPI Vidu Video API Work?

Create a video task

สร้างงานผ่าน POST /v1/videos โดยใช้ multipart/form-data บทเรียนนี้ใช้ viduq3; viduq3-turbo เป็นอีกตัวเลือกหนึ่งที่มีเอกสารถูกต้อง ตรวจสอบสิทธิ์การเข้าถึงโมเดลสำหรับคีย์ API ของคุณและเก็บรักษา task ID ที่ได้รับ ดู เอกสารอ้างอิง API สำหรับการสร้าง

POST /v1/videos parameters

ตารางด้านล่างมีอินพุตสำหรับการสร้าง ส่งฟิลด์สเกลาร์ในฟอร์มเป็นสตริง สำหรับ seconds ให้ใช้สตริงค่าจำนวนเต็มตั้งแต่ "1" ถึง "16"; แอปสามารถตรวจสอบค่าระยะเวลาที่เป็นตัวเลขก่อนซีเรียไลซ์ นโยบายจำกัดพรอมป์ต์ 2,000 อักขระในบทเรียนนี้เป็นนโยบายของแอป

พารามิเตอร์ชนิดตัวอย่างวัตถุประสงค์
modelStringviduq3โมเดลการสร้าง
promptStringCinematic product shotคำสั่งข้อความ
secondsString1ระยะเวลาคลิป: สตริงตัวเลขจำนวนเต็ม 1–16 วินาที
sizeString1280x720ขนาดเอาต์พุต
input_referenceFileproduct.pngไฟล์อ้างอิงภาพ (ตัวเลือก)

เซิร์ฟเวอร์จะส่งกลับ id เป็นตัวระบุงาน; มันไม่ใช่พารามิเตอร์สำหรับการสร้าง บันทึกไว้กับเรคอร์ดงานของผู้ใช้ที่ร้องขอและใช้สำหรับการขอสถานะและคอนเทนต์ในภายหลัง แถว id ที่ขีดฆ่าข้างต้นคงไว้เพื่อแสดงการลบเท่านั้น

  • 540p tier: ใช้ค่า API size 960x528 สำหรับการทดลอง
  • 720p tier: ใช้ 1280x720 สำหรับพรีวิวบนเว็บ
  • 1080p tier: ใช้ 1920x1080 สำหรับการส่งมอบคุณภาพสูง

การตรวจสอบฝั่งเซิร์ฟเวอร์ต้องปฏิเสธการผสมค่าที่ไม่รองรับและป้องกันไม่ให้ผู้ใช้ร้องขอการสร้างแบบเสียเงินที่ไม่จำกัด

Poll the task status

ตรวจสอบ GET /v1/videos/{task_id} จากแบ็กเอนด์หลังจากยืนยันความเป็นเจ้าของงาน ดำเนินการต่อจนกว่างานจะเข้าสู่สถานะสิ้นสุด; เก็บรักษา task ID เพื่อให้การรีเฟรชหน้า หรือการหมดเวลาของเบราว์เซอร์ สามารถกลับมาดำเนินงานเดียวกันได้

Download the completed video

หลังจากเสร็จสิ้น ให้ร้องขอ GET /v1/videos/{task_id}/content ผ่านแบ็กเอนด์และสตรีมผลลัพธ์หรือบันทึกไปยังที่จัดเก็บที่ควบคุมไว้ ไล่ขั้นตอนการเชื่อมต่อการทำงานเหล่านี้กับ Bolt อยู่ในส่วนสาธิตการใช้งานด้านล่าง

How to Build an AI Video Generator Using Bolt + CometAPI

Step 1: Create the project in Bolt

เปิด Bolt และขอให้สร้างโปรเจกต์ React + TypeScript วางสเปกนี้ลงในกล่องพรอมป์ต์ จากนั้นตรวจทานอินเทอร์เฟซที่สร้างขึ้นก่อนเชื่อมต่อการสร้างแบบเสียเงิน:

Build a responsive AI Video Studio using React, TypeScript, and Tailwind CSS.
Use a dark-themed layout with prompt editing, example prompts, 5/10/15-second
choices, 540p/720p/1080p options, Generate Video button, job status,
video preview and download, and a recent-generations section.
Use Bolt Cloud authentication, database, and server functions.
Require sign-in before video creation. Store COMETAPI_KEY only in server secrets.
Create authenticated generate-video and video-status server endpoints.
Connect to real CometAPI tasks; poll status every 10 seconds.
Do not use mock videos in the production path.

วิธีสร้างเครื่องมือสร้างวิดีโอด้วย AI โดยใช้ Bolt & CometAPI: คู่มือทีละขั้นตอน

Step 2: Configure the CometAPI API key

สร้างคีย์ API ใน CometAPI จากนั้นเพิ่มซีเคร็ตฝั่งแบ็กเอนด์ชื่อ COMETAPI_KEY ห้ามเก็บไว้ในซอร์สโค้ดฝั่งฟรอนต์เอนด์ เปิดเผยให้โค้ดเบราว์เซอร์ใช้งาน หรือใช้ตัวแปรสภาพแวดล้อมที่ขึ้นต้นด้วย VITE_

ในค่าเริ่มต้นของโปรเจกต์ Bolt ให้เพิ่ม COMETAPI_KEY ผ่านอินเทอร์เฟซการจัดการซีเคร็ตฝั่งเซิร์ฟเวอร์ของโปรเจกต์ อย่าวางไว้ในซอร์สโค้ดฝั่งฟรอนต์เอนด์หรือเปิดเผยให้ JavaScript ฝั่งเบราว์เซอร์ ตัวอย่างบรรทัดต่อไปนี้เป็นเพียงชื่อซีเคร็ต ไม่ใช่ไฟล์ .env ฝั่งฟรอนต์เอนด์

วิธีสร้างเครื่องมือสร้างวิดีโอด้วย AI โดยใช้ Bolt & CometAPI: คู่มือทีละขั้นตอน

COMETAPI_KEY=your_actual_cometapi_api_key

Step 3: Submit a video-generation task

ฟังก์ชันสไตล์ Deno ต่อไปนี้ให้แกนหลักของคำขอไปยังผู้ให้บริการ ต้องถูกครอบด้วยการตรวจสอบเซสชันจริง โควตา และเรคอร์ดงานที่เป็นของผู้ใช้ก่อนดีพลอย

ตัวอย่างนี้ใช้เลย์เอาต์ฟังก์ชันขอบ (edge function) แบบ Supabase-styled Deno ขอให้ Bolt วางไว้ในรันไทม์ฝั่งเซิร์ฟเวอร์ที่ตั้งค่าไว้จริงสำหรับโปรเจกต์ของคุณ คอมเมนต์เกี่ยวกับการยืนยันตัวตนและการคงอยู่ เป็นจุดเชื่อมต่อการผสานรวม ไม่ใช่มาตรการป้องกันที่ใช้งานจริง: อย่าดีพลอยสเกเลตันนี้เป็นเอ็นด์พอยต์แบบเสียเงินสาธารณะ

// supabase/functions/generate-video/index.ts
import { serve } from "https://deno.land/std/http/server.ts";
serve(async (req: Request) => {
  if (req.method !== "POST") return Response.json({error:"Method not allowed"},{status:405});
  try {
    // Verify the signed-in user and enforce quotas here.
    const {prompt, seconds, size} = await req.json();
    const sizes = ["960x528", "1280x720", "1920x1080"];
    if (typeof prompt !== "string" || !prompt.trim() || prompt.length > 2000 ||
        !Number.isInteger(seconds) || seconds < 1 || seconds > 16 ||
        !sizes.includes(size)) {
      return Response.json({error:"Invalid options"},{status:400});
    }
    const key = Deno.env.get("COMETAPI_KEY");
    if (!key) throw new Error("Missing API key");
    const form = new FormData();
    form.append("model", "viduq3");
    form.append("prompt", prompt.trim());
    form.append("seconds", String(seconds));
    form.append("size", size);
    const response = await fetch("https://api.cometapi.com/v1/videos", {
      method: "POST", headers: {Authorization: `Bearer ${key}`}, body: form,
      signal: AbortSignal.timeout(60000)
    });
    if (!response.ok) throw new Error(`Provider status ${response.status}`);
    const result = await response.json();
    const taskId = result.id ?? result.task_id;
    if (!taskId) throw new Error("Task ID missing");
    // Persist taskId and owner ID in application database here.
    return Response.json({taskId, status: result.status ?? "queued"});
  } catch (e) {
    console.error(e);
    return Response.json({error:"Unable to create video"},{status:500});
  }
});

Step 4: Retrieve generation status

การส่งคำขอจะส่งกลับ ID งานแบบอะซิงก์ ตรวจสอบ GET /v1/videos/{task_id} ผ่านเอ็นด์พอยต์ฝั่งเซิร์ฟเวอร์หลังจากยืนยันว่าผู้ร้องขอเป็นเจ้าของงาน

วิธีสร้างเครื่องมือสร้างวิดีโอด้วย AI โดยใช้ Bolt & CometAPI: คู่มือทีละขั้นตอน

// Server-only helper
async function getVideoStatus(taskId: string) {
  const key = Deno.env.get("COMETAPI_KEY");
  if (!key) throw new Error("Missing API key");
  const response = await fetch(
    `https://api.cometapi.com/v1/videos/${encodeURIComponent(taskId)}`,
    {headers: {Authorization: `Bearer ${key}`}, signal: AbortSignal.timeout(60000)}
  );
  if (!response.ok) throw new Error(`Status ${response.status}`);
  const task = await response.json();
  return {taskId, status: task.status, progress: task.progress ?? null};
}

งานเริ่มต้นใน queued อาจเปลี่ยนไปเป็น in_progress และสิ้นสุดที่ completed, failed หรือ error เปิดใช้งานพรีวิวและดาวน์โหลดเฉพาะเมื่อเป็น completed; แสดงข้อผิดพลาดและอนุญาตให้ส่งคำขอใหม่สำหรับสถานะล้มเหลวที่เป็นเทอร์มินัล

Step 5: Connect the Bolt frontend

type VideoTask = {taskId: string; status: string; progress?: number | null};
async function startVideo(prompt: string, seconds: number, size: string): Promise<VideoTask> {
  const res = await fetch("/api/generate-video", {
    method: "POST", headers: {"Content-Type":"application/json"},
    body: JSON.stringify({prompt, seconds, size})
  });
  if (!res.ok) throw new Error("Generation request failed");
  return res.json();
}
async function checkVideo(taskId: string): Promise<VideoTask> {
  const res = await fetch(`/api/video-status?id=${encodeURIComponent(taskId)}`);
  if (!res.ok) throw new Error("Status request failed");
  return res.json();
}
async function waitForVideo(taskId: string, onUpdate: (task: VideoTask) => void) {
  const deadline = Date.now() + 20 * 60 * 1000;
  while (Date.now() < deadline) {
    const task = await checkVideo(taskId);
    onUpdate(task);
    if (task.status === "completed") return task;
    if (["failed", "error"].includes(task.status)) throw new Error("Render failed");
    await new Promise(resolve => setTimeout(resolve, 10000));
  }
  throw new Error("Polling paused; resume this task ID before submitting again");
}

เส้นทาง /api/ เป็นเส้นทางของแอปที่คุณต้องกำหนดค่า สำหรับฟังก์ชันเซิร์ฟเวอร์ของ Bolt Cloud ให้ใช้ไคลเอนต์แบ็กเอนด์ที่สร้างขึ้นและ URL เอ็นด์พอยต์ที่ผ่านการยืนยัน ยกเลิกการโพลล์เมื่อคอมโพเนนต์ unmount และใช้ backoff แบบมีขอบเขตสำหรับการตอบกลับ 429/5xx เส้นตายการโพลล์ในเบราว์เซอร์ไม่ได้พิสูจน์ความล้มเหลวของผู้ให้บริการ: เก็บรักษา task ID และกลับมาตรวจสอบสถานะก่อนสร้างงานแบบเสียเงินอีกครั้ง

Step 6: Preview and download the result

เมื่อจบงาน แบ็กเอนด์ดึง GET /v1/videos/{task_id}/content สตรีมข้อมูลไปยังเจ้าของงานที่ผ่านการยืนยัน หรือบันทึกไปยังที่จัดเก็บอ็อบเจกต์ที่ควบคุมได้และให้ URL ที่ได้รับอนุญาต ห้ามเปิดเผย Bearer key ของ CometAPI ในเบราว์เซอร์

แอปของคุณควรเปิดเผยเส้นทางคอนเทนต์ที่เป็นของผู้ใช้หรือ URL ของที่จัดเก็บที่ได้รับอนุญาตสำหรับคอมโพเนนต์พรีวิว URL ที่ลงนามสามารถเข้าถึงได้โดยใครก็ตามที่ถืออยู่จนหมดอายุ; เก็บอายุให้สั้น สำหรับการดาวน์โหลดที่เชื่อถือได้ ให้ใช้เส้นทางโดเมนเดียวกันพร้อมส่วนหัว Content-Disposition ที่เหมาะสม เนื่องจากเบราว์เซอร์อาจละเลยแอตทริบิวต์ download สำหรับ URL ข้ามโดเมน

type VideoPreviewProps = {videoUrl: string};
export function VideoPreview({videoUrl}: VideoPreviewProps) {
  return <div className="rounded-xl p-4">
    <video controls playsInline className="w-full rounded-lg" src={videoUrl}/>
    <a href={videoUrl} download="ai-generated-video.mp4">Download Video</a>
  </div>;
}

Step 7: Test and publish

ทดสอบคำขอ 5 วินาที 540p ก่อน: “โคลสอัปเชิงภาพยนตร์ของสมาร์ตวอตช์สีเงินบนโต๊ะสีเข้ม กล้องค่อยๆ เคลื่อนจากซ้ายไปขวา แสงเช้าอ่อนๆ สะท้อนจากโลหะ” ตรวจสอบว่า 1 คำขอสร้าง 1 งาน สถานะเดินหน้า ผลลัพธ์เล่นได้ และดาวน์โหลดสำเร็จ ทดสอบพรอมป์ต์ที่ไม่ถูกต้อง เซสชันหมดอายุ การจำกัดอัตรา ความเป็นเจ้าของงาน และความล้มเหลวจากผู้ให้บริการก่อนเผยแพร่

การตรวจสอบความพร้อม: ลงชื่อเข้าใช้เป็นผู้ใช้คนที่สองและยืนยันว่างานของผู้ใช้คนแรกรับอ่านหรือดาวน์โหลดไม่ได้; รีเฟรชหน้าระหว่างเรนเดอร์และยืนยันว่างานที่บันทึกไว้สามารถกู้กลับมาได้; ตรวจสอบคำขอของเบราว์เซอร์และแอสเซ็ตที่บิวด์แล้วเพื่อหาการเปิดเผยคีย์โดยไม่ได้ตั้งใจ เผยแพร่เฉพาะเมื่อทั้งสามการตรวจสอบผ่าน นอกเหนือจากการเล่นและดาวน์โหลด

How Can You Add Image-to-Video Generation?

สำหรับ image-to-video ให้เพิ่มไฟล์รูปภาพที่ตรวจสอบแล้ว 1 ไฟล์เป็น input_reference ใน multipart body เส้นทางปัจจุบันระบุขนาดสูงสุด 20 MB ต่อภาพ; บังคับใช้ลิมิตที่เล็กกว่าในระดับแอปหากจำเป็น และตรวจสอบชนิดคอนเทนต์และเนื้อหาของไฟล์จริงบนเซิร์ฟเวอร์ ส่งภาพผ่านแบ็กเอนด์ที่ยืนยันตัวตน; อย่าส่งคีย์ CometAPI ไปกับการอัปโหลดของเบราว์เซอร์

const form = new FormData();
form.append("model", "viduq3");
form.append("prompt", prompt);
form.append("seconds", "5");
form.append("size", "1280x720");
form.append("input_reference", imageFile);
const response = await fetch("https://api.cometapi.com/v1/videos", {
  method: "POST", headers: {Authorization: `Bearer ${apiKey}`}, body: form
});
if (!response.ok) throw new Error(`API ${response.status}`);
const result = await response.json();
console.log(result.id ?? result.task_id);

สำหรับอินพุตภาพ อธิบายการเคลื่อนไหวและแอ็กชันของกล้องที่ต้องการ แทนที่จะซ้ำฉากเดิม: “ตัวละครหันไปทางหน้าต่าง ผ้าม่านขยับเบาๆ ตามลม รักษาใบหน้า เครื่องแต่งกาย และแสงไว้ ใช้การเคลื่อนกล้องไปข้างหน้าแบบนุ่มนวล”

Vidu Q3 vs Other AI Video Models: What Should You Measure?

เปรียบเทียบโมเดลบนพรอมป์ต์ ระยะเวลา ความละเอียด และเกณฑ์การยอมรับเดียวกัน ส่วนนี้กำหนดวิธีการเปรียบเทียบ; ไม่ได้อ้างผลผู้ชนะที่ทดสอบแล้ว บันทึกเวอร์ชันของโมเดล เส้นทาง วันที่ทดสอบ และจำนวนตัวอย่างสำหรับผลลัพธ์ที่เผยแพร่ใดๆ

  • อัตราสำเร็จ: แบ่งงานที่สำเร็จด้วยจำนวนงานที่ส่งเพื่อวัดความน่าเชื่อถือ
  • เวลาแฝง: ติดตามเวลา P50 และ P95 เพื่อเข้าใจประสบการณ์โดยทั่วไปและคำขอที่ช้ากว่า
  • ความยึดตามพรอมป์ต์: ใช้การรีวิวโดยมนุษย์หรือการประเมินมาตรฐานเพื่อประเมินว่าผลลัพธ์ทำตามคำสั่งมากน้อยเพียงใด
  • ความสอดคล้องตามกาลเวลา: ตรวจสอบความต่อเนื่องระหว่างเฟรมเพื่อประเมินความนิ่งของภาพ
  • การซิงก์เสียง: ตรวจทานจังหวะเวลาและความชัดเจนเพื่อประเมินบทสนทนาและเสียง
  • ต้นทุนต่อคลิปที่ยอมรับ: แบ่งค่าใช้จ่ายทั้งหมดด้วยเอาต์พุตที่อนุมัติเพื่อเข้าใจเศรษฐศาสตร์การดำเนินงาน

How Much Does the CometAPI Video Generation API Cost?

ตารางด้านล่างให้ราคามาตรฐานอ้างอิงสำหรับ Vidu Q3 และ Vidu Q3 Turbo APIs ใน CometAPI ค่าใช้จ่ายจริงอาจแตกต่างตามโมเดล ความละเอียด และการตั้งค่าการสร้าง ตรวจสอบราคาล่าสุดและความพร้อมของโมเดลในบัญชี CometAPI ของคุณก่อนประเมินงบประมาณการสร้างวิดีโอ

โมเดล CometAPIความละเอียดUSD ต่อวินาที (ข้อมูลเดิม)USD โดยประมาณ / งาน 5 วินาที
Vidu Q3540p$0.056$0.280
Vidu Q3720p$0.1232$0.616
Vidu Q31080p$0.1232$0.616
Vidu Q3 Turbo540p$0.028$0.140
Vidu Q3 Turbo720p$0.0616$0.308
Vidu Q3 Turbo1080p$0.0616$0.308

Vidu Q3 Turbo API ใน CometAPI เริ่มต้นที่ $0.028 ต่อวินาที ราคาสามารถแตกต่างโดยขึ้นกับความละเอียด โหมดการสร้าง และเวอร์ชันของโมเดล ตรวจสอบอัตราปัจจุบันในบัญชี CometAPI ของคุณก่อนสร้างวิดีโอ

ตัวอย่างราคาในที่นี้ใช้กับการสร้างมาตรฐานแบบ text-to-video และ image-to-video โหมดการสร้างอื่นๆ หรือการกำหนดค่าภาพอ้างอิงอาจมีอัตราที่แตกต่าง ค่าใช้จ่ายเพิ่มเติมรวมถึงภาษี การเก็บข้อมูล แบนด์วิดท์ และการสร้างซ้ำไม่ได้รวมอยู่

ตามอัตราอ้างอิง วิดีโอ 5 วินาที 720p มีค่าใช้จ่ายประมาณ $0.616 ด้วย Vidu Q3 หรือ $0.308 ด้วย Vidu Q3 Turbo ที่ 540p ประมาณ $0.280 และ $0.140 ตามลำดับ ตัวเลขเหล่านี้เป็นการคำนวณเชิงอธิบาย ไม่ใช่การคิดค่าบริการที่รับประกัน เพื่อการจัดทำงบประมาณที่แม่นยำ เปรียบเทียบต้นทุนโดยประมาณกับการใช้งาน API และบันทึกการเรียกเก็บเงินจริง

How Can You Migrate an Existing Video Generator to Bolt + CometAPI?

คอมโพเนนต์การย้าย/การดำเนินการ
Frontendสร้างใหม่/นำเข้าแอปใน Bolt
Credentialsย้ายไปเก็บในซีเคร็ตฝั่งเซิร์ฟเวอร์
Generationใช้อแดปเตอร์ CometAPI
Parametersแม็ปฟิลด์โมเดลที่รองรับ
Job IDsทำให้ตัวระบุงานเป็นมาตรฐานเดียวกัน
Statusจัดการสถานะสิ้นสุดและการรีทไร
Downloadsใช้เอ็นด์พอยต์คอนเทนต์ที่ควบคุมได้
Storageจัดเก็บผลลัพธ์ที่เสร็จสิ้นอย่างถาวร
Billingคำนวณโควตาและงบประมาณใหม่

ย้ายอย่างค่อยเป็นค่อยไปหลังอแดปเตอร์ผู้ให้บริการ ตรวจสอบความถูกต้องของคำขอและพฤติกรรมเอาต์พุต เริ่มจากผู้ใช้จำนวนน้อย เปรียบเทียบอัตราสำเร็จและเวลาแฝง และเก็บเส้นทางย้อนกลับจนกว่าประสิทธิภาพจะน่าพอใจ

FAQ

How can I make an approved visual style repeatable across a series?

ปฏิบัติต่อคลิปที่ได้รับอนุมัติเป็นสเปกสร้างสรรค์ที่ทำซ้ำได้: บันทึกพรอมป์ต์ที่แน่นอน โมเดลและเส้นทาง ระยะเวลา ความละเอียด เวอร์ชันของแอสเซ็ตอ้างอิง และตัวระบุเอาต์พุต ใช้ชุดรูปอ้างอิงเล็กๆ และคำอธิบายที่สม่ำเสมอเกี่ยวกับแสง เลนส์ โทนสี และรายละเอียดของตัวแบบ เปลี่ยนแค่ตัวแปรหลักหนึ่งอย่างต่อครั้งเพื่อระบุได้ว่าอะไรช่วยได้ พรอมป์ต์ที่ทำซ้ำไม่ได้รับประกันผลลัพธ์เดิม; หากเส้นทางรองรับ seed ให้บันทึกไว้ แต่ยังคงรีวิวแต่ละคลิปเพื่อความต่อเนื่องก่อนประกอบเป็นลำดับ

How should a multi-shot story stay coherent when each generation is a short clip?

แบ่งสคริปต์เป็นช็อตที่มีแอ็กชันชัดเจนหนึ่งอย่างและมีองค์ประกอบเปิด-ปิดที่กำหนด รักษาแผ่นความต่อเนื่องสำหรับลักษณะตัวละคร เครื่องแต่งกาย อุปกรณ์ประกอบฉาก แสง และทิศทางกล้อง ที่รองรับ ให้ส่งเฟรมที่อนุมัติไปยังช็อตถัดไปเป็นภาพอ้างอิงแทนที่จะพึ่งเพียงข้อความ ประกอบ ตัดแต่ง และปรับเสียงในขั้นตอนตัดต่อแยก ตรวจทานทรานซิชันเป็นลำดับ: คลิปที่ดูดีลำพังอาจทำลายความต่อเนื่องเมื่อวางติดกับคลิปอื่น

What should happen if the browser times out after a paid submission?

ถือว่าเป็นผลลัพธ์ที่ไม่แน่นอนจนกว่าจะกระทบยอดกับงานของผู้ให้บริการที่บันทึกไว้ เก็บตัวระบุคำขอระดับแอปและ task ID ของผู้ให้บริการ ให้ผู้ใช้เปิดงานนั้นอีกครั้งและกลับมาตรวจสอบสถานะ หากการส่งเองหมดเวลาก่อนคืน ID ให้ตรวจสอบล็อกคำขอและบันทึกการใช้งานที่มีอยู่ก่อนเสนอความพยายามอีกครั้ง อย่ารับปากว่าการหมดเวลา HTTP หมายถึงไม่มีการคิดเงิน ทำให้ความพยายามแบบเสียเงินครั้งใหม่ชัดเจน และใช้ล็อกคำขอระดับแอปเพื่อป้องกันการคลิกซ้ำ

What should I review before accepting private customer reference images?

ตัดสินใจว่าแอปรับแอสเซ็ตแบบไหน ผู้ที่อัปโหลดมีสิทธิ์ใช้งานหรือไม่ และบริการดาวน์สตรีมใดจะได้รับไฟล์ ตรวจสอบข้อกำหนดผู้ให้บริการปัจจุบันเกี่ยวกับการเก็บรักษา การบันทึก การลบ และการใช้งานที่อนุญาต ก่อนให้สัญญาความลับ หลีกเลี่ยงวัสดุอ้างอิงส่วนบุคคลหรือที่เป็นความลับในเดโมที่แชร์ ลดสิ่งที่คุณจัดเก็บ แยกวัตถุส่วนตัวตามผู้ใช้ และกำหนดเวิร์กโฟลว์หมดอายุและลบทั้งไฟล์อัปโหลดและไฟล์ที่สร้างขึ้น บัคเก็ตจัดเก็บส่วนตัวของแอปไม่ได้อธิบายนโยบายการเก็บรักษาของผู้ให้บริการโมเดลโดยตัวมันเอง

How can I keep the project portable if my backend or video provider changes?

ทำให้ส่วนติดต่อขึ้นกับสคีมางานที่แอปเป็นเจ้าของ โดยเก็บฟิลด์คำขอที่เฉพาะผู้ให้บริการและการแม็ปสถานะไว้ในอแดปเตอร์แยก บันทึกทั้งไอดีงานภายในและ task ID ของผู้ให้บริการ และเก็บอ้างอิงถึงแอสเซ็ตที่ต้องใช้เพื่อสร้างคำขอซ้ำ เก็บโค้ดและคอนฟิกที่ Bolt สร้างไว้ภายใต้ระบบควบคุมเวอร์ชัน เมื่อแทนที่แบ็กเอนด์ ให้ย้ายผู้ใช้และเรคอร์ดงาน และทดสอบขอบเขตการเข้าถึง URL ที่ลงนาม และการดาวน์โหลดในอดีตก่อนสับเปลี่ยนทราฟฟิก; การส่งออกโค้ดเพียงอย่างเดียวไม่ได้ย้ายฐานข้อมูลที่ใช้งานจริงหรือไฟล์วิดีโอที่จัดเก็บอยู่

Conclusion

Bolt + CometAPI เป็นรากฐานที่ใช้งานได้จริงสำหรับแอปสร้างวิดีโอ: Bolt ช่วยเร่งการสร้างเว็บแอป และ CometAPI จัดหาโมเดลวิดีโอที่รองรับ เริ่มด้วยเวิร์กโฟลว์ text-to-video ที่ปลอดภัย พิสูจน์ว่าวงจรงานและการควบคุมบิลลิงทำงานได้ จากนั้นเพิ่มภาพอ้างอิง ประวัติการสร้าง การเลือกโมเดล และเครื่องมือสร้างสรรค์ขั้นสูง การแยกการโต้ตอบฟรอนต์เอนด์ออกจากการอินเฟอเรนซ์แบบเสียเงินฝั่งเซิร์ฟเวอร์ เป็นหัวใจสำคัญของผลิตภัณฑ์ที่ปลอดภัยและเชื่อถือได้

เรียนรู้ต่อ

เชื่อมโยงบทความนี้กับการตัดสินใจถัดไป

ดูทุกหัวข้อ
เผยแพร่เมื่อ Oct 25, 2026
อัปเดตล่าสุด Oct 26, 2026
0 ครั้งที่ดู
ตรวจสอบความชัดเจน การอ้างอิงแหล่งที่มา และคำศัพท์ API ปัจจุบันแล้ว

อ่านเพิ่มเติม