from mmengine.config import read_base with read_base(): # Evaluate needlebench_4k, adjust the configuration to use 8k, 32k, 128k, 200k, or 1000k if necessary. # from opencompass.configs.datasets.needlebench.needlebench_4k.needlebench_4k import needlebench_datasets # from opencompass.configs.summarizers.needlebench import needlebench_4k_summarizer as summarizer # only eval original "needle in a haystack test" in needlebench_4k from opencompass.configs.datasets.needlebench.needlebench_4k.needlebench_single_4k import ( needlebench_en_datasets, needlebench_zh_datasets) from opencompass.configs.models.hf_internlm.hf_internlm2_chat_7b import \ models as internlm2_chat_7b from opencompass.configs.models.hf_internlm.lmdeploy_internlm2_chat_7b import \ models as internlm2_chat_7b_200k from opencompass.configs.summarizers.needlebench import \ needlebench_4k_summarizer as summarizer # eval Ancestral Tracing Challenge(ATC) # from opencompass.configs.datasets.needlebench.atc.atc_choice_50 import needlebench_datasets # from opencompass.configs.summarizers.needlebench import atc_summarizer_50 as summarizer datasets = sum([v for k, v in locals().items() if ('datasets' in k)], []) for m in internlm2_chat_7b: m['max_seq_len'] = 32768 # Ensure InternLM2-7B model can receive the full length of long texts, adjust for other models based on their supported maximum sequence length. m['max_out_len'] = 2000 # Ensure complete responses from the model in multi-needle retrieval tasks. models = internlm2_chat_7b work_dir = './outputs/needlebench'