test_rerank_simple.py 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. """
  4. 简化的重排序测试脚本
  5. """
  6. import sys
  7. import os
  8. sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
  9. from foundation.ai.models.rerank_model import execute_rerank
  10. def test_rerank_function():
  11. """
  12. 测试重排序功能
  13. """
  14. print("开始测试重排序功能")
  15. print("=" * 50)
  16. # 测试用例1:乔布斯查询
  17. query1 = "乔布斯是谁?"
  18. candidates1 = [
  19. "大模型是一类具有大量参数的人工智能模型。",
  20. "苹果是一家科技公司",
  21. "大模型用于深度学习任务"
  22. ]
  23. print("测试用例1:")
  24. print(f"查询: {query1}")
  25. print("候选文档:")
  26. for i, doc in enumerate(candidates1, 1):
  27. print(f" {i}. {doc}")
  28. try:
  29. results1 = execute_rerank(query1, candidates1, top_k=3)
  30. print("\n重排序结果:")
  31. for i, result in enumerate(results1, 1):
  32. text = result.get("text", "")
  33. score = result.get("score", "0.0")
  34. print(f" {i}. [{score}] {text}")
  35. print(f"\n结果数量: {len(results1)}")
  36. if results1:
  37. print("测试用例1: 成功")
  38. else:
  39. print("测试用例1: 失败 - 没有返回结果")
  40. except Exception as e:
  41. print(f"测试用例1: 失败 - 异常: {str(e)}")
  42. print("\n" + "-" * 50)
  43. # 测试用例2:人工智能查询
  44. query2 = "什么是人工智能?"
  45. candidates2 = [
  46. "人工智能是计算机科学的一个分支。",
  47. "机器学习是人工智能的核心技术。",
  48. "深度学习使用神经网络进行学习。",
  49. "苹果公司生产iPhone手机。",
  50. "Transformer是大模型的基础架构。"
  51. ]
  52. print("测试用例2:")
  53. print(f"查询: {query2}")
  54. print("候选文档:")
  55. for i, doc in enumerate(candidates2, 1):
  56. print(f" {i}. {doc}")
  57. try:
  58. results2 = execute_rerank(query2, candidates2, top_k=5)
  59. print("\n重排序结果:")
  60. for i, result in enumerate(results2, 1):
  61. text = result.get("text", "")
  62. score = result.get("score", "0.0")
  63. print(f" {i}. [{score}] {text}")
  64. print(f"\n结果数量: {len(results2)}")
  65. if results2:
  66. print("测试用例2: 成功")
  67. else:
  68. print("测试用例2: 失败 - 没有返回结果")
  69. except Exception as e:
  70. print(f"测试用例2: 失败 - 异常: {str(e)}")
  71. print("\n" + "=" * 50)
  72. print("重排序功能测试完成")
  73. if __name__ == "__main__":
  74. test_rerank_function()