Video Modelskrea
معرفی و مستندات مدل هوش مصنوعی krea-wan-14b-text-to-video
مستندات مدل تولید ویدیو از متن krea-wan-14b-text-to-video، ارائه شده توسط ای ای کار (AI-KAR).
معرفی و بررسی فنی
⚡ وضعیت پشتیبانی از زبان فارسی
این مدل از زبان فارسی به صورت متوسط پشتیبانی میکند. برای دریافت بهترین نتیجه، توصیه میشود از عبارات ساده و واضح استفاده کنید.
مدل krea-wan-14b-text-to-video یک مدل هوش مصنوعی 14 میلیارد پارامتری است که برای تولید ویدیو از متن طراحی شده است. این مدل به شما امکان میدهد تا با ارائه یک توضیح متنی، ویدیویی با محتوای مورد نظر خود ایجاد کنید. این مدل از طریق API قابل دسترسی است و به توسعهدهندگان اجازه میدهد تا به راحتی آن را در برنامههای خود ادغام کنند. برای استفاده از این مدل، ابتدا باید یک کلید API از ای ای کار (AI-KAR) دریافت کنید. سپس میتوانید با ارسال درخواستهای HTTP به API، ویدیوهای مورد نظر خود را تولید کنید. این فرایند شامل دو مرحله است: ابتدا یک درخواست برای ایجاد یک وظیفه تولید ویدیو به سرور ارسال میکنید که یک شناسه تولید (generation ID) را برمیگرداند. سپس با استفاده از این شناسه، درخواست دیگری برای دریافت ویدیوی تولید شده از سرور ارسال میکنید. در این مدل، طول ویدیو بر اساس تعداد فریمها تعیین میشود، نه ثانیهها. شما میتوانید با استفاده از نرخ فریم 16 فریم در ثانیه، طول ویدیو را به ثانیه محاسبه کنید. به عنوان مثال، اگر تعداد فریمها 78 باشد، طول ویدیو تقریباً 4.875 ثانیه خواهد بود. این مدل از پارامترهای مختلفی برای کنترل فرایند تولید ویدیو پشتیبانی میکند، از جمله متن ورودی (prompt)، تعداد فریمها (num_frames)، فعالسازی توسعه prompt (enable_prompt_expansion) و seed. با تغییر مقدار seed، میتوانید نتایج مختلفی را برای یک درخواست یکسان بدست آورید. این مدل برای تولید ویدیوهای کوتاه و با کیفیت مناسب است و میتواند در زمینههای مختلفی مانند تولید محتوای تبلیغاتی، آموزشی و سرگرمی مورد استفاده قرار گیرد. دقت داشته باشید که کیفیت و مرتبط بودن ویدیو تولید شده به کیفیت و دقت متن ورودی (prompt) بستگی دارد. هرچه متن ورودی دقیقتر و جزئیتر باشد، ویدیوی تولید شده نیز به واقعیت نزدیکتر خواهد بود. همچنین، این مدل از منابع محاسباتی قابل توجهی استفاده میکند، بنابراین ممکن است زمان تولید ویدیو بسته به پیچیدگی درخواست، متغیر باشد.
مشخصات فنی (API References)
| پارامتر | نوع | توضیحات و مقادیر |
|---|---|---|
model | stringRequired | مدل مورد استفاده برای تولید ویدیو. مقدار این پارامتر باید 'krea/krea-wan-14b/text-to-video' باشد. مقادیر مجاز (کلیک برای کپی): |
prompt | stringRequired | توضیحات متنی صحنه، موضوع یا عملی که میخواهید در ویدیو تولید شود. |
num_frames | integer | تعداد فریمهایی که باید تولید شوند. باید مضربی از 12 به اضافه 6 باشد (به عنوان مثال 18، 30، 42 و غیره). حداقل مقدار 18 و حداکثر 162 است. |
enable_prompt_expansion | boolean | مشخص میکند که آیا توسعه prompt فعال شود یا خیر. |
seed | integer | تغییر مقدار seed راهی برای دریافت نتایج مختلف برای پارامترهای درخواست یکسان است. استفاده از مقدار یکسان برای یک درخواست مشابه، نتایج مشابهی را تولید میکند. اگر مشخص نشود، یک عدد تصادفی انتخاب میشود. |
generation_id | stringRequired | شناسه تولید (generation ID) که از درخواست ایجاد وظیفه تولید ویدیو دریافت شده است. |
نمونه کدهای درخواست
نکته مهم برای توسعهدهندگان:
برای احراز هویت، حتما کلید 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}",
}
data = {
"model": "krea/krea-wan-14b/text-to-video",
"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.",
"num_frames": 90
}
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
}
}
}