| from mmengine.config import read_base |
|
|
| from opencompass.models import TurboMindModelwithChatTemplate |
| from opencompass.models.openai_api import OpenAISDK |
| from opencompass.models.openai_streaming import OpenAISDKStreaming |
| from opencompass.utils.text_postprocessors import extract_non_reasoning_content |
|
|
| with read_base(): |
| |
| from opencompass.configs.datasets.gsm8k.gsm8k_gen import \ |
| gsm8k_datasets |
| from opencompass.configs.datasets.HLE.hle_llmverify_academic import \ |
| hle_datasets |
| from opencompass.configs.datasets.IFEval.IFEval_gen_353ae7 import \ |
| ifeval_datasets |
| from opencompass.configs.datasets.mmlu_pro.mmlu_pro_0shot_cot_gen_08c1de import \ |
| mmlu_pro_datasets |
| from opencompass.configs.datasets.race.race_gen import \ |
| race_datasets |
|
|
| mmlu_pro_datasets = [ |
| x for x in mmlu_pro_datasets if 'math' in x['abbr'] or 'other' in x['abbr'] |
| ] |
|
|
| datasets = sum((v for k, v in locals().items() if k.endswith('_datasets')), []) |
|
|
| api_meta_template = dict( |
| round=[ |
| dict(role='HUMAN', api_role='HUMAN'), |
| dict(role='BOT', api_role='BOT', generate=True), |
| ], |
| reserved_roles=[dict(role='SYSTEM', api_role='SYSTEM')], |
| ) |
|
|
| models = [ |
| dict(abbr='lmdeploy-api-test', |
| type=OpenAISDK, |
| key='EMPTY', |
| openai_api_base='http://localhost:23333/v1', |
| path='Qwen/Qwen3-8B', |
| tokenizer_path='Qwen/Qwen3-8B', |
| rpm_verbose=True, |
| meta_template=api_meta_template, |
| query_per_second=128, |
| max_out_len=1024, |
| max_seq_len=4096, |
| temperature=0.01, |
| batch_size=128, |
| retry=20, |
| pred_postprocessor=dict(type=extract_non_reasoning_content)), |
| dict(abbr='lmdeploy-api-streaming-test', |
| type=OpenAISDKStreaming, |
| key='EMPTY', |
| openai_api_base='http://localhost:23333/v1', |
| path='Qwen/Qwen3-8B', |
| tokenizer_path='Qwen/Qwen3-8B', |
| rpm_verbose=True, |
| meta_template=api_meta_template, |
| query_per_second=128, |
| max_out_len=1024, |
| max_seq_len=4096, |
| temperature=0.01, |
| batch_size=128, |
| stream=True, |
| retry=20, |
| pred_postprocessor=dict(type=extract_non_reasoning_content)), |
| dict( |
| abbr='lmdeploy-api-streaming-test-chunk', |
| type=OpenAISDKStreaming, |
| key='EMPTY', |
| openai_api_base='http://localhost:23333/v1', |
| path='Qwen/Qwen3-8B', |
| tokenizer_path='Qwen/Qwen3-8B', |
| rpm_verbose=True, |
| meta_template=api_meta_template, |
| query_per_second=128, |
| max_out_len=1024, |
| max_seq_len=4096, |
| temperature=0.01, |
| batch_size=128, |
| stream=True, |
| retry=20, |
| pred_postprocessor=dict(type=extract_non_reasoning_content), |
| stream_chunk_size=10, |
| verbose=True, |
| ), |
| dict(abbr='lmdeploy-api-test-maxlen', |
| type=OpenAISDK, |
| key='EMPTY', |
| openai_api_base='http://localhost:23333/v1', |
| path='Qwen/Qwen3-8B', |
| tokenizer_path='Qwen/Qwen3-8B', |
| rpm_verbose=True, |
| meta_template=api_meta_template, |
| query_per_second=128, |
| max_out_len=8092, |
| max_seq_len=8092, |
| temperature=0.01, |
| batch_size=128, |
| retry=20, |
| pred_postprocessor=dict(type=extract_non_reasoning_content)), |
| dict(abbr='lmdeploy-api-test-maxlen-mid', |
| type=OpenAISDK, |
| key='EMPTY', |
| openai_api_base='http://localhost:23333/v1', |
| path='Qwen/Qwen3-8B', |
| tokenizer_path='Qwen/Qwen3-8B', |
| rpm_verbose=True, |
| meta_template=api_meta_template, |
| query_per_second=128, |
| max_out_len=8092, |
| max_seq_len=8092, |
| temperature=0.01, |
| batch_size=128, |
| retry=20, |
| mode='mid', |
| pred_postprocessor=dict(type=extract_non_reasoning_content)), |
| dict(abbr='lmdeploy-api-test-nothink', |
| type=OpenAISDK, |
| key='EMPTY', |
| openai_api_base='http://localhost:23333/v1', |
| path='Qwen/Qwen3-8B', |
| tokenizer_path='Qwen/Qwen3-8B', |
| rpm_verbose=True, |
| meta_template=api_meta_template, |
| query_per_second=128, |
| max_out_len=8092, |
| max_seq_len=8092, |
| temperature=0.01, |
| batch_size=128, |
| retry=20, |
| openai_extra_kwargs={ |
| 'top_p': 0.95, |
| }, |
| extra_body={'chat_template_kwargs': { |
| 'enable_thinking': False |
| }}, |
| pred_postprocessor=dict(type=extract_non_reasoning_content)), |
| dict( |
| abbr='lmdeploy-api-test-chat-template', |
| type=OpenAISDK, |
| key='EMPTY', |
| openai_api_base='http://localhost:23333/v1', |
| path='Qwen/Qwen3-8B', |
| tokenizer_path='Qwen/Qwen3-8B', |
| rpm_verbose=True, |
| meta_template=dict(begin=dict(role='SYSTEM', |
| api_role='SYSTEM', |
| prompt='you are a helpful AI.'), |
| round=[ |
| dict(role='HUMAN', api_role='HUMAN'), |
| dict(role='BOT', api_role='BOT', generate=True), |
| ]), |
| query_per_second=128, |
| max_out_len=1024, |
| max_seq_len=1024, |
| temperature=0.01, |
| batch_size=128, |
| retry=20, |
| openai_extra_kwargs={ |
| 'top_p': 0.95, |
| }, |
| extra_body={'chat_template_kwargs': { |
| 'enable_thinking': False |
| }}, |
| pred_postprocessor=dict(type=extract_non_reasoning_content), |
| ), |
| ] |
|
|
| for d in datasets: |
| d['reader_cfg']['test_range'] = '[0:16]' |
| if 'dataset_cfg' in d['eval_cfg']['evaluator'] and 'reader_cfg' in d[ |
| 'eval_cfg']['evaluator']['dataset_cfg']: |
| d['eval_cfg']['evaluator']['dataset_cfg']['reader_cfg'][ |
| 'test_range'] = '[0:16]' |
| if 'llm_evaluator' in d['eval_cfg']['evaluator'] and 'dataset_cfg' in d[ |
| 'eval_cfg']['evaluator']['llm_evaluator']: |
| d['eval_cfg']['evaluator']['llm_evaluator']['dataset_cfg'][ |
| 'reader_cfg']['test_range'] = '[0:16]' |
|
|
| obj_judge_model = dict(type=TurboMindModelwithChatTemplate, |
| abbr='qwen-3-8b-fullbench', |
| path='Qwen/Qwen3-8B', |
| engine_config=dict(session_len=46000, |
| max_batch_size=1, |
| tp=1), |
| gen_config=dict(do_sample=False, enable_thinking=False), |
| max_seq_len=46000, |
| max_out_len=46000, |
| batch_size=1, |
| run_cfg=dict(num_gpus=1)) |
|
|
| for d in datasets: |
| if 'judge_cfg' in d['eval_cfg']['evaluator']: |
| d['eval_cfg']['evaluator']['judge_cfg'] = obj_judge_model |
| if 'llm_evaluator' in d['eval_cfg']['evaluator'] and 'judge_cfg' in d[ |
| 'eval_cfg']['evaluator']['llm_evaluator']: |
| d['eval_cfg']['evaluator']['llm_evaluator'][ |
| 'judge_cfg'] = obj_judge_model |
|
|
| core_summary_groups = [ |
| { |
| 'name': |
| 'core_average', |
| 'subsets': [ |
| ['IFEval', 'Prompt-level-strict-accuracy'], |
| ['hle_llmjudge', 'accuracy'], |
| ['mmlu_pro', 'naive_average'], |
| 'mmlu_pro_math', |
| 'mmlu_pro_other', |
| 'gsm8k', |
| 'race-middle', |
| 'race-high', |
| ], |
| }, |
| ] |
|
|
| summarizer = dict( |
| dataset_abbrs=[ |
| ['core_average', 'naive_average'], |
| ['IFEval', 'Prompt-level-strict-accuracy'], |
| ['hle_llmjudge', 'accuracy'], |
| ['mmlu_pro', 'naive_average'], |
| 'mmlu_pro_math', |
| 'mmlu_pro_other', |
| 'gsm8k', |
| 'race-middle', |
| 'race-high', |
| ], |
| summary_groups=sum( |
| [v |
| for k, v in locals().items() if k.endswith('_summary_groups')], []) + |
| core_summary_groups, |
| ) |
|
|