Upload folder using huggingface_hub
Browse files- README.md +55 -0
- config.json +45 -0
- generation_config.json +10 -0
- model.safetensors +3 -0
- special_tokens_map.json +48 -0
- tokenizer.json +0 -0
- tokenizer.model +3 -0
- tokenizer_config.json +196 -0
README.md
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
library_name: transformers
|
| 3 |
+
pipeline_tag: text-generation
|
| 4 |
+
inference: true
|
| 5 |
+
widget:
|
| 6 |
+
- text: Hello!
|
| 7 |
+
example_title: Hello world
|
| 8 |
+
group: Python
|
| 9 |
+
---
|
| 10 |
+
|
| 11 |
+
This model is for debugging. It is randomly initialized using the config from [ai21labs/AI21-Jamba-1.5-Large](https://huggingface.co/ai21labs/AI21-Jamba-1.5-Large) but with smaller size.
|
| 12 |
+
|
| 13 |
+
Codes:
|
| 14 |
+
```python
|
| 15 |
+
import os
|
| 16 |
+
|
| 17 |
+
import torch
|
| 18 |
+
import transformers
|
| 19 |
+
from transformers import (AutoConfig, AutoModelForCausalLM, AutoTokenizer,
|
| 20 |
+
GenerationConfig, pipeline, set_seed)
|
| 21 |
+
|
| 22 |
+
model_id = 'ai21labs/AI21-Jamba-1.5-Large'
|
| 23 |
+
save_path = '/tmp/yujiepan/jamba-1.5-tiny-random'
|
| 24 |
+
repo_id = 'yujiepan/jamba-1.5-tiny-random'
|
| 25 |
+
|
| 26 |
+
config = transformers.AutoConfig.from_pretrained(
|
| 27 |
+
model_id, trust_remote_code=True)
|
| 28 |
+
config.hidden_size = 8
|
| 29 |
+
config.intermediate_size = 16
|
| 30 |
+
config.num_attention_heads = 4
|
| 31 |
+
config.num_hidden_layers = 16
|
| 32 |
+
config.num_key_value_heads = 2
|
| 33 |
+
config.use_mamba_kernels = False
|
| 34 |
+
|
| 35 |
+
model = AutoModelForCausalLM.from_config(
|
| 36 |
+
config, torch_dtype=torch.bfloat16, attn_implementation="sdpa", trust_remote_code=True
|
| 37 |
+
)
|
| 38 |
+
|
| 39 |
+
set_seed(42)
|
| 40 |
+
with torch.no_grad():
|
| 41 |
+
for _, p in sorted(model.named_parameters()):
|
| 42 |
+
torch.nn.init.uniform_(p, -0.2, 0.2)
|
| 43 |
+
|
| 44 |
+
model.generation_config = GenerationConfig.from_pretrained(
|
| 45 |
+
model_id, trust_remote_code=True)
|
| 46 |
+
model.save_pretrained(save_path)
|
| 47 |
+
|
| 48 |
+
tokenizer = transformers.AutoTokenizer.from_pretrained(
|
| 49 |
+
model_id, trust_remote_code=True)
|
| 50 |
+
tokenizer.save_pretrained(save_path)
|
| 51 |
+
|
| 52 |
+
pipe = pipeline("text-generation", model=save_path, device="cuda",
|
| 53 |
+
trust_remote_code=True, max_new_tokens=20)
|
| 54 |
+
print(pipe("Hello World!"))
|
| 55 |
+
```
|
config.json
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"_name_or_path": "ai21labs/AI21-Jamba-1.5-Large",
|
| 3 |
+
"architectures": [
|
| 4 |
+
"JambaForCausalLM"
|
| 5 |
+
],
|
| 6 |
+
"attention_dropout": 0.0,
|
| 7 |
+
"attn_layer_offset": 4,
|
| 8 |
+
"attn_layer_period": 8,
|
| 9 |
+
"bos_token_id": 1,
|
| 10 |
+
"eos_token_id": [
|
| 11 |
+
2,
|
| 12 |
+
518
|
| 13 |
+
],
|
| 14 |
+
"expert_layer_offset": 1,
|
| 15 |
+
"expert_layer_period": 2,
|
| 16 |
+
"hidden_act": "silu",
|
| 17 |
+
"hidden_size": 8,
|
| 18 |
+
"initializer_range": 0.02,
|
| 19 |
+
"intermediate_size": 16,
|
| 20 |
+
"mamba_conv_bias": true,
|
| 21 |
+
"mamba_d_conv": 4,
|
| 22 |
+
"mamba_d_state": 16,
|
| 23 |
+
"mamba_dt_rank": 512,
|
| 24 |
+
"mamba_expand": 2,
|
| 25 |
+
"mamba_proj_bias": false,
|
| 26 |
+
"max_position_embeddings": 262144,
|
| 27 |
+
"model_type": "jamba",
|
| 28 |
+
"num_attention_heads": 4,
|
| 29 |
+
"num_experts": 16,
|
| 30 |
+
"num_experts_per_tok": 2,
|
| 31 |
+
"num_hidden_layers": 16,
|
| 32 |
+
"num_key_value_heads": 2,
|
| 33 |
+
"num_logits_to_keep": 1,
|
| 34 |
+
"output_router_logits": false,
|
| 35 |
+
"pad_token_id": 0,
|
| 36 |
+
"rms_norm_eps": 1e-06,
|
| 37 |
+
"router_aux_loss_coef": 0.001,
|
| 38 |
+
"sliding_window": null,
|
| 39 |
+
"tie_word_embeddings": false,
|
| 40 |
+
"torch_dtype": "bfloat16",
|
| 41 |
+
"transformers_version": "4.44.0",
|
| 42 |
+
"use_cache": true,
|
| 43 |
+
"use_mamba_kernels": false,
|
| 44 |
+
"vocab_size": 65536
|
| 45 |
+
}
|
generation_config.json
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"_from_model_config": true,
|
| 3 |
+
"bos_token_id": 1,
|
| 4 |
+
"eos_token_id": [
|
| 5 |
+
2,
|
| 6 |
+
518
|
| 7 |
+
],
|
| 8 |
+
"pad_token_id": 0,
|
| 9 |
+
"transformers_version": "4.44.0"
|
| 10 |
+
}
|
model.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:815479ef30d2ff7be83eb6faae7dafb98a611179d45c4b26c3ff2d9ade2cbea0
|
| 3 |
+
size 2793384
|
special_tokens_map.json
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"additional_special_tokens": [
|
| 3 |
+
"<|eom|>",
|
| 4 |
+
"<|bom|>",
|
| 5 |
+
"<|system|>",
|
| 6 |
+
"<|user|>",
|
| 7 |
+
"<|assistant|>",
|
| 8 |
+
"<|tool|>",
|
| 9 |
+
"<documents>",
|
| 10 |
+
"</documents>",
|
| 11 |
+
"<tool_definitions>",
|
| 12 |
+
"</tool_definitions>",
|
| 13 |
+
"<active_output_modes>",
|
| 14 |
+
"</active_output_modes>",
|
| 15 |
+
"<citations>",
|
| 16 |
+
"</citations>",
|
| 17 |
+
"<tool_calls>",
|
| 18 |
+
"</tool_calls>"
|
| 19 |
+
],
|
| 20 |
+
"bos_token": {
|
| 21 |
+
"content": "<|startoftext|>",
|
| 22 |
+
"lstrip": false,
|
| 23 |
+
"normalized": false,
|
| 24 |
+
"rstrip": false,
|
| 25 |
+
"single_word": false
|
| 26 |
+
},
|
| 27 |
+
"eos_token": {
|
| 28 |
+
"content": "<|endoftext|>",
|
| 29 |
+
"lstrip": false,
|
| 30 |
+
"normalized": false,
|
| 31 |
+
"rstrip": false,
|
| 32 |
+
"single_word": false
|
| 33 |
+
},
|
| 34 |
+
"pad_token": {
|
| 35 |
+
"content": "<|pad|>",
|
| 36 |
+
"lstrip": false,
|
| 37 |
+
"normalized": false,
|
| 38 |
+
"rstrip": false,
|
| 39 |
+
"single_word": false
|
| 40 |
+
},
|
| 41 |
+
"unk_token": {
|
| 42 |
+
"content": "<|unk|>",
|
| 43 |
+
"lstrip": false,
|
| 44 |
+
"normalized": false,
|
| 45 |
+
"rstrip": false,
|
| 46 |
+
"single_word": false
|
| 47 |
+
}
|
| 48 |
+
}
|
tokenizer.json
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
tokenizer.model
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:8b0df4fb43262c452ef37061951a06df4c63ca191d02a60ea08f14428af24376
|
| 3 |
+
size 1124714
|
tokenizer_config.json
ADDED
|
@@ -0,0 +1,196 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"add_bos_token": true,
|
| 3 |
+
"add_eos_token": false,
|
| 4 |
+
"add_prefix_space": null,
|
| 5 |
+
"added_tokens_decoder": {
|
| 6 |
+
"0": {
|
| 7 |
+
"content": "<|pad|>",
|
| 8 |
+
"lstrip": false,
|
| 9 |
+
"normalized": false,
|
| 10 |
+
"rstrip": false,
|
| 11 |
+
"single_word": false,
|
| 12 |
+
"special": true
|
| 13 |
+
},
|
| 14 |
+
"1": {
|
| 15 |
+
"content": "<|startoftext|>",
|
| 16 |
+
"lstrip": false,
|
| 17 |
+
"normalized": false,
|
| 18 |
+
"rstrip": false,
|
| 19 |
+
"single_word": false,
|
| 20 |
+
"special": true
|
| 21 |
+
},
|
| 22 |
+
"2": {
|
| 23 |
+
"content": "<|endoftext|>",
|
| 24 |
+
"lstrip": false,
|
| 25 |
+
"normalized": false,
|
| 26 |
+
"rstrip": false,
|
| 27 |
+
"single_word": false,
|
| 28 |
+
"special": true
|
| 29 |
+
},
|
| 30 |
+
"3": {
|
| 31 |
+
"content": "<|unk|>",
|
| 32 |
+
"lstrip": false,
|
| 33 |
+
"normalized": false,
|
| 34 |
+
"rstrip": false,
|
| 35 |
+
"single_word": false,
|
| 36 |
+
"special": true
|
| 37 |
+
},
|
| 38 |
+
"518": {
|
| 39 |
+
"content": "<|eom|>",
|
| 40 |
+
"lstrip": false,
|
| 41 |
+
"normalized": false,
|
| 42 |
+
"rstrip": false,
|
| 43 |
+
"single_word": false,
|
| 44 |
+
"special": true
|
| 45 |
+
},
|
| 46 |
+
"519": {
|
| 47 |
+
"content": "<|bom|>",
|
| 48 |
+
"lstrip": false,
|
| 49 |
+
"normalized": false,
|
| 50 |
+
"rstrip": false,
|
| 51 |
+
"single_word": false,
|
| 52 |
+
"special": true
|
| 53 |
+
},
|
| 54 |
+
"520": {
|
| 55 |
+
"content": "<|system|>",
|
| 56 |
+
"lstrip": false,
|
| 57 |
+
"normalized": false,
|
| 58 |
+
"rstrip": false,
|
| 59 |
+
"single_word": false,
|
| 60 |
+
"special": true
|
| 61 |
+
},
|
| 62 |
+
"521": {
|
| 63 |
+
"content": "<|user|>",
|
| 64 |
+
"lstrip": false,
|
| 65 |
+
"normalized": false,
|
| 66 |
+
"rstrip": false,
|
| 67 |
+
"single_word": false,
|
| 68 |
+
"special": true
|
| 69 |
+
},
|
| 70 |
+
"522": {
|
| 71 |
+
"content": "<|assistant|>",
|
| 72 |
+
"lstrip": false,
|
| 73 |
+
"normalized": false,
|
| 74 |
+
"rstrip": false,
|
| 75 |
+
"single_word": false,
|
| 76 |
+
"special": true
|
| 77 |
+
},
|
| 78 |
+
"523": {
|
| 79 |
+
"content": "<|tool|>",
|
| 80 |
+
"lstrip": false,
|
| 81 |
+
"normalized": false,
|
| 82 |
+
"rstrip": false,
|
| 83 |
+
"single_word": false,
|
| 84 |
+
"special": true
|
| 85 |
+
},
|
| 86 |
+
"524": {
|
| 87 |
+
"content": "<documents>",
|
| 88 |
+
"lstrip": false,
|
| 89 |
+
"normalized": false,
|
| 90 |
+
"rstrip": false,
|
| 91 |
+
"single_word": false,
|
| 92 |
+
"special": true
|
| 93 |
+
},
|
| 94 |
+
"525": {
|
| 95 |
+
"content": "</documents>",
|
| 96 |
+
"lstrip": false,
|
| 97 |
+
"normalized": false,
|
| 98 |
+
"rstrip": false,
|
| 99 |
+
"single_word": false,
|
| 100 |
+
"special": true
|
| 101 |
+
},
|
| 102 |
+
"526": {
|
| 103 |
+
"content": "<tool_definitions>",
|
| 104 |
+
"lstrip": false,
|
| 105 |
+
"normalized": false,
|
| 106 |
+
"rstrip": false,
|
| 107 |
+
"single_word": false,
|
| 108 |
+
"special": true
|
| 109 |
+
},
|
| 110 |
+
"527": {
|
| 111 |
+
"content": "</tool_definitions>",
|
| 112 |
+
"lstrip": false,
|
| 113 |
+
"normalized": false,
|
| 114 |
+
"rstrip": false,
|
| 115 |
+
"single_word": false,
|
| 116 |
+
"special": true
|
| 117 |
+
},
|
| 118 |
+
"528": {
|
| 119 |
+
"content": "<active_output_modes>",
|
| 120 |
+
"lstrip": false,
|
| 121 |
+
"normalized": false,
|
| 122 |
+
"rstrip": false,
|
| 123 |
+
"single_word": false,
|
| 124 |
+
"special": true
|
| 125 |
+
},
|
| 126 |
+
"529": {
|
| 127 |
+
"content": "</active_output_modes>",
|
| 128 |
+
"lstrip": false,
|
| 129 |
+
"normalized": false,
|
| 130 |
+
"rstrip": false,
|
| 131 |
+
"single_word": false,
|
| 132 |
+
"special": true
|
| 133 |
+
},
|
| 134 |
+
"530": {
|
| 135 |
+
"content": "<citations>",
|
| 136 |
+
"lstrip": false,
|
| 137 |
+
"normalized": false,
|
| 138 |
+
"rstrip": false,
|
| 139 |
+
"single_word": false,
|
| 140 |
+
"special": true
|
| 141 |
+
},
|
| 142 |
+
"531": {
|
| 143 |
+
"content": "</citations>",
|
| 144 |
+
"lstrip": false,
|
| 145 |
+
"normalized": false,
|
| 146 |
+
"rstrip": false,
|
| 147 |
+
"single_word": false,
|
| 148 |
+
"special": true
|
| 149 |
+
},
|
| 150 |
+
"532": {
|
| 151 |
+
"content": "<tool_calls>",
|
| 152 |
+
"lstrip": false,
|
| 153 |
+
"normalized": false,
|
| 154 |
+
"rstrip": false,
|
| 155 |
+
"single_word": false,
|
| 156 |
+
"special": true
|
| 157 |
+
},
|
| 158 |
+
"533": {
|
| 159 |
+
"content": "</tool_calls>",
|
| 160 |
+
"lstrip": false,
|
| 161 |
+
"normalized": false,
|
| 162 |
+
"rstrip": false,
|
| 163 |
+
"single_word": false,
|
| 164 |
+
"special": true
|
| 165 |
+
}
|
| 166 |
+
},
|
| 167 |
+
"additional_special_tokens": [
|
| 168 |
+
"<|eom|>",
|
| 169 |
+
"<|bom|>",
|
| 170 |
+
"<|system|>",
|
| 171 |
+
"<|user|>",
|
| 172 |
+
"<|assistant|>",
|
| 173 |
+
"<|tool|>",
|
| 174 |
+
"<documents>",
|
| 175 |
+
"</documents>",
|
| 176 |
+
"<tool_definitions>",
|
| 177 |
+
"</tool_definitions>",
|
| 178 |
+
"<active_output_modes>",
|
| 179 |
+
"</active_output_modes>",
|
| 180 |
+
"<citations>",
|
| 181 |
+
"</citations>",
|
| 182 |
+
"<tool_calls>",
|
| 183 |
+
"</tool_calls>"
|
| 184 |
+
],
|
| 185 |
+
"bos_token": "<|startoftext|>",
|
| 186 |
+
"chat_template": "{# Variables #}\n{% set ns = namespace(message_count=0, is_last_checked_defined=False) %}\n{##}\n{% set bom_str = bom_str or \"<|bom|>\" %}\n{% set eom_str = eom_str or \"<|eom|>\" %}\n{% set default_system_message = \"\" %}\n{##}\n{% set documents_prefix = \"<documents>\" %}\n{% set documents_suffix = \"</documents>\" %}\n{% set tool_definitions_prefix = \"<tool_definitions>\" %}\n{% set tool_definitions_suffix = \"</tool_definitions>\" %}\n{% set active_modes_prefix = \"<active_output_modes>\" %}\n{% set active_modes_suffix = \"</active_output_modes>\" %}\n{##}\n{% set tool_calls_prefix = \"<tool_calls>\" %}\n{% set tool_calls_suffix = \"</tool_calls>\" %}\n{% set citations_prefix = \"<citations>\" %}\n{% set citations_suffix = \"</citations>\" %}\n{##}\n{% if add_generation_prompt is not defined %}\n {% set add_generation_prompt = True %}\n{% endif %}\n{% set role_to_predict = role_to_predict or \"assistant\" %}\n{% if messages|length > 0 and messages[0].role == \"system\" %}\n {% set system_message = messages[0].content %}\n {% set loop_messages = messages[1:] %}\n{% else %}\n {% set system_message = default_system_message %}\n {% set loop_messages = messages %}\n{% endif %}\n{##}\n{##}\n{# Macros #}\n{% macro handle_tool_definitions(tools) %}\n {{- tool_definitions_prefix -}}\n {{- \"\\n# Tools\" -}}\n {{- \"\\n\\n## Functions\" -}}\n {% for tool in tools %}\n {% set _ = is_param_set(tool, field=\"type\") %}\n {% set is_tool_type_set = ns.is_last_checked_defined %}\n {% if is_tool_type_set %}\n {% if tool.type == \"function\" %}\n {% set tool = tool.function %}\n {% else %}\n {{ raise_exception(\"Currently, the only supported tool type is `function`\") }}\n {% endif %}\n {% endif %}\n {{- \"\\n\\n\" + (tool|tojson(indent=2)) -}}\n {% endfor %}\n {{- \"\\n\" + tool_definitions_suffix -}}\n{% endmacro %}\n{##}\n{% macro handle_first_system_message(system_message, tools) %}\n {{- bom_str + handle_role(\"system\") -}}\n {% set _ = is_param_set(system_message) %}\n {% set is_system_message_set = ns.is_last_checked_defined %}\n {% if is_system_message_set %}\n {{- system_message -}}\n {% endif %}\n {% set _ = is_param_set(tools, is_list=True) %}\n {% set is_tools_set = ns.is_last_checked_defined %}\n {% if is_tools_set %}\n {% if system_message %}\n {{- \"\\n\\n\" -}}\n {% endif %}\n {{- handle_tool_definitions(tools) -}}\n {% endif %}\n {% set ns.message_count = ns.message_count + 1 %}\n{% endmacro %}\n{##}\n{% macro handle_tool_calls(tool_calls) %}\n {{- tool_calls_prefix + \"[\\n\" -}}\n {% for tool_call in tool_calls %}\n {% set _ = is_param_set(tool_call, field=\"function\") %}\n {% set is_tool_call_function_set = ns.is_last_checked_defined %}\n {% if is_tool_call_function_set %}\n {%- set tool_call = tool_call.function %}\n {%- endif %}\n {% set arguments = tool_call.arguments %}\n {% if arguments is not string %}\n {%- set arguments = arguments|tojson -%}\n {%- endif %}\n {{ \"{\\\"name\\\": \\\"\" + tool_call.name + \"\\\", \\\"arguments\\\": \" + arguments + \"}\" -}}\n {% if not loop.last %}\n {{- \",\" }}\n {% endif %}\n {% endfor %}\n {{- \"\\n]\" + tool_calls_suffix -}}\n{% endmacro %}\n{##}\n{% macro handle_documents(documents) %}\n {{- documents_prefix -}}\n {{- \"\\n# Documents\" -}}\n {{- \"\\n\\nYou can use the following documents for reference:\" -}}\n {% for doc in documents %}\n {{- \"\\n\\n## Document ID: \" + loop.index0|string -}}\n {% set _ = is_param_set(doc, field=\"title\") %}\n {% set is_doc_title_set = ns.is_last_checked_defined %}\n {% if is_doc_title_set %}\n {{- \"\\nTitle: \" + doc.title -}}\n {% endif %}\n {% for key, value in doc.items() %}\n {% if key not in [\"title\", \"text\"] %}\n {{- \"\\n\" + key|title + \": \" + value|string -}}\n {% endif %}\n {% endfor %}\n {{- \"\\nText: \" + doc.text -}}\n {% endfor %}\n {{- \"\\n\" + documents_suffix -}}\n{% endmacro %}\n{##}\n{% macro handle_knobs(knobs) %}\n {{- active_modes_prefix -}}\n {{- \"\\n# Active Modes\" -}}\n {{ \"\\n\\nThe following modes configure the format or style of your responses. You should adhere to all currently\" -}}\n {{ \" active modes simultaneously.\" -}}\n {% if knobs.citation_mode == \"fast\" %}\n {{- \"\\n\\n## Citation Mode\" -}}\n {{- \"\\n\\nProvide a list of references only for the documents you base your response on. Format your response\" -}}\n {{ \" with the original answer followed by a citation section. Use this template:\" -}}\n {{ \" `{answer}\" + citations_prefix + \"DOCUMENT_IDS\" + citations_suffix + \"`, where DOCUMENT_IDS are the relevant document numbers\" -}}\n {{ \" (e.g. [2, 5, 9]), or [] if the answer cannot be supported by the provided documents.\" -}}\n {% endif %}\n {% if knobs.response_format == \"json_object\" %}\n {{- \"\\n\\n## JSON Mode\" -}}\n {{ \"\\n\\nProvide your response in JSON format. Adhere strictly to any schema given by the user.\" -}}\n {{ \" If an appropriate JSON format exists, use it without modification.\" -}}\n {% endif %}\n {{- \"\\n\" + active_modes_suffix -}}\n{% endmacro %}\n{##}\n{% macro get_last_user_index(messages) %}\n {% set ns.last_user_index = 0 %}\n {% for message in messages %}\n {% if message.role == 'user' %}\n {% set ns.last_user_index = loop.index0 %}\n {% endif %}\n {% endfor %}\n {{- ns.last_user_index -}}\n{% endmacro %}\n{##}\n{% macro handle_last_system_message(documents, knobs, use_documents, use_knobs) %}\n {{- bom_str + handle_role(\"system\") -}}\n {% set macros_to_call = [] %}\n {% set params_for_macros = [] %}\n {% if use_documents %}\n {% set macros_to_call = macros_to_call + [handle_documents] %}\n {% set params_for_macros = params_for_macros + [[documents]] %}\n {% endif %}\n {% if use_knobs %}\n {% set macros_to_call = macros_to_call + [handle_knobs] %}\n {% set params_for_macros = params_for_macros + [[knobs]] %}\n {% endif %}\n {% for i in range(macros_to_call|length) %}\n {% if i > 0 %}\n {{- \"\\n\\n\" -}}\n {% endif %}\n {{- macros_to_call[i](*params_for_macros[i]) -}}\n {% endfor %}\n {% set ns.message_count = ns.message_count + 1 %}\n{% endmacro %}\n{##}\n{% macro handle_role(role, add_space=True) %}\n {{- \"<|\" + role + \"|>\" -}}\n {% if add_space %}\n {{- \" \" -}}\n {% endif %}\n{% endmacro %}\n{##}\n{% macro is_param_set(param, field=none, is_list=False) %}\n {% if field is not none %}\n {% if field in param %}\n {% set param = param[field] %}\n {% else %}\n {% set param = none %}\n {% endif %}\n {% endif %}\n {% set is_defined = param is defined and param is not none %}\n {% if is_list %}\n {% set ns.is_last_checked_defined = is_defined and param|length > 0 %}\n {% else %}\n {% set ns.is_last_checked_defined = is_defined %}\n {% endif %}\n{% endmacro %}\n{##}\n{##}\n{# Template #}\n{{- \"<|startoftext|>\" -}}\n{% set _ = is_param_set(system_message) %}\n{% set is_system_message_set = ns.is_last_checked_defined %}\n{% set _ = is_param_set(tools, is_list=True) %}\n{% set is_tools_set = ns.is_last_checked_defined %}\n{% set has_system_message = (is_system_message_set or is_tools_set) %}\n{% if has_system_message %}\n {{- handle_first_system_message(system_message, tools) -}}\n{% endif %}\n{% set last_user_index = get_last_user_index(loop_messages)|int %}\n{% for message in loop_messages %}\n {% if loop.index0 == last_user_index %}\n {% set _ = is_param_set(documents, is_list=True) %}\n {% set use_documents = ns.is_last_checked_defined %}\n {% set _ = is_param_set(knobs) %}\n {% set use_knobs = ns.is_last_checked_defined and knobs.is_set %}\n {% set add_last_system_message = use_documents or use_knobs %}\n {% if add_last_system_message %}\n {% if ns.message_count > 0 %}\n {{- eom_str -}}\n {% endif %}\n {{- handle_last_system_message(documents, knobs, use_documents, use_knobs) -}}\n {% endif %}\n {% endif %}\n {% set role = message.role %}\n {% set _ = is_param_set(message, field=\"name\") %}\n {% set is_message_name_set = ns.is_last_checked_defined %}\n {% if is_message_name_set %}\n {% set message_prefix = handle_role(role) + \"(\" + message.name + \")\" %}\n {% else %}\n {% set message_prefix = handle_role(role) %}\n {% endif %}\n {% set content = (message.content or \"\") %}\n {% if content is not string %}\n {% set content = content|tojson %}\n {% endif %}\n {% if ns.message_count > 0 %}\n {{- eom_str -}}\n {% endif %}\n {{- bom_str + message_prefix + content -}}\n {% set _ = is_param_set(message, field=\"tool_calls\", is_list=True) %}\n {% set is_tool_calls_set = ns.is_last_checked_defined %}\n {% if role == \"assistant\" and is_tool_calls_set %}\n {{- handle_tool_calls(message.tool_calls) -}}\n {% endif %}\n {% set _ = is_param_set(message, field=\"citations\", is_list=True) %}\n {% set is_citations_set = ns.is_last_checked_defined %}\n {% if role == \"assistant\" and is_citations_set %}\n {{- citations_prefix + message.citations|map(attribute=\"document_id\")|list|string + citations_suffix -}}\n {% endif %}\n {% set ns.message_count = ns.message_count + 1 %}\n{% endfor %}\n{% if add_generation_prompt %}\n {% if ns.message_count > 0 %}\n {{- eom_str -}}\n {% endif %}\n {{- bom_str + handle_role(role_to_predict, add_space=False) -}}\n {% set _ = is_param_set(generation_preamble) %}\n {% set is_generation_preamble_set = ns.is_last_checked_defined %}\n {% if is_generation_preamble_set and generation_preamble.strip() != \"\" %}\n {{- \" \" + generation_preamble -}}\n {% endif %}\n {% set ns.message_count = ns.message_count + 1 %}\n{% else %}\n {% if ns.message_count > 0 %}\n {{- eom_str -}}\n {% endif %}\n{% endif %}\n",
|
| 187 |
+
"clean_up_tokenization_spaces": false,
|
| 188 |
+
"eos_token": "<|endoftext|>",
|
| 189 |
+
"legacy": true,
|
| 190 |
+
"model_max_length": 1000000000000000019884624838656,
|
| 191 |
+
"pad_token": "<|pad|>",
|
| 192 |
+
"spaces_between_special_tokens": false,
|
| 193 |
+
"tokenizer_class": "LlamaTokenizer",
|
| 194 |
+
"unk_token": "<|unk|>",
|
| 195 |
+
"use_default_system_prompt": false
|
| 196 |
+
}
|