test_generate.py 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. import sys
  2. import os
  3. sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
  4. from liblibai_client import LibLibAIClient
  5. def test_generate():
  6. """测试生图功能"""
  7. print("开始测试 LibLib ControlNet 生图功能...")
  8. # 使用一个公开的测试图片 URL
  9. test_image_url = "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/assets/stable-samples/img2img/sketch-mountains-input.jpg"
  10. try:
  11. client = LibLibAIClient()
  12. print(f"✓ 客户端初始化成功")
  13. # 测试生图
  14. result = client.generate_image(
  15. image=test_image_url,
  16. prompt="beautiful landscape, mountains, blue sky, high quality",
  17. negative_prompt="lowres, bad anatomy, text, error",
  18. width=512,
  19. height=512,
  20. steps=20,
  21. cfg_scale=7,
  22. img_count=1,
  23. control_weight=1.0,
  24. preprocessor=1,
  25. canny_low=100,
  26. canny_high=200
  27. )
  28. print(f"✓ 生图任务完成")
  29. print(f" 任务 ID: {result['task_id']}")
  30. print(f" 状态: {result['status']}")
  31. print(f" 生成图片数量: {len(result['images'])}")
  32. if result['images']:
  33. print(f" 图片 URL:")
  34. for i, img_url in enumerate(result['images'], 1):
  35. print(f" {i}. {img_url}")
  36. assert result['status'] in ['success', 'timeout'], f"任务状态异常: {result['status']}"
  37. print("\n✓ 测试通过!")
  38. except Exception as e:
  39. print(f"\n✗ 测试失败: {str(e)}")
  40. import traceback
  41. traceback.print_exc()
  42. sys.exit(1)
  43. if __name__ == "__main__":
  44. test_generate()