Video Modelssber-ai

معرفی و مستندات مدل هوش مصنوعی kandinsky5-text-to-video

مستندات مدل تولید ویدیو از متن kandinsky5-text-to-video، ارائه شده توسط ای آی کار (AI-KAR).

معرفی و بررسی فنی

⚡ وضعیت پشتیبانی از زبان فارسی

این مدل از زبان فارسی به صورت متوسط پشتیبانی می‌کند. برای دریافت بهترین نتیجه، توصیه می‌شود از عبارات ساده و واضح استفاده کنید.

معرفی مدل Kandinsky5-text-to-video

مدل Kandinsky5-text-to-video یک مدل انتشار (diffusion model) است که توسط Sber AI توسعه یافته و برای تولید ویدیو از متن طراحی شده است. این مدل قادر است ویدیوهایی با رزولوشن کمی بالاتر از استاندارد SD تولید کند. این بدان معناست که ویدیوهای تولید شده دارای کیفیت قابل قبولی هستند و برای بسیاری از کاربردها مناسب می‌باشند.

نحوه کارکرد:

برای تولید ویدیو با استفاده از این مدل، باید دو مرحله را طی کنید:

  1. ایجاد و ارسال درخواست تولید ویدیو: در این مرحله، یک درخواست به سرور ارسال می‌کنید که شامل توضیحات متنی (prompt) و سایر پارامترهای مورد نیاز برای تولید ویدیو است. سرور یک شناسه تولید (generation ID) را برمی‌گرداند.
  2. دریافت ویدیوی تولید شده: با استفاده از شناسه تولید (generation ID) که در مرحله قبل دریافت کردید، می‌توانید ویدیوی تولید شده را از سرور درخواست کنید. اگر ویدیوی شما با موفقیت تولید شده باشد، پاسخ شامل URL ویدیوی نهایی و اطلاعات تکمیلی خواهد بود.

قابلیت‌ها و کاربردها:

مدل Kandinsky5-text-to-video به شما امکان می‌دهد تا با ارائه یک متن توصیفی، ویدیویی مرتبط با آن تولید کنید. این قابلیت می‌تواند در زمینه‌های مختلفی کاربرد داشته باشد، از جمله:

  • تولید محتوای تبلیغاتی: می‌توانید با استفاده از این مدل، ویدیوهای تبلیغاتی جذاب و خلاقانه برای محصولات و خدمات خود تولید کنید.
  • ایجاد ویدیوهای آموزشی: می‌توانید با ارائه متن‌های آموزشی، ویدیوهایی تولید کنید که مفاهیم پیچیده را به صورت بصری و جذاب توضیح می‌دهند.
  • تولید محتوای سرگرم‌کننده: می‌توانید با استفاده از این مدل، ویدیوهای کوتاه و سرگرم‌کننده برای شبکه‌های اجتماعی و سایر پلتفرم‌ها تولید کنید.
  • پیش‌نمایش ایده‌ها: قبل از سرمایه‌گذاری در تولید ویدیوهای پرهزینه، می‌توانید از این مدل برای ایجاد پیش‌نمایش‌های اولیه از ایده‌های خود استفاده کنید.

مزایا:

  • سهولت استفاده: استفاده از این مدل بسیار آسان است و نیاز به دانش تخصصی در زمینه تولید ویدیو ندارد.
  • سرعت بالا: فرآیند تولید ویدیو با استفاده از این مدل نسبتاً سریع است.
  • هزینه کم: استفاده از این مدل در مقایسه با روش‌های سنتی تولید ویدیو، بسیار مقرون به صرفه است.

نکات مهم:

  • کیفیت ویدیوهای تولید شده به کیفیت متن توصیفی (prompt) ارائه شده بستگی دارد. هرچه متن دقیق‌تر و واضح‌تر باشد، ویدیوی تولید شده نیز بهتر خواهد بود.
  • زمان تولید ویدیو ممکن است بسته به پیچیدگی درخواست و بار سرور، متفاوت باشد.

