loop = asyncio.get_running_loop() timeout_sec = float(os.getenv("GPT_IMAGE2_OVER...

2026年06月11日 15:16 7.30 秒 success

错误信息

loop = asyncio.get_running_loop() timeout_sec = float(os.getenv("GPT_IMAGE2_OVERALL_TIMEOUT_SECONDS", "1800")) print( f"[chatGptImage2] 请求开始 session_id={session_id}, user_name={request.user_name}, " f"n={request.n}, size={request.size}, resolution={request.resolution}, " f"effective_size={effective_size}, quality={request.quality}, " f"image_urls_count={len(request.image_urls or [])}, mask_url={'yes' if request.mask_url else 'no'}" ) print(f"[chatGptImage2] prompt={request.prompt}") try: async with _GPT_IMAGE2_SEMAPHORE: print("[chatGptImage2] 已获取并发信号量,开始执行流水线") with timer_context("gpt_image2.pipeline:") as timer: if request.image_urls: print("[chatGptImage2] 进入编辑分支(DMX images/edits)") image_payloads: List[bytes] = [] for idx, u in enumerate(request.image_urls, start=1): print(f"[chatGptImage2] 下载参考图 {idx}/{len(request.image_urls)}: {u}") image_payloads.append(await download_image_url_bytes(u)) print( f"[chatGptImage2] 参考图 {idx} 下载完成,字节数={len(image_payloads[-1])}" ) mask_payload: Optional[bytes] = None if request.mask_url: print(f"[chatGptImage2] 下载 mask_url: {request.mask_url}") mask_payload = await download_image_url_bytes(request.mask_url) print( f"[chatGptImage2] mask 下载完成,字节数={len(mask_payload)}" ) edit_call = partial( _dmx_gpt_image2_edit_sync, image_payloads, mask_payload, request.prompt, request.n, effective_size, request.quality, ) print( "[chatGptImage2] 调用 _dmx_gpt_image2_edit_sync 参数: " f"images_count={len(image_payloads)}, " f"image_bytes_list={[len(x) for x in image_payloads]}, " f"mask_bytes={len(mask_payload) if mask_payload else 0}, " f"n={request.n}, size={effective_size}, quality={request.quality}, " f"prompt={request.prompt}" ) print("[chatGptImage2] 开始调用 _dmx_gpt_image2_edit_sync") image_bytes, completion_tokens, total_tokens = await asyncio.wait_for( loop.run_in_executor(_GPT_IMAGE2_EXECUTOR, edit_call), timeout=timeout_sec, ) print( f"[chatGptImage2] _dmx_gpt_image2_edit_sync 完成,返回字节数={len(image_bytes)}, " f"completion_tokens={completion_tokens}, total_tokens={total_tokens}" ) else: print("[chatGptImage2] 进入生成分支(DMX images/generations)") gen_size = effective_size if gen_size == "auto": gen_size = "1024x1024" gen_call = partial( _dmx_gpt_image2_generate_sync, request.prompt, request.n, gen_size, request.quality, ) print( f"[chatGptImage2] 开始调用 _dmx_gpt_image2_generate_sync, gen_size={gen_size}" ) image_bytes, completion_tokens, total_tokens = await asyncio.wait_for( loop.run_in_executor(_GPT_IMAGE2_EXECUTOR, gen_call), timeout=timeout_sec, ) print( f"[chatGptImage2] _dmx_gpt_image2_generate_sync 完成,返回字节数={len(image_bytes)}, " f"completion_tokens={completion_tokens}, total_tokens={total_tokens}" ) execution_time = timer["execution_time"] print(f"[chatGptImage2] 流水线执行完成 execution_time={execution_time}") random_filename = f"{uuid.uuid4()}.png" print(f"[chatGptImage2] 开始上传素材库 random_filename={random_filename}") java_upload_result = await upload_image_to_java( image_bytes, random_filename, media_size=effective_size ) print(f"java_upload_result: {java_upload_result}") md5, remote_path, success = parse_java_upload_result(java_upload_result) file_path = f"{IAMGE_SHOW_URL}/{remote_path}" if remote_path else None if success and file_path: print(f"SUCCESS: gpt-image-2 上传成功 - MD5: {md5}, Path: {file_path}") log_generation_record(log_payload, file_path, md5) else: print("WARNING: gpt-image-2 上传到素材库但解析结果异常") log_generation_record(log_payload, "上传成功但获取URL失败", None)

AI 解决方案

我只能分析代码报错信息,请提供具体的错误信息。