import uvicorn from fastapi import FastAPI from pydantic import BaseModel from loguru import logger from google_ai.generativeai_video import main app = FastAPI() class VideoRequest(BaseModel): api_key: str video_path: str prompt: str mark: str sample_data: str @app.post("/process_video/") async def process_video(request: VideoRequest): """处理视频请求""" api_key = request.api_key video_path = request.video_path prompt = request.prompt mark = request.mark sample_data = request.sample_data try: logger.info(f"来一个请求,使用 API key: {api_key}") result = await main(video_path, api_key, prompt, sample_data) return { "code": 0, "message": "视频处理成功", "result": result, "mark": str(mark) } except Exception as e: logger.error(f"处理失败: {str(e)}") return { "code": 1, "message": f"处理失败: {e}", "result": f"处理失败: {e}", "mark": f"处理失败: {e}" } if __name__ == "__main__": uvicorn.run(app, host="0.0.0.0", port=8080)