anim1 / app.py
amlakyas2's picture
Upload 3 files
3f15cd8 verified
# app.py - رابط کاربری سازنده ویدیو (نسخه تضمین‌شده)
import gradio as gr
import tempfile
import os
# تابع ساده برای تست
def create_video_simple(prompt, duration):
# ایجاد یک فایل متنی ساده به جای ویدیو
temp_dir = tempfile.mkdtemp()
output_path = os.path.join(temp_dir, "video_info.txt")
with open(output_path, 'w', encoding='utf-8') as f:
f.write("🎬 **اطلاعات ویدیو**\n")
f.write(f"متن: {prompt}\n")
f.write(f"مدت: {duration} ثانیه\n")
f.write("\n📋 **وضعیت سیستم:**\n")
f.write("✅ رابط کاربری فعال شد\n")
f.write("ℹ️ برای ساخت ویدیوی واقعی نیاز به GPU دارید\n")
f.write("\n🚀 **راه‌حل:**\n")
f.write("1. در Settings → Space hardware\n")
f.write("2. GPU Free را انتخاب کنید\n")
f.write("3. 5 دقیقه منتظر بمانید\n")
f.write("4. سپس مدل دانلود می‌شود\n")
message = f"""
🎉 **رابط کاربری با موفقیت راه‌اندازی شد!**
📝 **ورودی شما:**
متن: {prompt}
مدت: {duration} ثانیه
⚠️ **توجه مهم:**
مدل‌های ساخت ویدیو بسیار سنگین هستند (7-12GB)
و روی **CPU قابل اجرا نیستند**.
🔧 **برای ساخت ویدیوی واقعی:**
1. به **Settings** این Space بروید
2. **Space hardware** → **GPU Free** انتخاب کنید
3. 5-10 دقیقه منتظر Build شدن بمانید
4. سپس می‌توانید ویدیو بسازید
📞 **اگر نیاز به کمک دارید:**
- دکمه ❓ Help در پایین را بزنید
- یا مستندات را مطالعه کنید
"""
return output_path, message
# رابط کاربری
with gr.Blocks(
title="سازنده ویدیو فارسی",
theme=gr.themes.Soft(),
css="""
.gradio-container { max-width: 800px; margin: auto; }
h1 { text-align: center; color: #4a148c; }
.success { color: green; }
"""
) as demo:
gr.Markdown("# 🎬 سازنده ویدیو فارسی")
gr.Markdown("### نسخه آزمایشی - نیاز به GPU برای اجرای کامل")
with gr.Row():
with gr.Column():
prompt = gr.Textbox(
label="📝 متن ویدیو",
placeholder="مثال: یک پروانه در حال پرواز...",
value="گربه کارتونی",
lines=2
)
duration = gr.Slider(
minimum=1,
maximum=5,
value=2,
step=1,
label="⏱️ مدت (ثانیه)"
)
btn = gr.Button(
"🚀 ساخت ویدیو نمونه",
variant="primary"
)
gr.Markdown("""
### 📖 راهنمای سریع
- این نسخه فقط **رابط کاربری** را تست می‌کند
- برای ویدیوی واقعی **GPU نیاز است**
- در Settings → GPU Free را انتخاب کنید
""")
with gr.Column():
output_text = gr.Textbox(
label="📊 وضعیت",
lines=8,
interactive=False
)
output_file = gr.File(
label="📁 خروجی",
file_types=[".txt"]
)
# مثال‌ها
examples = gr.Examples(
examples=[
["یک پروانه رنگارنگ", 2],
["ربات در حال راه رفتن", 2],
["ماهی در آب", 3]
],
inputs=[prompt, duration],
outputs=[output_file, output_text],
fn=create_video_simple,
cache_examples=False
)
btn.click(
fn=create_video_simple,
inputs=[prompt, duration],
outputs=[output_file, output_text]
)
# بخش راهنما
with gr.Accordion("❓ راهنمای کامل", open=False):
gr.Markdown("""
## 🛠️ **چرا ویدیو ساخته نمی‌شود؟**
**دلیل فنی:**
- مدل‌های AI ساخت ویدیو 7-12GB حجم دارند
- روی CPU دانلود و اجرا نمی‌شوند
- نیاز به حافظه GPU حداقل 16GB دارد
**🚀 راه‌حل:**
1. **Settings** → **Space hardware**
2. **GPU** را انتخاب کنید (Free یا Upgrade)
3. 5-10 دقیقه منتظر Build شدن
4. سپس دوباره امتحان کنید
## 📞 **پشتیبانی**
- برای سوالات فنی: huggingface.co/docs
- یا از من بپرسید!
""")
# اجرای برنامه
if __name__ == "__main__":
demo.launch(
server_name="0.0.0.0",
server_port=7860
)