test_thinking_mode_simple.py 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. """
  4. 简化版思考模式测试 - 快速验证
  5. 运行方式:
  6. cd D:/wx_work/sichuan_luqiao/LQAgentPlatform
  7. python utils_test/Model_Test/test_thinking_mode_simple.py
  8. """
  9. import asyncio
  10. import time
  11. import sys
  12. from pathlib import Path
  13. project_root = Path(__file__).parent.parent.parent
  14. from foundation.ai.agent.generate.model_generate import generate_model_client
  15. async def quick_test():
  16. """快速测试思考模式开关"""
  17. print("\n" + "=" * 60)
  18. print("快速测试: Qwen3.5 思考模式开关")
  19. print("=" * 60)
  20. # 测试 1: 默认禁用思考模式
  21. print("\n[Test 1] 默认禁用思考模式 (enable_thinking=False)")
  22. start = time.time()
  23. try:
  24. resp = await generate_model_client.get_model_generate_invoke(
  25. trace_id="test_quick_disabled",
  26. system_prompt="简洁回答",
  27. user_prompt="2+2=?",
  28. model_name="qwen3_5_35b_a3b",
  29. enable_thinking=False,
  30. timeout=60
  31. )
  32. elapsed = time.time() - start
  33. print(f" ✅ 成功 ({elapsed:.2f}s): {resp[:50]}...")
  34. assert elapsed < 60, f"响应时间过长: {elapsed:.2f}s,思考模式可能未禁用"
  35. except Exception as e:
  36. print(f" ❌ 失败: {e}")
  37. return False
  38. # 测试 2: 显式启用思考模式(可选,耗时较长)
  39. print("\n[Test 2] 显式启用思考模式 (enable_thinking=True) - 可选")
  40. print(" [跳过] 取消注释以下代码以运行")
  41. # start = time.time()
  42. # try:
  43. # resp = await generate_model_client.get_model_generate_invoke(
  44. # trace_id="test_quick_enabled",
  45. # system_prompt="详细推理后回答",
  46. # user_prompt="请解释勾股定理",
  47. # model_name="qwen3_5_35b_a3b",
  48. # enable_thinking=True,
  49. # timeout=180
  50. # )
  51. # elapsed = time.time() - start
  52. # print(f" ✅ 成功 ({elapsed:.2f}s): {resp[:100]}...")
  53. # except Exception as e:
  54. # print(f" ❌ 失败: {e}")
  55. # return False
  56. # 测试 3: 非 Qwen3.5 模型
  57. print("\n[Test 3] 非 Qwen3.5 模型")
  58. start = time.time()
  59. try:
  60. resp = await generate_model_client.get_model_generate_invoke(
  61. trace_id="test_quick_doubao",
  62. system_prompt="简洁回答",
  63. user_prompt="3+3=?",
  64. model_name="doubao-1.5-pro-256k",
  65. enable_thinking=False, # 应被忽略
  66. timeout=30
  67. )
  68. elapsed = time.time() - start
  69. print(f" ✅ 成功 ({elapsed:.2f}s): {resp[:50]}...")
  70. except Exception as e:
  71. print(f" ❌ 失败: {e}")
  72. return False
  73. print("\n" + "=" * 60)
  74. print("🎉 所有快速测试通过!")
  75. print("=" * 60 + "\n")
  76. return True
  77. if __name__ == "__main__":
  78. success = asyncio.run(quick_test())
  79. sys.exit(0 if success else 1)