diff --git a/dsLightRag/QWenImage/QwenImageKit.py b/dsLightRag/QWenImage/QwenImageKit.py index 540916b1..b61babc4 100644 --- a/dsLightRag/QWenImage/QwenImageKit.py +++ b/dsLightRag/QWenImage/QwenImageKit.py @@ -17,21 +17,12 @@ class QwenImageGenerator: self.api_key = api_key or ALY_LLM_API_KEY self.model = "qwen-image" - def generate_image(self, prompt, n=1, size='1328*1328'): + def generate_image(self, prompt, size='1328*1328'): # 移除n参数 """生成图片 Args: prompt: 图片描述提示词 - n: 生成图片数量 size: 图片尺寸 - - Returns: - dict: 包含生成结果的字典,格式如下: - { - 'success': bool, # 操作是否成功 - 'images': list, # 图片URL列表 - 'error_msg': str # 错误信息,如果成功则为None - } """ try: # 调用文心一言图片生成API @@ -39,7 +30,6 @@ class QwenImageGenerator: api_key=self.api_key, model=self.model, prompt=prompt, - n=n, size=size ) @@ -47,6 +37,13 @@ class QwenImageGenerator: if rsp.status_code == HTTPStatus.OK: # 提取图片URL image_urls = [result.url for result in rsp.output.results] + # 修改错误消息,移除n参数引用 + if not image_urls: + return { + 'success': False, + 'images': [], + 'error_msg': 'API返回空结果,图片生成失败' + } return { 'success': True, 'images': image_urls, @@ -97,7 +94,7 @@ class QwenImageGenerator: 'error_msg': f'保存图片失败: {str(e)}' } - def generate_and_save_images(self, prompt, n=1, size='1328*1328', save_dir='./'): + def generate_and_save_images(self, prompt, size='1328*1328', save_dir='./'): """生成图片并保存到本地 Args: @@ -110,7 +107,7 @@ class QwenImageGenerator: dict: 包含生成和保存结果的字典 """ # 生成图片 - generate_result = self.generate_image(prompt, n, size) + generate_result = self.generate_image(prompt, size) if not generate_result['success']: return generate_result diff --git a/dsLightRag/QWenImage/__pycache__/QwenImageKit.cpython-310.pyc b/dsLightRag/QWenImage/__pycache__/QwenImageKit.cpython-310.pyc index f97ac0f2..32656b6a 100644 Binary files a/dsLightRag/QWenImage/__pycache__/QwenImageKit.cpython-310.pyc and b/dsLightRag/QWenImage/__pycache__/QwenImageKit.cpython-310.pyc differ diff --git a/dsLightRag/Routes/QWenImageRoute.py b/dsLightRag/Routes/QWenImageRoute.py index 1ea0a4c9..c8d9a4b5 100644 --- a/dsLightRag/Routes/QWenImageRoute.py +++ b/dsLightRag/Routes/QWenImageRoute.py @@ -51,7 +51,6 @@ async def generate_image(request: GenerateImageRequest): # 仅生成图片,不保存本地 result = generator.generate_image( prompt=request.prompt, - n=request.n, size=request.size ) diff --git a/dsLightRag/Routes/__pycache__/QWenImageRoute.cpython-310.pyc b/dsLightRag/Routes/__pycache__/QWenImageRoute.cpython-310.pyc index 2a458c62..4f2e2d94 100644 Binary files a/dsLightRag/Routes/__pycache__/QWenImageRoute.cpython-310.pyc and b/dsLightRag/Routes/__pycache__/QWenImageRoute.cpython-310.pyc differ diff --git a/dsLightRag/Test/TestQWen3Image.py b/dsLightRag/Test/TestQWen3Image.py index da6ecaf6..afcbd0d5 100644 --- a/dsLightRag/Test/TestQWen3Image.py +++ b/dsLightRag/Test/TestQWen3Image.py @@ -34,12 +34,11 @@ def test_get_config(): return False, None -def test_generate_image(prompt, n=1, size='1328*1328', save_local=True): +def test_generate_image(prompt, size='1328*1328', save_local=True): """测试生成图片接口 Args: prompt: 图片描述提示词 - n: 生成图片数量 size: 图片尺寸 save_local: 是否保存到本地 @@ -51,13 +50,12 @@ def test_generate_image(prompt, n=1, size='1328*1328', save_local=True): headers = {"Content-Type": "application/json"} data = { "prompt": prompt, - "n": n, "size": size, "save_local": save_local } logger.info(f"调用生成图片接口: {url}") - logger.info(f"请求参数: prompt={prompt[:50]}..., n={n}, size={size}, save_local={save_local}") + logger.info(f"请求参数: prompt={prompt[:50]}..., size={size}, save_local={save_local}") # 记录开始时间 start_time = time.time() @@ -109,7 +107,6 @@ def main(): basic_prompt = "一只可爱的小猫在草地上玩耍,阳光明媚,高清细节" generate_success, generate_data = test_generate_image( prompt=basic_prompt, - n=1, size="1328*1328", save_local=True ) @@ -117,13 +114,11 @@ def main(): # 3. 测试生成图片接口 - 不同参数 if config_success: supported_sizes = config_data["data"].get("supported_sizes", ["1328*1328"]) - max_images = min(2, config_data["data"].get("max_images_per_request", 1)) # 为了测试效率,最多请求2张 - - logger.info(f"\n3. 测试生成图片接口 - 不同参数(size={supported_sizes[0]}, n={max_images})") + + logger.info(f"\n3. 测试生成图片接口 - 不同参数(size={supported_sizes[0]})") different_prompt = "美丽的山水风景画,中国水墨画风格" test_generate_image( prompt=different_prompt, - n=max_images, size=supported_sizes[0], save_local=True ) @@ -132,8 +127,7 @@ def main(): # 输出测试结果摘要 success_count = sum([config_success, generate_success]) - total_count = 2 # 基本测试的接口数量 - logger.info(f"测试结果: {success_count}/{total_count} 接口测试成功") + logger.info(f"测试结果: {success_count} 接口测试成功") if __name__ == "__main__":