'commit'
This commit is contained in:
@@ -7,6 +7,7 @@ from openai import AsyncOpenAI
|
||||
|
||||
from Config import Config
|
||||
from JiMeng.Kit.JmTxt2ImgUtil import JmTxt2Img
|
||||
from JiMeng.Kit.FenJingTouGenerator import FenJingTouGenerator # 导入分镜头生成器
|
||||
|
||||
# 创建路由路由器
|
||||
router = APIRouter(prefix="/api/jimeng", tags=["即梦"])
|
||||
@@ -48,3 +49,41 @@ async def prompt_input(request: fastapi.Request):
|
||||
logger.error(f"图片生成失败: {str(e)}")
|
||||
raise HTTPException(status_code=500, detail=f"图片生成失败: {str(e)}")
|
||||
|
||||
|
||||
@router.post("/generate_fenjingtou")
|
||||
async def generate_fenjingtou(request: fastapi.Request):
|
||||
try:
|
||||
data = await request.json()
|
||||
image_url = data.get("image_url")
|
||||
prompt_text = data.get("prompt_text")
|
||||
|
||||
if not image_url:
|
||||
raise HTTPException(status_code=400, detail="缺少图片地址参数")
|
||||
if not prompt_text:
|
||||
raise HTTPException(status_code=400, detail="缺少提示词参数")
|
||||
|
||||
logger.info(f"收到分镜头生成请求,图片地址: {image_url},提示词: {prompt_text}")
|
||||
|
||||
# 创建分镜头生成器实例并调用方法
|
||||
generator = FenJingTouGenerator()
|
||||
fenjingtou_content = generator.generate_fen_jing_tou(image_url, prompt_text)
|
||||
|
||||
if not fenjingtou_content:
|
||||
raise HTTPException(status_code=500, detail="分镜头脚本生成失败")
|
||||
|
||||
logger.info(f"分镜头脚本生成成功")
|
||||
|
||||
return {
|
||||
"code": 200,
|
||||
"message": "成功",
|
||||
"data": {
|
||||
"fenjingtou_content": fenjingtou_content
|
||||
}
|
||||
}
|
||||
except HTTPException as e:
|
||||
logger.error(f"请求参数错误: {str(e.detail)}")
|
||||
raise e
|
||||
except Exception as e:
|
||||
logger.error(f"分镜头脚本生成失败: {str(e)}")
|
||||
raise HTTPException(status_code=500, detail=f"分镜头脚本生成失败: {str(e)}")
|
||||
|
||||
|
Binary file not shown.
Reference in New Issue
Block a user