test_key_points_dimension.py 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. """
  4. 测试关键点Agent的新维度定义
  5. """
  6. from src.components.agents.key_points_agent import KeyPointsAgent
  7. def test_key_points_new_dimensions():
  8. """测试新的维度定义(形式&关系、实质)"""
  9. # 创建关键点Agent
  10. agent = KeyPointsAgent()
  11. # 构造测试数据
  12. test_state = {
  13. "text": {
  14. "title": "冬日温暖穿搭分享",
  15. "body": "这套穿搭采用了经典的叠穿技巧,内搭白色高领毛衣,外搭米色大衣。配色上选择了温暖的大地色系,整体风格简约优雅。",
  16. "hashtags": ["#冬日穿搭", "#叠穿技巧"]
  17. },
  18. "images": [] # 暂不测试图片
  19. }
  20. # 运行关键点提取
  21. print("=" * 80)
  22. print("测试关键点Agent - 新维度定义(形式&关系、实质)")
  23. print("=" * 80)
  24. print("\n测试数据:")
  25. print(f"标题: {test_state['text']['title']}")
  26. print(f"正文: {test_state['text']['body']}")
  27. print(f"标签: {test_state['text']['hashtags']}")
  28. print("\n开始分析...\n")
  29. result = agent.process(test_state)
  30. print("\n" + "=" * 80)
  31. print("测试结果:")
  32. print("=" * 80)
  33. if "key_points" in result:
  34. key_points_data = result["key_points"]
  35. print(f"\n总计: {key_points_data.get('total_count', 0)} 个关键点")
  36. points = key_points_data.get("key_points", [])
  37. if points:
  38. print("\n关键点详情:")
  39. for idx, point in enumerate(points, 1):
  40. 维度大类 = point.get("维度大类", "未知")
  41. 维度细分 = point.get("维度细分", "未知")
  42. 关键点 = point.get("关键点", "未知")
  43. 描述 = point.get("描述", "未知")
  44. print(f"\n{idx}. [{维度大类}] {维度细分}")
  45. print(f" 关键点: {关键点}")
  46. print(f" 描述: {描述}")
  47. else:
  48. print("\n未识别到关键点")
  49. else:
  50. print("\n处理失败")
  51. print("\n" + "=" * 80)
  52. if __name__ == "__main__":
  53. test_key_points_new_dimensions()