76 lines
2.4 KiB
Python
76 lines
2.4 KiB
Python
#!/usr/bin/env python3
|
||
# -*- coding: utf-8 -*-
|
||
"""
|
||
增强版优先级算法测试脚本
|
||
"""
|
||
|
||
import sys
|
||
import os
|
||
from datetime import datetime
|
||
|
||
# 添加路径
|
||
sys.path.append(os.path.dirname(__file__))
|
||
|
||
try:
|
||
from src.jixia.debates.enhanced_priority_algorithm import EnhancedPriorityAlgorithm
|
||
print("✅ 算法导入成功!")
|
||
|
||
# 创建算法实例
|
||
algorithm = EnhancedPriorityAlgorithm()
|
||
print("✅ 算法实例创建成功!")
|
||
|
||
# 测试基本功能
|
||
context = {
|
||
"current_stage": "转",
|
||
"stage_progress": 5,
|
||
"max_progress": 36,
|
||
"time_remaining": 0.7,
|
||
"topic_keywords": ["投资", "AI", "风险"],
|
||
"positive_team_score": 0.6,
|
||
"negative_team_score": 0.4
|
||
}
|
||
|
||
recent_speeches = [
|
||
{
|
||
"speaker": "正1",
|
||
"content": "根据最新数据显示,AI投资确实带来了显著的收益增长",
|
||
"timestamp": datetime.now().isoformat(),
|
||
"team": "positive"
|
||
},
|
||
{
|
||
"speaker": "反1",
|
||
"content": "但是我们不能忽视其中的巨大风险,这种投资策略过于激进",
|
||
"timestamp": datetime.now().isoformat(),
|
||
"team": "negative"
|
||
}
|
||
]
|
||
|
||
available_speakers = ["正1", "正2", "正3", "正4", "反1", "反2", "反3", "反4"]
|
||
|
||
# 测试优先级计算
|
||
print("\n🧪 测试优先级计算...")
|
||
for speaker in available_speakers[:4]: # 测试前4个
|
||
priority = algorithm.calculate_speaker_priority(speaker, context, recent_speeches)
|
||
print(f" {speaker}: {priority:.3f}")
|
||
|
||
# 测试获取下一发言者
|
||
print("\n🎯 测试获取下一发言者...")
|
||
next_speaker, score, analysis = algorithm.get_next_speaker(available_speakers, context, recent_speeches)
|
||
print(f"推荐发言者: {next_speaker}")
|
||
print(f"优先级分数: {score:.3f}")
|
||
|
||
# 测试算法状态
|
||
print("\n📊 算法状态报告:")
|
||
status = algorithm.get_algorithm_status()
|
||
print(f"版本: {status['version']}")
|
||
print(f"跟踪发言者数量: {status['total_speakers_tracked']}")
|
||
print(f"算法组件: {status['algorithm_components']}")
|
||
|
||
print("\n🎉 所有测试通过!增强版优先级算法 v2.1.0 运行正常!")
|
||
|
||
except ImportError as e:
|
||
print(f"❌ 导入错误: {e}")
|
||
except Exception as e:
|
||
print(f"❌ 运行错误: {e}")
|
||
import traceback
|
||
traceback.print_exc() |