创建评测器实例 Args: evaluator_class: 评测器类路径 api_url: API URL api_key: API 密钥 api_model: 模型名称 reward_calculator: 奖励计算器实例 max_assistant_turns: assistant响应的最大轮次 max_user_turns: user输入的最大轮次 api_extra_headers: 额外的API头部 api_ex
(
evaluator_class: str = None,
api_url: str = None,
api_key: str = None,
api_model: str = "gpt-3.5-turbo",
api_proxy: str = "",
reward_calculator = None,
max_assistant_turns: int = 10,
max_user_turns: int = 5,
api_extra_headers: Optional[Dict] = None,
api_extra_params: Optional[Dict] = None,
verify_correction_kwargs: Optional[Dict] = None,
**kwargs
)
| 23 | |
| 24 | |
| 25 | def create_evaluator( |
| 26 | evaluator_class: str = None, |
| 27 | api_url: str = None, |
| 28 | api_key: str = None, |
| 29 | api_model: str = "gpt-3.5-turbo", |
| 30 | api_proxy: str = "", |
| 31 | reward_calculator = None, |
| 32 | max_assistant_turns: int = 10, |
| 33 | max_user_turns: int = 5, |
| 34 | api_extra_headers: Optional[Dict] = None, |
| 35 | api_extra_params: Optional[Dict] = None, |
| 36 | verify_correction_kwargs: Optional[Dict] = None, |
| 37 | **kwargs |
| 38 | ): |
| 39 | """ |
| 40 | 创建评测器实例 |
| 41 | |
| 42 | Args: |
| 43 | evaluator_class: 评测器类路径 |
| 44 | api_url: API URL |
| 45 | api_key: API 密钥 |
| 46 | api_model: 模型名称 |
| 47 | reward_calculator: 奖励计算器实例 |
| 48 | max_assistant_turns: assistant响应的最大轮次 |
| 49 | max_user_turns: user输入的最大轮次 |
| 50 | api_extra_headers: 额外的API头部 |
| 51 | api_extra_params: 额外的模型参数(如temperature、max_tokens等) |
| 52 | verify_correction_kwargs: 传递给奖励计算器verify_correction方法的额外参数 |
| 53 | **kwargs: 传递给评测器的额外参数 |
| 54 | |
| 55 | Returns: |
| 56 | 评测器实例 |
| 57 | """ |
| 58 | if evaluator_class: |
| 59 | evaluator_cls = load_class_from_string(evaluator_class) |
| 60 | else: |
| 61 | evaluator_cls = BaseEvaluator |
| 62 | |
| 63 | return evaluator_cls( |
| 64 | api_url=api_url, |
| 65 | api_key=api_key, |
| 66 | api_model=api_model, |
| 67 | api_proxy=api_proxy, |
| 68 | reward_calculator=reward_calculator, |
| 69 | max_assistant_turns=max_assistant_turns, |
| 70 | max_user_turns=max_user_turns, |
| 71 | api_extra_headers=api_extra_headers, |
| 72 | api_extra_params=api_extra_params, |
| 73 | verify_correction_kwargs=verify_correction_kwargs, |
| 74 | **kwargs |
| 75 | ) |
| 76 | |
| 77 | |
| 78 | def parse_extra_headers(headers_str: str) -> Dict[str, str]: |
no test coverage detected