KVCache-Factory 项目使用说明
1. 项目目录结构及介绍
KVCache-Factory 项目的目录结构如下:
assets/
: 存储项目相关的资源文件。csrc/
: 源代码目录,包含项目的主要实现代码。data/
: 存储项目所需的数据文件。examples/
: 示例代码目录,包含如何使用项目的示例。pyramidkv/
: 与 PyramidKV 相关的代码和资源。scripts/
: 脚本目录,包含启动和运行项目的脚本。.DS_Store
: Mac OS X 系统生成的文件,用于存储目录的自定义属性。.gitignore
: 指定 Git 忽略的文件和目录。LICENSE
: 项目使用的许可证文件。README.md
: 项目说明文件。README_zh.md
: 项目说明文件的中文版本。eval.py
: 评估脚本,用于评估模型性能。eval_ruler.py
: 与 eval.py 功能类似的评估脚本,可能用于特定的评估任务。metrics.py
: 包含项目使用的性能指标计算代码。requirements.txt
: 项目依赖的 Python 包列表。run_longbench.py
: 用于在 LongBench 数据集上运行模型的脚本。run_needle_in_haystack.py
: 用于在 Needle in haystack 任务上运行模型的脚本。run_ruler.py
: 与 run_longbench.py 功能类似的脚本,可能用于特定的任务。
2. 项目的启动文件介绍
项目的启动文件主要包含以下几个:
eval.py
: 用于评估模型的性能,可以通过修改脚本来指定不同的参数,如模型路径、数据集等。run_longbench.py
: 用于在 LongBench 数据集上启动模型训练或推理过程。run_needle_in_haystack.py
: 用于在 Needle in haystack 任务上启动模型训练或推理过程。
例如,使用 run_longbench.py
启动模型时,需要设置以下环境变量和参数:
export CUDA_VISIBLE_DEVICES=$1 # 指定使用的 GPU 设备
method=$2 # 选择使用的 KV 缓存压缩方法
max_capacity_prompts=64 # 指定每层的 KV 容量
attn_implementation=$3 # 指定注意力机制的实现
source_path=$4 # 指定源代码路径
model_path=$5 # 指定模型路径
save_dir=${source_path}/results_long_bench # 指定结果保存路径
python3 run_longbench.py \
--method ${method} \
--model_path ${model_path} \
--max_capacity_prompts ${max_capacity_prompts} \
--attn_implementation ${attn_implementation} \
--save_dir ${save_dir} \
--use_cache True
3. 项目的配置文件介绍
项目的配置主要通过以下文件进行:
-
requirements.txt
: 包含项目所需的 Python 包,使用以下命令安装:pip install -r requirements.txt
-
scripts/scripts_longBench/eval.sh
: LongBench 评估脚本的配置文件,可以修改此文件中的参数来配置数据集路径、模型参数等。 -
scripts/scripts_needle/eval.sh
: Needle in haystack 任务的评估脚本的配置文件,与上述类似,可以配置任务相关的参数。
这些配置文件允许用户根据具体需求调整项目参数,以适应不同的使用场景和硬件环境。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考