با استفاده از مدل Kandinsky5-text-to-video، می‌توانید به راحتی و با کمترین هزینه، ویدیوهای جذاب و خلاقانه تولید کنید و ایده‌های خود را به واقعیت تبدیل کنید. این مدل ابزاری قدرتمند برای تولیدکنندگان محتوا، بازاریابان و هر کسی است که به دنبال راهی سریع و آسان برای تولید ویدیو است.

مشخصات فنی (API References)

پارامترنوعتوضیحات و مقادیر
model
stringRequired
نام مدل مورد استفاده. مقدار ثابت: sber-ai/kandinsky5-t2v
مقادیر مجاز (کلیک برای کپی):
prompt
stringRequired
توضیحات متنی صحنه، موضوع یا عملی که می‌خواهید در ویدیو تولید شود.
aspect_ratio
string
نسبت تصویر ویدیوی تولید شده. مقدار پیش‌فرض: 16:9
مقادیر مجاز (کلیک برای کپی):
duration
integer
طول ویدیوی خروجی بر حسب ثانیه.
مقادیر مجاز (کلیک برای کپی):
num_inference_steps
integer
تعداد مراحل استنتاج برای نمونه‌برداری. مقادیر بالاتر کیفیت بهتری می‌دهند اما زمان بیشتری می‌برند. مقدار پیش‌فرض: 30

نمونه کدهای درخواست

نکته مهم برای توسعه‌دهندگان:

برای احراز هویت، حتما کلید API خود را جایگزین YOUR_API_KEY کنید. هدر Authorization الزامی است.

import requests
import time

# Insert your ای آی کار (AI-KAR) key instead of <YOUR_AI-KARAPI_KEY>:
api_key = "<YOUR_AI-KARAPI_KEY>"

# Creating and sending a video generation task to the server
def generate_video():
    url = "https://api.ai-kar.com/v1/video/generations"
    headers = {
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    }
    data = {
        "model": "sber-ai/kandinsky5-t2v",
        "prompt": "A menacing evil dragon appears in a distance above the tallest mountain, then rushes toward the camera with its jaws open, revealing massive fangs. We see it's coming.",
        "duration": 5
    }
    response = requests.post(url, json=data, headers=headers)
    if response.status_code >= 400:
        print(f"Error: {response.status_code} - {response.text}")
    else:
        response_data = response.json()
        print(response_data)
        return response_data

# Requesting the result of the task from the server using the generation_id
def get_video(gen_id):
    url = "https://api.ai-kar.com/v1/video/generations"
    params = {
        "generation_id": gen_id,
    }
    headers = {
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json"
    }
    response = requests.get(url, params=params, headers=headers)
    return response.json()

def main():
    # Generate video
    gen_response = generate_video()
    gen_id = gen_response.get("id")
    print("Generation ID:  ", gen_id)

    # Try to retrieve the video from the server every 10 sec
    if gen_id:
        start_time = time.time()
        timeout = 600
        while time.time() - start_time < timeout:
            response_data = get_video(gen_id)
            if response_data is None:
                print("Error: No response from API")
                break
            status = response_data.get("status")
            print("Status:", status)
            if status == "waiting" or status == "active" or  status == "queued" or status == "generating":
                print("Still waiting... Checking again in 10 seconds.")
                time.sleep(10)
            else:
                print("Processing complete:/n", response_data)
                return response_data
        print("Timeout reached. Stopping.")
        return None

if __name__ == "__main__":
    main()

نمونه پاسخ موفق (JSON)

RESPONSE (200 OK)
{
  "id": "60ac7c34-3224-4b14-8e7d-0aa0db708325",
  "status": "completed",
  "video": {
    "url": "#",
    "duration": 8
  },
  "duration": 8,
  "error": null,
  "meta": {
    "usage": {
      "tokens_used": 120000
    }
  }
}