1、WWB工具介绍

WWB工具全称为who_what_benchmark,是OpenVINO™ GenAI中的生成式AI模型简易准确率基准测试工具,主要用于评估转换或量化压缩后模型与原版模型的相似度,也是社区优选模型的重要评审工具。其核心思路是通过计算两个模型(如基线模型与优化模型)生成数据的嵌入相似度得分来评估性能,这些数据可由不同工具推理生成,相似度得分能反映数据间的整体相近程度。WWB为支持用例提供默认数据集,且插入和使用自定义数据集较为便捷。

再说下OpenVINO™ GenAI ,它是一款简化生成式 AI 模型推理的工具。它基于 OpenVINO™ Runtime,隐藏了生成过程的复杂性,并最大限度地减少了所需的代码量。您只需向该工具提供模型和输入上下文,它便会对输入文本进行分词,在选定的设备上执行生成循环,并返回生成的内容。

本例全部在Ubuntu系统中演示。

2、首先创建虚拟环境

python3 –m venv en2source env2/bin/activate

3、下载WWB工具

该工具为OpenVINO™ GenAI的一部分,先下载OpenVINO™ GenAI

git clone https://github.com/openvinotoolkit/openvino.genai.git

然后这里我使用的commit值为 811056b1b9632f006bd97c20cbf53876c53d3a37

切换到该版本

git checkout 811056b1b9632f006bd97c20cbf53876c53d3a37

请注意!如果未来需要支持更多的模型,建议使用更新的版本。

然后复制该工具到自己的用户目录

cd openvino.genaicp -r tools/who_what_benchmark  /home/rainhenry/AIGC/20251119_WWB/

复制好以后的样子:

4、编译安装依赖的工具

该工具依赖的几个关键包也需要采用源码编译

首先是 AutoGPTQ-0.7.1 下载地址

https://github.com/AutoGPTQ/AutoGPTQ/archive/refs/tags/v0.7.1.tar.gz

先解压

tar -xvf AutoGPTQ-0.7.1.tar.gz

然后安装依赖

pip install torch --index-url https://download.pytorch.org/whl/cpupip install “huggingface-hub>=0.34.0”

中间有报错先忽略

然后编译

cd AutoGPTQ-0.7.1export BUILD_CUDA_EXT=0python3 setup.py buildpython3 setup.py installcd ..

5、编译安装WWB​​​​​​​

cd who_what_benchmarkpip install -r requirements.txtpip install .

注意!这个很重要,不要用python3 setup.py install安装,否则会有问题

当一切安装成功后,whowhatbench的版本信息如下:

6、下载原版Qwen3-4B模型进行评估

下载地址 https://modelscope.cn/models/Qwen/Qwen3-4B

使用命令

wwb --base-model /home/rainhenry/AIGC/20251119_PTLLNL/Qwen3-4B --gt-data gt.csv --model-type text --hf

进行生成基准测试文件:gt.csv

注意!这个步骤需要访问huggingface,请注意网络环境的配置

成功生成的文件如下:

7、下载转换为后的Qwen3-4B-int4-ov进行对比

下载地址https://modelscope.cn/models/OpenVINO/Qwen3-4B-int4-ov​​​​​​​

采用optimum-intel的推理方式,使用命令对比之前生成的基准gt.csv,命令如下:

wwb --target-model /home/rainhenry/AIGC/20251119_PTLLNL/Qwen3-4B-int4-ov --gt-data gt.csv --model-type text

结果如图:

它的意思是和原始模型相比,相似度高达92.5%

如果使用OpenVINO™ GenAI的方式,命令如下:

wwb --target-model /home/rainhenry/AIGC/20251119_PTLLNL/Qwen3-4B-int4-ov --gt-data gt.csv --model-type text --genai

相似度达到了93.2%

所以这就很容易就能反映出,我们自己转换的模型,或者经过量化和压缩以后的模型,相比于原始模型的具体数量上变化参考。它将作为优选模型的主要依据。

除了LLM以外,这个WWB工具还支持其他类型的相似度计算,可以通过

wwb --help

命令查看,目前支持下面的模型类型

参考链接:

WWB帮助文档:

https://github.com/openvinotoolkit/openvino.genai/blob/master/tools/who_what_benchmark/README.md

AutoGPTQ项目:

https://github.com/AutoGPTQ/AutoGPTQ

模型的下载:

https://modelscope.cn/docs/models/download

环境参考(pip list):

