# -*- coding: utf-8 -*- """ THis is the main file for the gradio web demo. It uses the CogVideoX-5B model to generate videos gradio web demo. set environment variable OPENAI_API_KEY to use the OpenAI API to enhance the prompt. Usage: OpenAI_API_KEY=your_openai_api_key OPENAI_BASE_URL=https://api.openai.com/v1 python inference/gradio_web_demo.py """ import logging import math import os import sys from fastapi.responses import PlainTextResponse from PIL import Image from huggingface_hub.utils.tqdm import progress_bar_states from numpy import ndarray current_dir = os.path.abspath(os.path.dirname(__file__)) sys.path.append(os.path.join(current_dir, '../')) import random import threading import time import cv2 import tempfile import imageio_ffmpeg import gradio as gr from datetime import datetime, timedelta os.makedirs("./output", exist_ok=True) os.makedirs("./input", exist_ok=True) os.makedirs("./gradio_tmp", exist_ok=True) def delete_old_files(): while True: now = datetime.now() cutoff = now - timedelta(minutes=10) directories = ["./output", "./gradio_tmp"] for directory in directories: for filename in os.listdir(directory): file_path = os.path.join(directory, filename) if os.path.isfile(file_path): file_mtime = datetime.fromtimestamp(os.path.getmtime(file_path)) if file_mtime < cutoff: os.remove(file_path) time.sleep(600) threading.Thread(target=delete_old_files, daemon=True).start() class DEMO: def __init__(self,generate): with gr.Blocks() as self.demo: gr.Markdown("""