修改 lm-evaluation-harness 任务 yaml 的 prompt

修改 lm-evaluation-harness 任务 yaml 的 prompt,以gsm8k_cot_zeroshot.yaml 为例说明。

gsm8k_cot_zeroshot.yaml 在哪里?

如果使用的是 LM Evaluation Harness(lm_eval),文件一般在:

复制代码
<your_env>/site-packages/lm_eval/tasks/gsm8k/

可以直接在终端找到实际路径:

bash 复制代码
python -c "import lm_eval, inspect, os; print(os.path.dirname(inspect.getfile(lm_eval)))"

输出类似:

复制代码
/data/home/usr111/.conda/envs/llm_gpu/lib/python3.10/site-packages/lm_eval

那么 gsm8k 的配置就在:

复制代码
/data/home/usr111/.conda/envs/llm_gpu/lib/python3.10/site-packages/lm_eval/tasks/gsm8k/gsm8k_cot_zeroshot.yaml

📌 你要找的内容就在这个文件里

打开:

bash 复制代码
vim ~/.conda/envs/llm_gpu/lib/python3.10/site-packages/lm_eval/tasks/gsm8k/gsm8k_cot_zeroshot.yaml

会看到类似:

yaml 复制代码
doc_to_text: "Q: {{question}}\nA: Let's think step by step."

而想修改 prompt 是:

yaml 复制代码
doc_to_text: "Solve the following math problem step by step. The last line of your response should be of the form The answer is $ANSWER (without quotes) where $ANSWER is the answer to the problem.\n{{question}}\n Remember to put your answer on its own line after 'The answer is', and you do not need to use a \\boxed command."

⚠️ 注意:不要直接修改 site-packages 的文件!

未来更新/重装会被覆盖。

官方推荐两种方式:


方法 1(推荐):在本地创建自定义 task

创建目录:

复制代码
mkdir -p custom_tasks/gsm8k

新建文件:

复制代码
custom_tasks/gsm8k/gsm8k_cot_zeroshot.yaml

把你的版本粘进去:

yaml 复制代码
task: gsm8k_cot_zeroshot_custom

doc_to_text: |
  Solve the following math problem step by step. The last line of your response should be of the form The answer is $ANSWER (without quotes) where $ANSWER is the answer to the problem.
  {{question}}
  Remember to put your answer on its own line after 'The answer is', and you do not need to use a \boxed command.

doc_to_target: "{{answer}}"

然后运行:

bash 复制代码
lm_eval --tasks gsm8k_cot_zeroshot_custom

或:

bash 复制代码
accelerate launch eval_llada.py --tasks gsm8k_cot_zeroshot_custom

方法 2:直接覆盖原文件(简单但不推荐)

bash 复制代码
vim ~/.conda/envs/llm_gpu/lib/python3.10/site-packages/lm_eval/tasks/gsm8k/gsm8k-cot-zeroshot.yaml

然后把 prompt 改成你需要的。

相关推荐
Yeats_Liao2 天前
微调决策树:何时使用Prompt Engineering,何时选择Fine-tuning?
前端·人工智能·深度学习·算法·决策树·机器学习·prompt
香芋Yu2 天前
【大模型教程——第四部分:大模型应用开发】第1章:提示工程与上下文学习 (Prompt Engineering & ICL)
学习·prompt
cheungxiongwei.com3 天前
使用 C++23 实现 Prompt DSL 的 Header-Only 解析器:从语法设计到工程落地
prompt·c++23
shangjian0073 天前
AI-大语言模型LLM-模型微调3-Prompt Tuning
人工智能·语言模型·prompt
Bruk.Liu4 天前
AI中的Agent、Prompt、MCP与Function Calling:从简单对话到智能执行
人工智能·prompt·mcp
猫头虎5 天前
中国开源大模型霸榜全球:全球开源大模型排行榜前十五名,全部由中国模型占据
langchain·开源·prompt·aigc·ai编程·agi·ai-native
坠金5 天前
prompt
prompt
花间相见5 天前
【LangChain】—— Prompt、Model、Chain与多模型执行链
前端·langchain·prompt
qiukapi6 天前
四. Model I/O 之 Prompt Template
prompt·prompttemplate
Familyism6 天前
Prompt概述
prompt