From 0365a3b30307a0c6443f38c6c5c0a9de059d5406 Mon Sep 17 00:00:00 2001 From: ModelHub XC Date: Sun, 30 Aug 2026 01:36:16 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=EF=BC=8C=E7=94=B1ModelHub=20XC=E7=A4=BE=E5=8C=BA=E6=8F=90?= =?UTF-8?q?=E4=BE=9B=E6=A8=A1=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Model: GenPRM/GenPRM-1.5B Source: Original Platform --- .gitattributes | 48 +++++++++ README.md | 111 +++++++++++++++++++ config.json | 30 ++++++ generation_config.json | 9 ++ images/abla_component.png | 3 + images/abla_data_size.png | 3 + images/abla_label.png | 3 + images/abla_label_maj8.png | 3 + images/abla_model_size.png | 3 + images/all_processbench.png | 3 + images/comparison.png | 3 + images/critic.png | 3 + images/fig_head.png | 3 + images/framework2.png | 3 + images/main_bon.png | 3 + images/main_processbench.png | 3 + model.safetensors | 3 + special_tokens_map.json | 23 ++++ tokenizer.json | 3 + tokenizer_config.json | 203 +++++++++++++++++++++++++++++++++++ 20 files changed, 466 insertions(+) create mode 100644 .gitattributes create mode 100644 README.md create mode 100644 config.json create mode 100644 generation_config.json create mode 100644 images/abla_component.png create mode 100644 images/abla_data_size.png create mode 100644 images/abla_label.png create mode 100644 images/abla_label_maj8.png create mode 100644 images/abla_model_size.png create mode 100644 images/all_processbench.png create mode 100644 images/comparison.png create mode 100644 images/critic.png create mode 100644 images/fig_head.png create mode 100644 images/framework2.png create mode 100644 images/main_bon.png create mode 100644 images/main_processbench.png create mode 100644 model.safetensors create mode 100644 special_tokens_map.json create mode 100644 tokenizer.json create mode 100644 tokenizer_config.json diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..789f8ff --- /dev/null +++ b/.gitattributes @@ -0,0 +1,48 @@ +*.7z filter=lfs diff=lfs merge=lfs -text +*.arrow filter=lfs diff=lfs merge=lfs -text +*.bin filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.ckpt filter=lfs diff=lfs merge=lfs -text +*.ftz filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.h5 filter=lfs diff=lfs merge=lfs -text +*.joblib filter=lfs diff=lfs merge=lfs -text +*.lfs.* filter=lfs diff=lfs merge=lfs -text +*.mlmodel filter=lfs diff=lfs merge=lfs -text +*.model filter=lfs diff=lfs merge=lfs -text +*.msgpack filter=lfs diff=lfs merge=lfs -text +*.npy filter=lfs diff=lfs merge=lfs -text +*.npz filter=lfs diff=lfs merge=lfs -text +*.onnx filter=lfs diff=lfs merge=lfs -text +*.ot filter=lfs diff=lfs merge=lfs -text +*.parquet filter=lfs diff=lfs merge=lfs -text +*.pb filter=lfs diff=lfs merge=lfs -text +*.pickle filter=lfs diff=lfs merge=lfs -text +*.pkl filter=lfs diff=lfs merge=lfs -text +*.pt filter=lfs diff=lfs merge=lfs -text +*.pth filter=lfs diff=lfs merge=lfs -text +*.rar filter=lfs diff=lfs merge=lfs -text +*.safetensors filter=lfs diff=lfs merge=lfs -text +saved_model/**/* filter=lfs diff=lfs merge=lfs -text +*.tar.* filter=lfs diff=lfs merge=lfs -text +*.tar filter=lfs diff=lfs merge=lfs -text +*.tflite filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.wasm filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text +*tfevents* filter=lfs diff=lfs merge=lfs -text +tokenizer.json filter=lfs diff=lfs merge=lfs -text +images/abla_component.png filter=lfs diff=lfs merge=lfs -text +images/abla_data_size.png filter=lfs diff=lfs merge=lfs -text +images/abla_label.png filter=lfs diff=lfs merge=lfs -text +images/abla_label_maj8.png filter=lfs diff=lfs merge=lfs -text +images/abla_model_size.png filter=lfs diff=lfs merge=lfs -text +images/all_processbench.png filter=lfs diff=lfs merge=lfs -text +images/comparison.png filter=lfs diff=lfs merge=lfs -text +images/critic.png filter=lfs diff=lfs merge=lfs -text +images/fig_head.png filter=lfs diff=lfs merge=lfs -text +images/framework2.png filter=lfs diff=lfs merge=lfs -text +images/main_bon.png filter=lfs diff=lfs merge=lfs -text +images/main_processbench.png filter=lfs diff=lfs merge=lfs -text diff --git a/README.md b/README.md new file mode 100644 index 0000000..d83d564 --- /dev/null +++ b/README.md @@ -0,0 +1,111 @@ +--- +license: mit +datasets: +- GenPRM/GenPRM-MATH-Data +base_model: +- deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B +language: +- en +--- + +# Introduction + +We propose **GenPRM**, a strong generative process reward model with the following features: + +- performing explicit **CoT reasoning** and **code verfication** before providing the process judgment; +- improving Monte Carlo estimation and hard label with **Relative Progress Estimation (RPE)**; +- supporting GenPRM **test-time scaling** in a parallel manner with majority voting; +- supporting policy model test-time scaling with GenPRM as **verifiers** or **critics**. + +GenPRM achieves state-of-the-art performance across multiple benchmarks in two key roles: + +- **As a verifier**: GenPRM-7B outperforms all classification-based PRMs of comparable size and even surpasses **Qwen2.5-Math-PRM-72B** via test-time scaling. +- **As a critic**: GenPRM-7B demonstrates superior critique capabilities, achieving **3.4×** greater performance gains than DeepSeekR1-Distill-Qwen-7B after 3 refinement iterations. + +![](images/fig_head.png) + +- Project Page: [GenPRM: Scaling Test-Time Compute of Process Reward Models via Generative Reasoning](https://ryanliu112.github.io/GenPRM) +- Paper: [https://arxiv.org/abs/2504.00891](https://arxiv.org/abs/2504.00891) +- Code: [https://github.com/RyanLiu112/GenPRM](https://github.com/RyanLiu112/GenPRM) +- Awesome Process Reward Models: [Awesome Process Reward Models](https://github.com/RyanLiu112/Awesome-Process-Reward-Models) +- HF Paper Link: [GenPRM: Scaling Test-Time Compute of Process Reward Models via Generative Reasoning](https://hf.co/papers/2504.00891) +- HF Collection: [GenPRM](https://hf.co/collections/GenPRM/genprm-67ee4936234ba5dd16bb9943) + +# Model details + +For full training details, please refer to our [paper](https://arxiv.org/abs/2504.00891). + +- Training data: 23K SFT data is released in [GenPRM-MATH-Data](https://huggingface.co/datasets/GenPRM/GenPRM-MATH-Data). +- Base model: we use [DeepSeek-R1-Distill series](https://huggingface.co/deepseek-ai) (1.5B, 7B, and 32B) as our base models. + +# How to use + +The evaluation code of GenPRM is available in our GitHub repository: [https://github.com/RyanLiu112/GenPRM](https://github.com/RyanLiu112/GenPRM). + +Here's a minimal example of using GenPRM for rationale generation and process supervision: + +```python +from transformers import AutoTokenizer +from vllm import LLM, SamplingParams + +# Load model and tokenizer +model = LLM(model="GenPRM/GenPRM-1.5B") +tokenizer = AutoTokenizer.from_pretrained("GenPRM/GenPRM-1.5B") + +# Configure sampling parameters +sampling_params = SamplingParams( + temperature=0.6, + top_p=0.95, + max_tokens=8192, + top_k=20, + repetition_penalty=1.0 +) + +# Define the messages +messages = [ + {'role': 'system', 'content': 'You are a math teacher. Your task is to review and critique the paragraphs in solution step by step.'}, + {'role': 'user', 'content': 'Question: Let $f(x)=x^2-7x+18$ and let $g(f(x))=2x+3$. What is the sum of all possible values of $g(8)$?\n\nTo solve the problem, we need to first understand the given functions and how they interact with each other. We are given $f(x) = x^2 - 7x + 18$ and $g(f(x)) = 2x + 3$.'} +] + +# Generate prompt and get the model's output +prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True) +outputs = model.generate(prompt, sampling_params) + +# Print result +print(f"Model output for the first solution step: {outputs[0].outputs[0].text}") +``` + +# Citation +If you find this work helpful, please kindly cite our paper: + +```bibtex +@article{zhao2025genprm, + title = {GenPRM: Scaling Test-Time Compute of Process Reward Models via Generative Reasoning}, + author = {Jian Zhao and Runze Liu and Kaiyan Zhang and Zhimu Zhou and Junqi Gao and Dong Li and Jiafei Lyu and Zhouyi Qian and Biqing Qi and Xiu Li and Bowen Zhou}, + journal = {arXiv preprint arXiv:2504.00891}, + year = {2025} +} +``` + +Our collection of PRMs in [Awesome-Process-Reward-Models](https://github.com/RyanLiu112/Awesome-Process-Reward-Models): + +```bibtex +@misc{Awesome-Process-Reward-Models, + title = {Awesome Process Reward Models}, + author = {Runze Liu and Jian Zhao and Kaiyan Zhang and Zhimu Zhou and Junqi Gao and Dong Li and Jiafei Lyu and Zhouyi Qian and Biqing Qi and Xiu Li and Bowen Zhou}, + howpublished = {\url{https://github.com/RyanLiu112/Awesome-Process-Reward-Models}}, + note = {GitHub repository}, + year = {2025} +} +``` + +Our recent work on LLM test-time scaling with PRMs: + +```bibtex +@article{liu2025can, + title = {Can 1B LLM Surpass 405B LLM? Rethinking Compute-Optimal Test-Time Scaling}, + author = {Runze Liu and Junqi Gao and Jian Zhao and Kaiyan Zhang and Xiu Li and Biqing Qi and Wanli Ouyang and Bowen Zhou}, + journal = {arXiv preprint arXiv:2502.06703}, + year = {2025} +} +``` \ No newline at end of file diff --git a/config.json b/config.json new file mode 100644 index 0000000..8f79308 --- /dev/null +++ b/config.json @@ -0,0 +1,30 @@ +{ + "_name_or_path": "/cpfs02/user/liurunze/hf_models/models--deepseek-ai--DeepSeek-R1-Distill-Qwen-1.5B", + "architectures": [ + "Qwen2ForCausalLM" + ], + "attention_dropout": 0.0, + "bos_token_id": 151646, + "eos_token_id": 151643, + "hidden_act": "silu", + "hidden_size": 1536, + "initializer_range": 0.02, + "intermediate_size": 8960, + "max_position_embeddings": 131072, + "max_window_layers": 21, + "model_type": "qwen2", + "num_attention_heads": 12, + "num_hidden_layers": 28, + "num_key_value_heads": 2, + "rms_norm_eps": 1e-06, + "rope_scaling": null, + "rope_theta": 10000, + "sliding_window": null, + "tie_word_embeddings": false, + "torch_dtype": "bfloat16", + "transformers_version": "4.47.1", + "use_cache": false, + "use_mrope": false, + "use_sliding_window": false, + "vocab_size": 151936 +} diff --git a/generation_config.json b/generation_config.json new file mode 100644 index 0000000..c02e4ce --- /dev/null +++ b/generation_config.json @@ -0,0 +1,9 @@ +{ + "_from_model_config": true, + "bos_token_id": 151646, + "do_sample": true, + "eos_token_id": 151643, + "temperature": 0.6, + "top_p": 0.95, + "transformers_version": "4.47.1" +} diff --git a/images/abla_component.png b/images/abla_component.png new file mode 100644 index 0000000..b2373b2 --- /dev/null +++ b/images/abla_component.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19baf7ca2eb5d730d43b74bc4a4bc0824b21e9cdaa32f8f59e568f59482c9a82 +size 558275 diff --git a/images/abla_data_size.png b/images/abla_data_size.png new file mode 100644 index 0000000..2f91f2b --- /dev/null +++ b/images/abla_data_size.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2b7e9f8ffd4a6354bc520cc4d9ad8d7b3249fdcc54a027525e149bde7829f76 +size 294484 diff --git a/images/abla_label.png b/images/abla_label.png new file mode 100644 index 0000000..ac9ca35 --- /dev/null +++ b/images/abla_label.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8cdfd146e7990bb9d229fe81dd2757e52a23f70b37641832fbd8a3bb8ec77bc +size 190829 diff --git a/images/abla_label_maj8.png b/images/abla_label_maj8.png new file mode 100644 index 0000000..826952a --- /dev/null +++ b/images/abla_label_maj8.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d466796fa49fe7fb2eaa8cd1b7b4795f4dbb9fb22f51dfc275b68185de613b3d +size 191873 diff --git a/images/abla_model_size.png b/images/abla_model_size.png new file mode 100644 index 0000000..c91dff2 --- /dev/null +++ b/images/abla_model_size.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fc2cde73eb7b5b55d96f2b251d7e760b155988430adda4d9158ddd75e933e21 +size 403528 diff --git a/images/all_processbench.png b/images/all_processbench.png new file mode 100644 index 0000000..962c329 --- /dev/null +++ b/images/all_processbench.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:769cb2e39909dbbe1a3d690af02266e2e2398f2e056aae481e619278ad3526a5 +size 2320779 diff --git a/images/comparison.png b/images/comparison.png new file mode 100644 index 0000000..d124deb --- /dev/null +++ b/images/comparison.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc6c5d559f1040af123038b2bfcf3df8f30e0510fe622ca17453bb08fe9e0a07 +size 583033 diff --git a/images/critic.png b/images/critic.png new file mode 100644 index 0000000..9363e40 --- /dev/null +++ b/images/critic.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf1ac0c43ab8e7891bccbd6b3c48693b13ddfe8e6593e6bba7b5c05f9df7f0dd +size 257116 diff --git a/images/fig_head.png b/images/fig_head.png new file mode 100644 index 0000000..30725b4 --- /dev/null +++ b/images/fig_head.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2bbfdb54e6ab2e27c4f8154d7d1531cf4b80e2fc653fa808c64bfb0833ef521 +size 756428 diff --git a/images/framework2.png b/images/framework2.png new file mode 100644 index 0000000..49aac87 --- /dev/null +++ b/images/framework2.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e447e097bbe1b3d519bda528bfb530706d86db955c99da241d84e72b6ac8bddb +size 1321448 diff --git a/images/main_bon.png b/images/main_bon.png new file mode 100644 index 0000000..4140021 --- /dev/null +++ b/images/main_bon.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b875d69e4b5275de7df3d7487a07db30c3b0e24eedecf560608f93efaa03521 +size 1439701 diff --git a/images/main_processbench.png b/images/main_processbench.png new file mode 100644 index 0000000..f08df1c --- /dev/null +++ b/images/main_processbench.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4ac388abd774ffbfed595530832e659a922ec2fef89b334c69da7fe44b7d40c +size 1477040 diff --git a/model.safetensors b/model.safetensors new file mode 100644 index 0000000..f30bc45 --- /dev/null +++ b/model.safetensors @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5e2e5157b95cda69798857551acffddf03137e48a62ba81d41182ff1e85a601 +size 3554214752 diff --git a/special_tokens_map.json b/special_tokens_map.json new file mode 100644 index 0000000..6bd9d66 --- /dev/null +++ b/special_tokens_map.json @@ -0,0 +1,23 @@ +{ + "bos_token": { + "content": "<|begin▁of▁sentence|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false + }, + "eos_token": { + "content": "<|end▁of▁sentence|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false + }, + "pad_token": { + "content": "<|end_of_text|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false + } +} diff --git a/tokenizer.json b/tokenizer.json new file mode 100644 index 0000000..dc1953e --- /dev/null +++ b/tokenizer.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a69acec4e98f98777b2cf45d384dd34efb45f65a75ce02b13ffbb15f318ac1ff +size 11422970 diff --git a/tokenizer_config.json b/tokenizer_config.json new file mode 100644 index 0000000..cff6cea --- /dev/null +++ b/tokenizer_config.json @@ -0,0 +1,203 @@ +{ + "add_bos_token": true, + "add_eos_token": false, + "add_prefix_space": null, + "added_tokens_decoder": { + "151643": { + "content": "<|end▁of▁sentence|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151644": { + "content": "<|User|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151645": { + "content": "<|Assistant|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151646": { + "content": "<|begin▁of▁sentence|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151647": { + "content": "<|EOT|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151648": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151649": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151650": { + "content": "<|quad_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151651": { + "content": "<|quad_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151652": { + "content": "<|vision_start|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151653": { + "content": "<|vision_end|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151654": { + "content": "<|vision_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151655": { + "content": "<|image_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151656": { + "content": "<|video_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + }, + "151657": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151658": { + "content": "", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151659": { + "content": "<|fim_prefix|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151660": { + "content": "<|fim_middle|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151661": { + "content": "<|fim_suffix|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151662": { + "content": "<|fim_pad|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151663": { + "content": "<|repo_name|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151664": { + "content": "<|file_sep|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": false + }, + "151665": { + "content": "<|end_of_text|>", + "lstrip": false, + "normalized": false, + "rstrip": false, + "single_word": false, + "special": true + } + }, + "bos_token": "<|begin▁of▁sentence|>", + "chat_template": "{% if not add_generation_prompt is defined %}{% set add_generation_prompt = false %}{% endif %}{% set ns = namespace(is_first=false, is_tool=false, is_output_first=true, system_prompt='') %}{%- for message in messages %}{%- if message['role'] == 'system' %}{% set ns.system_prompt = message['content'] %}{%- endif %}{%- endfor %}{{bos_token}}{{ns.system_prompt}}{%- for message in messages %}{%- if message['role'] == 'user' %}{%- set ns.is_tool = false -%}{{'<|User|>' + message['content']}}{%- endif %}{%- if message['role'] == 'assistant' and message['content'] is none %}{%- set ns.is_tool = false -%}{%- for tool in message['tool_calls']%}{%- if not ns.is_first %}{{'<|Assistant|><|tool▁calls▁begin|><|tool▁call▁begin|>' + tool['type'] + '<|tool▁sep|>' + tool['function']['name'] + '\\n' + '```json' + '\\n' + tool['function']['arguments'] + '\\n' + '```' + '<|tool▁call▁end|>'}}{%- set ns.is_first = true -%}{%- else %}{{'\\n' + '<|tool▁call▁begin|>' + tool['type'] + '<|tool▁sep|>' + tool['function']['name'] + '\\n' + '```json' + '\\n' + tool['function']['arguments'] + '\\n' + '```' + '<|tool▁call▁end|>'}}{{'<|tool▁calls▁end|><|end▁of▁sentence|>'}}{%- endif %}{%- endfor %}{%- endif %}{%- if message['role'] == 'assistant' and message['content'] is not none %}{%- if ns.is_tool %}{{'<|tool▁outputs▁end|>' + message['content'] + '<|end▁of▁sentence|>'}}{%- set ns.is_tool = false -%}{%- else %}{% set content = message['content'] %}{% if '' in content %}{% set content = content.split('')[-1] %}{% endif %}{{'<|Assistant|>' + content + '<|end▁of▁sentence|>'}}{%- endif %}{%- endif %}{%- if message['role'] == 'tool' %}{%- set ns.is_tool = true -%}{%- if ns.is_output_first %}{{'<|tool▁outputs▁begin|><|tool▁output▁begin|>' + message['content'] + '<|tool▁output▁end|>'}}{%- set ns.is_output_first = false %}{%- else %}{{'\\n<|tool▁output▁begin|>' + message['content'] + '<|tool▁output▁end|>'}}{%- endif %}{%- endif %}{%- endfor -%}{% if ns.is_tool %}{{'<|tool▁outputs▁end|>'}}{% endif %}{% if add_generation_prompt and not ns.is_tool %}{{'<|Assistant|>'}}{% endif %}", + "clean_up_tokenization_spaces": false, + "eos_token": "<|end▁of▁sentence|>", + "extra_special_tokens": {}, + "legacy": true, + "model_max_length": 16384, + "pad_token": "<|end_of_text|>", + "sp_model_kwargs": {}, + "tokenizer_class": "LlamaTokenizer", + "unk_token": null, + "use_default_system_prompt": false +}