3.2. baichuan2

baichuan2-7b

模型下载

  • url:baichuan2-7b

  • branch:main

  • commit id:364ead367078c68c8deef6a319053302b330aa1f

将上述url设定的路径下的内容全部下载到baichuan2-7B-base文件夹中。

批量离线推理

python3.8 -m vllm_utils.benchmark_test \
 --model=[path of baichuan2-7B-base] \
 --demo=tc \
 --output-len=256 \
 --dtype=float16 \
 --gpu-memory-utilization=0.945

性能测试

python3.8 -m vllm_utils.benchmark_test --perf \
 --model=[path of baichuan2-7B-base] \
 --max-model-len=4096 \
 --tokenizer=[path of baichuan2-7B-base] \
 --input-len=128 \
 --output-len=128 \
 --num-prompts=64 \
 --block-size=64 \
 --dtype=float16 \
 --gpu-memory-utilization=0.945

注:

  • 本模型支持的max-model-len为4096;

  • input-lenoutput-lennum-prompts可按需调整;

  • 配置 output-len为1时,输出内容中的latency即为time_to_first_token_latency;

基于OpenCompass进行mmlu数据集评测

  1. 安装OpenCompass

执行 OpenCompass的安装步骤

注:建议使用OpenCompass0.2.1版本。如果安装依赖时安装了和torch_gcu不一致的版本,请重新手动安装。

  1. 准备config文件

将下面的配置信息存为一个python文件,放入OpenCompass中如下路径configs/models/baichuan/vllm_baichuan2_7b_base.py

from opencompass.models import VLLM

models = [
    dict(
        type=VLLM,
        abbr='baichuan2-7b-base-vllm',
        path='path/to/baichuan2-7B-base',
        max_out_len=100,
        max_seq_len=4096,
        batch_size=32,
        generation_kwargs=dict(temperature=0),
        run_cfg=dict(num_gpus=0, num_procs=1),
        model_kwargs=dict(device='gcu', enforce_eager=True)
    )
]


执行以下命令

python3 run.py \
 --models vllm_baichuan2_7b_base \
 --datasets mmlu_gen \
 --max-partition-size 10000000

baichuan2-13b

模型下载

  • url:baichuan2-13b

  • branch:main

  • commit id:c6f590cab590cf33e78ad834dbd5f9bd6df34a94

将上述url设定的路径下的内容全部下载到baichuan2-13B-base文件夹中。

批量离线推理

python3.8 -m vllm_utils.benchmark_test \
 --model=[path of baichuan2-13B-base] \
 --demo=tc \
 --dtype=float16 \
 --output-len=256

性能测试

python3.8 -m vllm_utils.benchmark_test --perf \
 --model=[path of baichuan2-13B-base] \
 --max-model-len=4096 \
 --tokenizer=[path of baichuan2-13B-base] \
 --input-len=512 \
 --output-len=128 \
 --num-prompts=64 \
 --block-size=64 \
 --dtype=float16

baichuan2-7B-base-w8a16

本模型推理及性能测试需要1张enflame gcu。

模型下载

  • 如需要下载权重,请联系商务人员开通EGC权限进行下载

  • 下载Baichuan2-7b-base-w8a16.tar文件并解压,将压缩包内的内容全部拷贝到baichuan2-7B-base-w8a16文件夹中。

  • baichuan2-7B-base-w8a16目录结构如下所示:

baichuan2-7B-base-w8a16/
├── config.json
├── configuration_baichuan.py
├── generation_utils.py
├── modeling_baichuan.py
├── model.safetensors
├── pytorch_model.bin.index.json
├── quantize_config.json
├── quantizer.py
├── special_tokens_map.json
├── tokenization_baichuan.py
├── tokenizer_config.json
├── tokenizer.json
├── tokenizer.model
└── tops_quantize_info.json

批量离线推理

python3.8 -m vllm_utils.benchmark_test \
 --model=[path of baichuan2-7B-base-w8a16] \
 --demo=tc \
 --dtype=float16 \
 --quantization w8a16 \
 --output-len=256

性能测试

python3.8 -m vllm_utils.benchmark_test --perf \
 --model=[path of baichuan2-7B-base-w8a16] \
 --max-model-len=2048 \
 --tokenizer=[path of baichuan2-7B-base-w8a16] \
 --input-len=512 \
 --output-len=128 \
 --num-prompts=8 \
 --block-size=64 \
 --dtype=float16 \
 --quantization=w8a16

注:

  • 本模型支持的max-model-len为4096;

  • input-lenoutput-lennum-prompts可按需调整;

  • 配置 output-len为1时,输出内容中的latency即为time_to_first_token_latency;

baichuan2-13B-base-w8a16

本模型推理及性能测试需要1张enflame gcu。

模型下载

  • 如需要下载权重,请联系商务人员开通EGC权限进行下载

  • 下载Baichuan2-13b-w8a16.tar文件并解压,将压缩包内的内容全部拷贝到baichuan2-13B-base-w8a16文件夹中。

  • baichuan2-13B-base-w8a16目录结构如下所示:

baichuan2-13B-base-w8a16/
├── config.json
├── configuration_baichuan.py
├── generation_utils.py
├── modeling_baichuan.py
├── model.safetensors
├── pytorch_model.bin.index.json
├── quantize_config.json
├── quantizer.py
├── special_tokens_map.json
├── tokenization_baichuan.py
├── tokenizer_config.json
├── tokenizer.model
└── tops_quantize_info.json

批量离线推理

python3.8 -m vllm_utils.benchmark_test \
 --model=[path of baichuan2-13B-base-w8a16] \
 --demo=tc \
 --dtype=float16 \
 --quantization w8a16 \
 --output-len=256

性能测试

python3.8 -m vllm_utils.benchmark_test --perf \
 --model=[path of baichuan2-13B-base-w8a16] \
 --max-model-len=4096 \
 --tokenizer=[path of baichuan2-13B-base-w8a16] \
 --input-len=512 \
 --output-len=128 \
 --num-prompts=8 \
 --block-size=64 \
 --dtype=float16 \
 --quantization=w8a16

注:

  • 本模型支持的max-model-len为4096;

  • input-lenoutput-lennum-prompts可按需调整;

  • 配置 output-len为1时,输出内容中的latency即为time_to_first_token_latency;