Package Version
about-time 4.2.1
accelerate 1.11.0
accelerate 1.11.0
aiohappyeyeballs 2.6.1
aiohappyeyeballs 2.6.1
aiohttp 3.13.2
aiohttp 3.13.2
aiosignal 1.4.0
aiosignal 1.4.0
alive-progress 3.3.0
anyio 4.11.0
anyio 4.11.0
attrs 25.4.0
attrs 25.4.0
auto_gptq 0.7.1
auto_gptq 0.7.1
auto_gptq 0.7.1
autoawq 0.2.7.post3
autoawq 0.2.7.post3
autograd 1.8.0
certifi 2025.11.12
charset-normalizer 3.4.4
cma 4.4.0
contourpy 1.3.3
cycler 0.12.1
datasets 4.4.1
datasets 4.4.1
Deprecated 1.3.1
diffusers 0.35.2
diffusers 0.35.2
dill 0.4.0
dill 0.4.0
filelock 3.19.1
fonttools 4.60.1
frozenlist 1.8.0
frozenlist 1.8.0
fsspec 2025.9.0
gekko 1.3.0
gekko 1.3.0
graphemeu 0.7.2
h11 0.16.0
h11 0.16.0
hf-xet 1.2.0
httpcore 1.0.9
httpcore 1.0.9
httpx 0.28.1
httpx 0.28.1
huggingface-hub 0.36.0
idna 3.11
importlib_metadata 8.7.0
importlib_metadata 8.7.0
Jinja2 3.1.6
joblib 1.5.2
jsonschema 4.25.1
jsonschema-specifications 2025.9.1
kiwisolver 1.4.9
markdown-it-py 4.0.0
MarkupSafe 2.1.5
matplotlib 3.10.7
mdurl 0.1.2
ml_dtypes 0.5.4
ml_dtypes 0.5.4
modelscope 1.32.0
mpmath 1.3.0
multidict 6.7.0
multidict 6.7.0
multiprocess 0.70.18
multiprocess 0.70.18
natsort 8.4.0
networkx 3.4.2
ninja 1.13.0
nncf 2.18.0
nncf 2.18.0
numpy 2.2.6
onnx 1.20.0rc1
onnx 1.20.0rc1
openvino 2025.3.0
openvino 2025.3.0
openvino-genai 2025.3.0.0
openvino-genai 2025.3.0.0
openvino-telemetry 2025.2.0
openvino-telemetry 2025.2.0
openvino-tokenizers 2025.3.0.0
openvino-tokenizers 2025.3.0.0
optimum 2.0.0
optimum 2.0.0
optimum-intel 1.26.1
optimum-intel 1.26.1
optimum-onnx 0.0.3
optimum-onnx 0.0.3
packaging 25.0
packaging 25.0
pandas 2.3.3
pandas 2.3.3
peft 0.18.0
peft 0.18.0
pillow 12.0.0
pillow 12.0.0
pip 24.0
propcache 0.4.1
propcache 0.4.1
protobuf 6.33.1
protobuf 6.33.1
psutil 7.1.3
psutil 7.1.3
pyarrow 22.0.0
pyarrow 22.0.0
pydot 3.0.4
pydot 3.0.4
Pygments 2.19.2
pymoo 0.6.1.5
pymoo 0.6.1.5
pyparsing 3.2.5
python-dateutil 2.9.0.post0
python-dateutil 2.9.0.post0
pytz 2025.2
pytz 2025.2
PyYAML 6.0.3
PyYAML 6.0.3
referencing 0.37.0
regex 2025.11.3
regex 2025.11.3
requests 2.32.5
requests 2.32.5
rich 14.2.0
rich 14.2.0
rouge 1.0.1
rouge 1.0.1
rpds-py 0.29.0
safetensors 0.7.0rc1
safetensors 0.7.0rc1
scikit-learn 1.7.2
scikit-learn 1.7.2
scipy 1.16.3
scipy 1.16.3
sentence-transformers 5.1.2
sentence-transformers 5.1.2
sentencepiece 0.2.1
sentencepiece 0.2.1
setuptools 70.2.0
six 1.17.0
six 1.17.0
sniffio 1.3.1
sniffio 1.3.1
sympy 1.14.0
tabulate 0.9.0
tabulate 0.9.0
threadpoolctl 3.6.0
tokenizers 0.21.4
torch 2.9.1+cpu
tqdm 4.67.1
tqdm 4.67.1
transformers 4.55.4
triton 3.5.1
triton 3.5.1
typing_extensions 4.15.0
tzdata 2025.2
tzdata 2025.2
urllib3 2.5.0
whowhatbench 1.0.0.dev0+unknown.version
wrapt 2.0.1
xxhash 3.6.0
xxhash 3.6.0
yarl 1.22.0
yarl 1.22.0
zipp 3.23.0
zipp 3.23.0
zstandard 0.25.0
zstandard 0.25.0

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