arnocandel
commited on
Commit
•
07ecbc4
1
Parent(s):
81f8788
Add h2ogpt-oig-oasst1-falcon-40b
Browse files- config.json +39 -0
- generation_config.json +6 -0
- h2oai_pipeline.py +774 -0
- pytorch_model-00001-of-00018.bin +3 -0
- pytorch_model-00002-of-00018.bin +3 -0
- pytorch_model-00003-of-00018.bin +3 -0
- pytorch_model-00004-of-00018.bin +3 -0
- pytorch_model-00005-of-00018.bin +3 -0
- pytorch_model-00006-of-00018.bin +3 -0
- pytorch_model-00007-of-00018.bin +3 -0
- pytorch_model-00008-of-00018.bin +3 -0
- pytorch_model-00009-of-00018.bin +3 -0
- pytorch_model-00010-of-00018.bin +3 -0
- pytorch_model-00011-of-00018.bin +3 -0
- pytorch_model-00012-of-00018.bin +3 -0
- pytorch_model-00013-of-00018.bin +3 -0
- pytorch_model-00014-of-00018.bin +3 -0
- pytorch_model-00015-of-00018.bin +3 -0
- pytorch_model-00016-of-00018.bin +3 -0
- pytorch_model-00017-of-00018.bin +3 -0
- pytorch_model-00018-of-00018.bin +3 -0
- pytorch_model.bin.index.json +491 -0
- special_tokens_map.json +16 -0
- tokenizer.json +0 -0
- tokenizer_config.json +7 -0
config.json
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"_name_or_path": "tiiuae/falcon-40b",
|
3 |
+
"alibi": false,
|
4 |
+
"apply_residual_connection_post_layernorm": false,
|
5 |
+
"architectures": [
|
6 |
+
"RWForCausalLM"
|
7 |
+
],
|
8 |
+
"attention_dropout": 0.0,
|
9 |
+
"auto_map": {
|
10 |
+
"AutoConfig": "tiiuae/falcon-40b--configuration_RW.RWConfig",
|
11 |
+
"AutoModel": "tiiuae/falcon-40b--modelling_RW.RWModel",
|
12 |
+
"AutoModelForCausalLM": "tiiuae/falcon-40b--modelling_RW.RWForCausalLM",
|
13 |
+
"AutoModelForQuestionAnswering": "tiiuae/falcon-40b--modelling_RW.RWForQuestionAnswering",
|
14 |
+
"AutoModelForSequenceClassification": "tiiuae/falcon-40b--modelling_RW.RWForSequenceClassification",
|
15 |
+
"AutoModelForTokenClassification": "tiiuae/falcon-40b--modelling_RW.RWForTokenClassification"
|
16 |
+
},
|
17 |
+
"bias": false,
|
18 |
+
"bos_token_id": 11,
|
19 |
+
"custom_pipelines": {
|
20 |
+
"text-generation": {
|
21 |
+
"impl": "h2oai_pipeline.H2OTextGenerationPipeline",
|
22 |
+
"pt": "AutoModelForCausalLM"
|
23 |
+
}
|
24 |
+
},
|
25 |
+
"eos_token_id": 11,
|
26 |
+
"hidden_dropout": 0.0,
|
27 |
+
"hidden_size": 8192,
|
28 |
+
"initializer_range": 0.02,
|
29 |
+
"layer_norm_epsilon": 1e-05,
|
30 |
+
"model_type": "RefinedWeb",
|
31 |
+
"n_head": 128,
|
32 |
+
"n_head_kv": 8,
|
33 |
+
"n_layer": 60,
|
34 |
+
"parallel_attn": true,
|
35 |
+
"torch_dtype": "float16",
|
36 |
+
"transformers_version": "4.30.0.dev0",
|
37 |
+
"use_cache": true,
|
38 |
+
"vocab_size": 65024
|
39 |
+
}
|
generation_config.json
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"_from_model_config": true,
|
3 |
+
"bos_token_id": 1,
|
4 |
+
"eos_token_id": 2,
|
5 |
+
"transformers_version": "4.30.0.dev0"
|
6 |
+
}
|
h2oai_pipeline.py
ADDED
@@ -0,0 +1,774 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from transformers import TextGenerationPipeline
|
2 |
+
from transformers.pipelines.text_generation import ReturnType
|
3 |
+
|
4 |
+
|
5 |
+
|
6 |
+
|
7 |
+
|
8 |
+
class H2OTextGenerationPipeline(TextGenerationPipeline):
|
9 |
+
def __init__(self, *args, debug=False, chat=False, stream_output=False,
|
10 |
+
sanitize_bot_response=True,
|
11 |
+
use_prompter=True, prompter=None, prompt_type=None,
|
12 |
+
max_input_tokens=2048 - 256, **kwargs):
|
13 |
+
"""
|
14 |
+
HF-like pipeline, but handle instruction prompting and stopping (for some models)
|
15 |
+
:param args:
|
16 |
+
:param debug:
|
17 |
+
:param chat:
|
18 |
+
:param stream_output:
|
19 |
+
:param sanitize_bot_response:
|
20 |
+
:param use_prompter: Whether to use prompter. If pass prompt_type, will make prompter
|
21 |
+
:param prompter: prompter, can pass if have already
|
22 |
+
:param prompt_type: prompt_type, e.g. human_bot. See prompt_type to model mapping in from prompter.py.
|
23 |
+
If use_prompter, then will make prompter and use it.
|
24 |
+
:param max_input_tokens:
|
25 |
+
:param kwargs:
|
26 |
+
"""
|
27 |
+
super().__init__(*args, **kwargs)
|
28 |
+
self.prompt_text = None
|
29 |
+
self.use_prompter = use_prompter
|
30 |
+
self.prompt_type = prompt_type
|
31 |
+
self.prompter = prompter
|
32 |
+
if self.use_prompter:
|
33 |
+
if self.prompter is not None:
|
34 |
+
assert self.prompter.prompt_type is not None
|
35 |
+
else:
|
36 |
+
self.prompter = Prompter(self.prompt_type, debug=debug, chat=chat, stream_output=stream_output)
|
37 |
+
self.human = self.prompter.humanstr
|
38 |
+
self.bot = self.prompter.botstr
|
39 |
+
self.can_stop = True
|
40 |
+
else:
|
41 |
+
self.prompter = None
|
42 |
+
self.human = None
|
43 |
+
self.bot = None
|
44 |
+
self.can_stop = False
|
45 |
+
self.sanitize_bot_response = sanitize_bot_response
|
46 |
+
self.max_input_tokens = max_input_tokens # not for generate, so ok that not kwargs
|
47 |
+
|
48 |
+
def preprocess(self, prompt_text, prefix="", handle_long_generation=None, **generate_kwargs):
|
49 |
+
data_point = dict(context='', instruction=prompt_text, input='')
|
50 |
+
if self.prompter is not None:
|
51 |
+
prompt_text = self.prompter.generate_prompt(data_point)
|
52 |
+
self.prompt_text = prompt_text
|
53 |
+
if handle_long_generation is None:
|
54 |
+
# forces truncation of inputs to avoid critical failure
|
55 |
+
handle_long_generation = 'hole'
|
56 |
+
return super().preprocess(prompt_text, prefix=prefix, handle_long_generation=handle_long_generation,
|
57 |
+
**generate_kwargs)
|
58 |
+
|
59 |
+
def postprocess(self, model_outputs, return_type=ReturnType.FULL_TEXT, clean_up_tokenization_spaces=True):
|
60 |
+
records = super().postprocess(model_outputs, return_type=return_type,
|
61 |
+
clean_up_tokenization_spaces=clean_up_tokenization_spaces)
|
62 |
+
for rec in records:
|
63 |
+
if self.use_prompter:
|
64 |
+
outputs = rec['generated_text']
|
65 |
+
outputs = self.prompter.get_response(outputs, prompt=self.prompt_text,
|
66 |
+
sanitize_bot_response=self.sanitize_bot_response)
|
67 |
+
elif self.bot and self.human:
|
68 |
+
outputs = rec['generated_text'].split(self.bot)[1].strip().split(self.human)[0].strip()
|
69 |
+
else:
|
70 |
+
outputs = rec['generated_text']
|
71 |
+
rec['generated_text'] = outputs
|
72 |
+
return records
|
73 |
+
|
74 |
+
def _forward(self, model_inputs, **generate_kwargs):
|
75 |
+
if self.can_stop:
|
76 |
+
stopping_criteria = get_stopping(self.prompt_type, self.tokenizer, self.device, human=self.human,
|
77 |
+
bot=self.bot)
|
78 |
+
generate_kwargs['stopping_criteria'] = stopping_criteria
|
79 |
+
# return super()._forward(model_inputs, **generate_kwargs)
|
80 |
+
return self.__forward(model_inputs, **generate_kwargs)
|
81 |
+
|
82 |
+
# FIXME: Copy-paste of original _forward, but removed copy.deepcopy()
|
83 |
+
# FIXME: https://github.com/h2oai/h2ogpt/issues/172
|
84 |
+
def __forward(self, model_inputs, **generate_kwargs):
|
85 |
+
input_ids = model_inputs["input_ids"]
|
86 |
+
attention_mask = model_inputs.get("attention_mask", None)
|
87 |
+
# Allow empty prompts
|
88 |
+
if input_ids.shape[1] == 0:
|
89 |
+
input_ids = None
|
90 |
+
attention_mask = None
|
91 |
+
in_b = 1
|
92 |
+
else:
|
93 |
+
in_b = input_ids.shape[0]
|
94 |
+
prompt_text = model_inputs.pop("prompt_text")
|
95 |
+
|
96 |
+
## If there is a prefix, we may need to adjust the generation length. Do so without permanently modifying
|
97 |
+
## generate_kwargs, as some of the parameterization may come from the initialization of the pipeline.
|
98 |
+
# generate_kwargs = copy.deepcopy(generate_kwargs)
|
99 |
+
prefix_length = generate_kwargs.pop("prefix_length", 0)
|
100 |
+
if prefix_length > 0:
|
101 |
+
has_max_new_tokens = "max_new_tokens" in generate_kwargs or (
|
102 |
+
"generation_config" in generate_kwargs
|
103 |
+
and generate_kwargs["generation_config"].max_new_tokens is not None
|
104 |
+
)
|
105 |
+
if not has_max_new_tokens:
|
106 |
+
generate_kwargs["max_length"] = generate_kwargs.get("max_length") or self.model.config.max_length
|
107 |
+
generate_kwargs["max_length"] += prefix_length
|
108 |
+
has_min_new_tokens = "min_new_tokens" in generate_kwargs or (
|
109 |
+
"generation_config" in generate_kwargs
|
110 |
+
and generate_kwargs["generation_config"].min_new_tokens is not None
|
111 |
+
)
|
112 |
+
if not has_min_new_tokens and "min_length" in generate_kwargs:
|
113 |
+
generate_kwargs["min_length"] += prefix_length
|
114 |
+
|
115 |
+
# BS x SL
|
116 |
+
generated_sequence = self.model.generate(input_ids=input_ids, attention_mask=attention_mask, **generate_kwargs)
|
117 |
+
out_b = generated_sequence.shape[0]
|
118 |
+
if self.framework == "pt":
|
119 |
+
generated_sequence = generated_sequence.reshape(in_b, out_b // in_b, *generated_sequence.shape[1:])
|
120 |
+
elif self.framework == "tf":
|
121 |
+
from transformers import is_tf_available
|
122 |
+
if is_tf_available():
|
123 |
+
import tensorflow as tf
|
124 |
+
generated_sequence = tf.reshape(generated_sequence,
|
125 |
+
(in_b, out_b // in_b, *generated_sequence.shape[1:]))
|
126 |
+
else:
|
127 |
+
raise ValueError("TF not avaialble.")
|
128 |
+
return {"generated_sequence": generated_sequence, "input_ids": input_ids, "prompt_text": prompt_text}
|
129 |
+
import torch
|
130 |
+
from transformers import StoppingCriteria, StoppingCriteriaList
|
131 |
+
|
132 |
+
|
133 |
+
|
134 |
+
class StoppingCriteriaSub(StoppingCriteria):
|
135 |
+
|
136 |
+
def __init__(self, stops=[], encounters=[], device="cuda"):
|
137 |
+
super().__init__()
|
138 |
+
assert len(stops) % len(encounters) == 0, "Number of stops and encounters must match"
|
139 |
+
self.encounters = encounters
|
140 |
+
self.stops = [stop.to(device) for stop in stops]
|
141 |
+
self.num_stops = [0] * len(stops)
|
142 |
+
|
143 |
+
def __call__(self, input_ids: torch.LongTensor, scores: torch.FloatTensor, **kwargs) -> bool:
|
144 |
+
for stopi, stop in enumerate(self.stops):
|
145 |
+
if torch.all((stop == input_ids[0][-len(stop):])).item():
|
146 |
+
self.num_stops[stopi] += 1
|
147 |
+
if self.num_stops[stopi] >= self.encounters[stopi % len(self.encounters)]:
|
148 |
+
# print("Stopped", flush=True)
|
149 |
+
return True
|
150 |
+
# print("Tokens: %s" % input_ids[0].cpu().numpy(), flush=True)
|
151 |
+
# print("Stop Tokens: %s" % [x.cpu().numpy() for x in self.stops], flush=True)
|
152 |
+
return False
|
153 |
+
|
154 |
+
|
155 |
+
def get_stopping(prompt_type, tokenizer, device, human='<human>:', bot="<bot>:"):
|
156 |
+
if prompt_type in [PromptType.human_bot.name, PromptType.instruct_vicuna.name, PromptType.instruct_with_end.name]:
|
157 |
+
if prompt_type == PromptType.human_bot.name:
|
158 |
+
# encounters = [prompt.count(human) + 1, prompt.count(bot) + 1]
|
159 |
+
# stopping only starts once output is beyond prompt
|
160 |
+
# 1 human is enough to trigger, but need 2 bots, because very first view back will be bot we added
|
161 |
+
stop_words = [human, bot, '\n' + human, '\n' + bot]
|
162 |
+
encounters = [1, 2]
|
163 |
+
elif prompt_type == PromptType.instruct_vicuna.name:
|
164 |
+
# even below is not enough, generic strings and many ways to encode
|
165 |
+
stop_words = [
|
166 |
+
'### Human:',
|
167 |
+
"""
|
168 |
+
### Human:""",
|
169 |
+
"""
|
170 |
+
### Human:
|
171 |
+
""",
|
172 |
+
'### Assistant:',
|
173 |
+
"""
|
174 |
+
### Assistant:""",
|
175 |
+
"""
|
176 |
+
### Assistant:
|
177 |
+
""",
|
178 |
+
]
|
179 |
+
encounters = [1, 2]
|
180 |
+
else:
|
181 |
+
# some instruct prompts have this as end, doesn't hurt to stop on it since not common otherwise
|
182 |
+
stop_words = ['### End']
|
183 |
+
encounters = [1]
|
184 |
+
stop_words_ids = [
|
185 |
+
tokenizer(stop_word, return_tensors='pt')['input_ids'].squeeze() for stop_word in stop_words]
|
186 |
+
# handle single token case
|
187 |
+
stop_words_ids = [x if len(x.shape) > 0 else torch.tensor([x]) for x in stop_words_ids]
|
188 |
+
stop_words_ids = [x for x in stop_words_ids if x.shape[0] > 0]
|
189 |
+
# avoid padding in front of tokens
|
190 |
+
if tokenizer._pad_token: # use hidden variable to avoid annoying properly logger bug
|
191 |
+
stop_words_ids = [x[1:] if x[0] == tokenizer.pad_token_id and len(x) > 1 else x for x in stop_words_ids]
|
192 |
+
# handle fake \n added
|
193 |
+
stop_words_ids = [x[1:] if y[0] == '\n' else x for x, y in zip(stop_words_ids, stop_words)]
|
194 |
+
# build stopper
|
195 |
+
stopping_criteria = StoppingCriteriaList(
|
196 |
+
[StoppingCriteriaSub(stops=stop_words_ids, encounters=encounters, device=device)])
|
197 |
+
else:
|
198 |
+
stopping_criteria = StoppingCriteriaList()
|
199 |
+
return stopping_criteria
|
200 |
+
import time
|
201 |
+
from enum import Enum
|
202 |
+
|
203 |
+
non_hf_types = ['gpt4all_llama', 'llama', 'gptj']
|
204 |
+
|
205 |
+
|
206 |
+
class PromptType(Enum):
|
207 |
+
plain = 0
|
208 |
+
instruct = 1
|
209 |
+
quality = 2
|
210 |
+
human_bot = 3
|
211 |
+
dai_faq = 4
|
212 |
+
summarize = 5
|
213 |
+
simple_instruct = 6
|
214 |
+
instruct_vicuna = 7
|
215 |
+
instruct_with_end = 8
|
216 |
+
human_bot_orig = 9
|
217 |
+
prompt_answer = 10
|
218 |
+
open_assistant = 11
|
219 |
+
wizard_lm = 12
|
220 |
+
wizard_mega = 13
|
221 |
+
instruct_vicuna2 = 14
|
222 |
+
instruct_vicuna3 = 15
|
223 |
+
wizard2 = 16
|
224 |
+
wizard3 = 17
|
225 |
+
|
226 |
+
|
227 |
+
prompt_type_to_model_name = {
|
228 |
+
'plain': [
|
229 |
+
'EleutherAI/gpt-j-6B',
|
230 |
+
'EleutherAI/pythia-6.9b',
|
231 |
+
'EleutherAI/pythia-12b',
|
232 |
+
'EleutherAI/pythia-12b-deduped',
|
233 |
+
'EleutherAI/gpt-neox-20b',
|
234 |
+
'openlm-research/open_llama_7b_700bt_preview',
|
235 |
+
'decapoda-research/llama-7b-hf',
|
236 |
+
'decapoda-research/llama-13b-hf',
|
237 |
+
'decapoda-research/llama-30b-hf',
|
238 |
+
'decapoda-research/llama-65b-hf',
|
239 |
+
'facebook/mbart-large-50-many-to-many-mmt',
|
240 |
+
'philschmid/bart-large-cnn-samsum',
|
241 |
+
'philschmid/flan-t5-base-samsum',
|
242 |
+
'gpt2',
|
243 |
+
'distilgpt2',
|
244 |
+
'mosaicml/mpt-7b-storywriter',
|
245 |
+
'mosaicml/mpt-7b-instruct', # internal code handles instruct
|
246 |
+
'mosaicml/mpt-7b-chat', # NC, internal code handles instruct
|
247 |
+
'gptj', # internally handles prompting
|
248 |
+
'llama', # plain, or need to choose prompt_type for given TheBloke model
|
249 |
+
'gpt4all_llama', # internally handles prompting
|
250 |
+
],
|
251 |
+
'prompt_answer': [
|
252 |
+
'h2oai/h2ogpt-gm-oasst1-en-1024-20b',
|
253 |
+
'h2oai/h2ogpt-gm-oasst1-en-1024-12b',
|
254 |
+
'h2oai/h2ogpt-gm-oasst1-multilang-1024-20b',
|
255 |
+
'h2oai/h2ogpt-gm-oasst1-en-2048-open-llama-7b-preview-300bt',
|
256 |
+
'h2oai/h2ogpt-gm-oasst1-en-2048-open-llama-7b-preview-300bt-v2',
|
257 |
+
'h2oai/h2ogpt-gm-oasst1-en-2048-open-llama-7b-preview-700bt',
|
258 |
+
],
|
259 |
+
'instruct': [],
|
260 |
+
'instruct_with_end': ['databricks/dolly-v2-12b'],
|
261 |
+
'quality': [],
|
262 |
+
'human_bot': [
|
263 |
+
'h2oai/h2ogpt-oasst1-512-12b',
|
264 |
+
'h2oai/h2ogpt-oasst1-512-20b',
|
265 |
+
'h2oai/h2ogpt-oig-oasst1-256-6_9b',
|
266 |
+
'h2oai/h2ogpt-oig-oasst1-512-6_9b',
|
267 |
+
'h2oai/h2ogpt-oig-oasst1-256-6.9b', # legacy
|
268 |
+
'h2oai/h2ogpt-oig-oasst1-512-6.9b', # legacy
|
269 |
+
'h2oai/h2ogpt-research-oasst1-512-30b',
|
270 |
+
'h2oai/h2ogpt-oasst1-falcon-40b',
|
271 |
+
],
|
272 |
+
'dai_faq': [],
|
273 |
+
'summarize': [],
|
274 |
+
'simple_instruct': ['t5-small', 't5-large', 'google/flan-t5', 'google/flan-t5-xxl', 'google/flan-ul2'],
|
275 |
+
'instruct_vicuna': ['AlekseyKorshuk/vicuna-7b', 'TheBloke/stable-vicuna-13B-HF', 'junelee/wizard-vicuna-13b'],
|
276 |
+
'human_bot_orig': ['togethercomputer/GPT-NeoXT-Chat-Base-20B'],
|
277 |
+
"open_assistant": ['OpenAssistant/oasst-sft-7-llama-30b-xor', 'oasst-sft-7-llama-30b'],
|
278 |
+
"wizard_lm": ['ehartford/WizardLM-7B-Uncensored', 'ehartford/WizardLM-13B-Uncensored'],
|
279 |
+
"wizard_mega": ['openaccess-ai-collective/wizard-mega-13b'],
|
280 |
+
}
|
281 |
+
|
282 |
+
inv_prompt_type_to_model_name = {v.strip(): k for k, l in prompt_type_to_model_name.items() for v in l}
|
283 |
+
inv_prompt_type_to_model_lower = {v.strip().lower(): k for k, l in prompt_type_to_model_name.items() for v in l}
|
284 |
+
|
285 |
+
prompt_types_strings = []
|
286 |
+
for p in PromptType:
|
287 |
+
prompt_types_strings.extend([p.name])
|
288 |
+
|
289 |
+
prompt_types = []
|
290 |
+
for p in PromptType:
|
291 |
+
prompt_types.extend([p.name, p.value, str(p.value)])
|
292 |
+
|
293 |
+
|
294 |
+
def get_prompt(prompt_type, chat, context, reduced):
|
295 |
+
if prompt_type in [PromptType.plain.value, str(PromptType.plain.value),
|
296 |
+
PromptType.plain.name]:
|
297 |
+
promptA = promptB = PreInstruct = PreInput = PreResponse = ''
|
298 |
+
terminate_response = []
|
299 |
+
chat_sep = ''
|
300 |
+
humanstr = ''
|
301 |
+
botstr = ''
|
302 |
+
elif prompt_type == 'simple_instruct':
|
303 |
+
promptA = promptB = PreInstruct = PreInput = PreResponse = None
|
304 |
+
terminate_response = []
|
305 |
+
chat_sep = '\n'
|
306 |
+
humanstr = ''
|
307 |
+
botstr = ''
|
308 |
+
elif prompt_type in [PromptType.instruct.value, str(PromptType.instruct.value),
|
309 |
+
PromptType.instruct.name] + [PromptType.instruct_with_end.value,
|
310 |
+
str(PromptType.instruct_with_end.value),
|
311 |
+
PromptType.instruct_with_end.name]:
|
312 |
+
promptA = 'Below is an instruction that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request.\n' if not (
|
313 |
+
chat and reduced) else ''
|
314 |
+
promptB = 'Below is an instruction that describes a task. Write a response that appropriately completes the request.\n' if not (
|
315 |
+
chat and reduced) else ''
|
316 |
+
|
317 |
+
PreInstruct = """
|
318 |
+
### Instruction:
|
319 |
+
"""
|
320 |
+
|
321 |
+
PreInput = """
|
322 |
+
### Input:
|
323 |
+
"""
|
324 |
+
|
325 |
+
PreResponse = """
|
326 |
+
### Response:
|
327 |
+
"""
|
328 |
+
if prompt_type in [PromptType.instruct_with_end.value, str(PromptType.instruct_with_end.value),
|
329 |
+
PromptType.instruct_with_end.name]:
|
330 |
+
terminate_response = ['### End']
|
331 |
+
else:
|
332 |
+
terminate_response = None
|
333 |
+
chat_sep = '\n'
|
334 |
+
humanstr = PreInstruct
|
335 |
+
botstr = PreResponse
|
336 |
+
elif prompt_type in [PromptType.quality.value, str(PromptType.quality.value),
|
337 |
+
PromptType.quality.name]:
|
338 |
+
promptA = 'Write a detailed high-quality, accurate, fair, Response with about 100 words by following the Instruction as applied on the Input.\n' if not (
|
339 |
+
chat and reduced) else ''
|
340 |
+
promptB = 'Write a detailed high-quality, accurate, fair, Response with about 100 words by following the Instruction.\n' if not (
|
341 |
+
chat and reduced) else ''
|
342 |
+
|
343 |
+
PreInstruct = """
|
344 |
+
### Instruction:
|
345 |
+
"""
|
346 |
+
|
347 |
+
PreInput = """
|
348 |
+
### Input:
|
349 |
+
"""
|
350 |
+
|
351 |
+
PreResponse = """
|
352 |
+
### Response:
|
353 |
+
"""
|
354 |
+
terminate_response = None
|
355 |
+
chat_sep = '\n'
|
356 |
+
humanstr = PreInstruct # first thing human says
|
357 |
+
botstr = PreResponse # first thing bot says
|
358 |
+
elif prompt_type in [PromptType.human_bot.value, str(PromptType.human_bot.value),
|
359 |
+
PromptType.human_bot.name] + [PromptType.human_bot_orig.value,
|
360 |
+
str(PromptType.human_bot_orig.value),
|
361 |
+
PromptType.human_bot_orig.name]:
|
362 |
+
human = '<human>:'
|
363 |
+
bot = "<bot>:"
|
364 |
+
if reduced or context or prompt_type in [PromptType.human_bot.value, str(PromptType.human_bot.value),
|
365 |
+
PromptType.human_bot.name]:
|
366 |
+
preprompt = ''
|
367 |
+
else:
|
368 |
+
cur_date = time.strftime('%Y-%m-%d')
|
369 |
+
cur_time = time.strftime('%H:%M:%S %p %Z')
|
370 |
+
|
371 |
+
PRE_PROMPT = """\
|
372 |
+
Current Date: {}
|
373 |
+
Current Time: {}
|
374 |
+
|
375 |
+
"""
|
376 |
+
preprompt = PRE_PROMPT.format(cur_date, cur_time)
|
377 |
+
start = human
|
378 |
+
promptB = promptA = '%s%s ' % (preprompt, start)
|
379 |
+
|
380 |
+
PreInstruct = ""
|
381 |
+
|
382 |
+
PreInput = None
|
383 |
+
|
384 |
+
if reduced:
|
385 |
+
# when making context, want it to appear as-if LLM generated, which starts with space after :
|
386 |
+
PreResponse = bot + ' '
|
387 |
+
else:
|
388 |
+
# normally LLM adds space after this, because was how trained.
|
389 |
+
# if add space here, non-unique tokenization will often make LLM produce wrong output
|
390 |
+
PreResponse = bot
|
391 |
+
|
392 |
+
terminate_response = [start, PreResponse]
|
393 |
+
chat_sep = '\n'
|
394 |
+
humanstr = human # tag before human talks
|
395 |
+
botstr = bot # tag before bot talks
|
396 |
+
elif prompt_type in [PromptType.dai_faq.value, str(PromptType.dai_faq.value),
|
397 |
+
PromptType.dai_faq.name]:
|
398 |
+
promptA = ''
|
399 |
+
promptB = 'Answer the following Driverless AI question.\n'
|
400 |
+
|
401 |
+
PreInstruct = """
|
402 |
+
### Driverless AI frequently asked question:
|
403 |
+
"""
|
404 |
+
|
405 |
+
PreInput = None
|
406 |
+
|
407 |
+
PreResponse = """
|
408 |
+
### Driverless AI documentation answer:
|
409 |
+
"""
|
410 |
+
terminate_response = ['\n\n']
|
411 |
+
chat_sep = terminate_response
|
412 |
+
humanstr = PreInstruct
|
413 |
+
botstr = PreResponse
|
414 |
+
elif prompt_type in [PromptType.summarize.value, str(PromptType.summarize.value),
|
415 |
+
PromptType.summarize.name]:
|
416 |
+
promptA = promptB = PreInput = ''
|
417 |
+
PreInstruct = '## Main Text\n\n'
|
418 |
+
PreResponse = '\n\n## Summary\n\n'
|
419 |
+
terminate_response = None
|
420 |
+
chat_sep = '\n'
|
421 |
+
humanstr = PreInstruct
|
422 |
+
botstr = PreResponse
|
423 |
+
elif prompt_type in [PromptType.instruct_vicuna.value, str(PromptType.instruct_vicuna.value),
|
424 |
+
PromptType.instruct_vicuna.name]:
|
425 |
+
promptA = promptB = "A chat between a curious human and an artificial intelligence assistant. " \
|
426 |
+
"The assistant gives helpful, detailed, and polite answers to the human's questions." if not (
|
427 |
+
chat and reduced) else ''
|
428 |
+
|
429 |
+
PreInstruct = """
|
430 |
+
### Human:
|
431 |
+
"""
|
432 |
+
|
433 |
+
PreInput = None
|
434 |
+
|
435 |
+
PreResponse = """
|
436 |
+
### Assistant:
|
437 |
+
"""
|
438 |
+
terminate_response = [
|
439 |
+
'### Human:'] # but only allow terminate after prompt is found correctly, else can't terminate
|
440 |
+
chat_sep = '\n'
|
441 |
+
humanstr = PreInstruct
|
442 |
+
botstr = PreResponse
|
443 |
+
elif prompt_type in [PromptType.prompt_answer.value, str(PromptType.prompt_answer.value),
|
444 |
+
PromptType.prompt_answer.name]:
|
445 |
+
preprompt = ''
|
446 |
+
prompt_tokens = "<|prompt|>"
|
447 |
+
answer_tokens = "<|answer|>"
|
448 |
+
start = prompt_tokens
|
449 |
+
promptB = promptA = '%s%s' % (preprompt, start)
|
450 |
+
PreInstruct = ""
|
451 |
+
PreInput = None
|
452 |
+
PreResponse = answer_tokens
|
453 |
+
eos = '<|endoftext|>' # neox eos
|
454 |
+
terminate_response = [start, PreResponse, eos]
|
455 |
+
chat_sep = eos
|
456 |
+
humanstr = prompt_tokens
|
457 |
+
botstr = answer_tokens
|
458 |
+
elif prompt_type in [PromptType.open_assistant.value, str(PromptType.open_assistant.value),
|
459 |
+
PromptType.open_assistant.name]:
|
460 |
+
# From added_tokens.json
|
461 |
+
preprompt = ''
|
462 |
+
prompt_tokens = "<|prompter|>"
|
463 |
+
answer_tokens = "<|assistant|>"
|
464 |
+
start = prompt_tokens
|
465 |
+
promptB = promptA = '%s%s' % (preprompt, start)
|
466 |
+
PreInstruct = ""
|
467 |
+
PreInput = None
|
468 |
+
PreResponse = answer_tokens
|
469 |
+
pend = "<|prefix_end|>"
|
470 |
+
eos = "</s>"
|
471 |
+
terminate_response = [start, PreResponse, pend, eos]
|
472 |
+
chat_sep = eos
|
473 |
+
humanstr = prompt_tokens
|
474 |
+
botstr = answer_tokens
|
475 |
+
elif prompt_type in [PromptType.wizard_lm.value, str(PromptType.wizard_lm.value),
|
476 |
+
PromptType.wizard_lm.name]:
|
477 |
+
# https://github.com/ehartford/WizardLM/blob/main/src/train_freeform.py
|
478 |
+
preprompt = ''
|
479 |
+
start = ''
|
480 |
+
promptB = promptA = '%s%s' % (preprompt, start)
|
481 |
+
PreInstruct = ""
|
482 |
+
PreInput = None
|
483 |
+
PreResponse = "\n\n### Response\n"
|
484 |
+
eos = "</s>"
|
485 |
+
terminate_response = [PreResponse, eos]
|
486 |
+
chat_sep = eos
|
487 |
+
humanstr = promptA
|
488 |
+
botstr = PreResponse
|
489 |
+
elif prompt_type in [PromptType.wizard_mega.value, str(PromptType.wizard_mega.value),
|
490 |
+
PromptType.wizard_mega.name]:
|
491 |
+
preprompt = ''
|
492 |
+
start = ''
|
493 |
+
promptB = promptA = '%s%s' % (preprompt, start)
|
494 |
+
PreInstruct = """
|
495 |
+
### Instruction:
|
496 |
+
"""
|
497 |
+
PreInput = None
|
498 |
+
PreResponse = """
|
499 |
+
### Assistant:
|
500 |
+
"""
|
501 |
+
terminate_response = [PreResponse]
|
502 |
+
chat_sep = '\n'
|
503 |
+
humanstr = PreInstruct
|
504 |
+
botstr = PreResponse
|
505 |
+
elif prompt_type in [PromptType.instruct_vicuna2.value, str(PromptType.instruct_vicuna2.value),
|
506 |
+
PromptType.instruct_vicuna2.name]:
|
507 |
+
promptA = promptB = "" if not (
|
508 |
+
chat and reduced) else ''
|
509 |
+
|
510 |
+
PreInstruct = """
|
511 |
+
HUMAN:
|
512 |
+
"""
|
513 |
+
|
514 |
+
PreInput = None
|
515 |
+
|
516 |
+
PreResponse = """
|
517 |
+
ASSISTANT:
|
518 |
+
"""
|
519 |
+
terminate_response = [
|
520 |
+
'HUMAN:'] # but only allow terminate after prompt is found correctly, else can't terminate
|
521 |
+
chat_sep = '\n'
|
522 |
+
humanstr = PreInstruct
|
523 |
+
botstr = PreResponse
|
524 |
+
elif prompt_type in [PromptType.instruct_vicuna3.value, str(PromptType.instruct_vicuna3.value),
|
525 |
+
PromptType.instruct_vicuna3.name]:
|
526 |
+
promptA = promptB = "" if not (
|
527 |
+
chat and reduced) else ''
|
528 |
+
|
529 |
+
PreInstruct = """
|
530 |
+
### User:
|
531 |
+
"""
|
532 |
+
|
533 |
+
PreInput = None
|
534 |
+
|
535 |
+
PreResponse = """
|
536 |
+
### Assistant:
|
537 |
+
"""
|
538 |
+
terminate_response = [
|
539 |
+
'### User:'] # but only allow terminate after prompt is found correctly, else can't terminate
|
540 |
+
chat_sep = '\n'
|
541 |
+
humanstr = PreInstruct
|
542 |
+
botstr = PreResponse
|
543 |
+
elif prompt_type in [PromptType.wizard2.value, str(PromptType.wizard2.value),
|
544 |
+
PromptType.wizard2.name]:
|
545 |
+
# https://huggingface.co/TheBloke/WizardLM-7B-uncensored-GGML
|
546 |
+
preprompt = """Below is an instruction that describes a task. Write a response that appropriately completes the request."""
|
547 |
+
start = ''
|
548 |
+
promptB = promptA = '%s%s' % (preprompt, start)
|
549 |
+
PreInstruct = """
|
550 |
+
### Instruction:
|
551 |
+
"""
|
552 |
+
PreInput = None
|
553 |
+
PreResponse = """
|
554 |
+
### Response:
|
555 |
+
"""
|
556 |
+
terminate_response = [PreResponse]
|
557 |
+
chat_sep = '\n'
|
558 |
+
humanstr = PreInstruct
|
559 |
+
botstr = PreResponse
|
560 |
+
elif prompt_type in [PromptType.wizard3.value, str(PromptType.wizard3.value),
|
561 |
+
PromptType.wizard3.name]:
|
562 |
+
# https://huggingface.co/TheBloke/wizardLM-13B-1.0-GGML
|
563 |
+
preprompt = """A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions."""
|
564 |
+
start = ''
|
565 |
+
promptB = promptA = '%s%s' % (preprompt, start)
|
566 |
+
PreInstruct = """USER: """
|
567 |
+
PreInput = None
|
568 |
+
PreResponse = """ASSISTANT: """
|
569 |
+
terminate_response = [PreResponse]
|
570 |
+
chat_sep = '\n'
|
571 |
+
humanstr = PreInstruct
|
572 |
+
botstr = PreResponse
|
573 |
+
|
574 |
+
else:
|
575 |
+
raise RuntimeError("No such prompt_type=%s" % prompt_type)
|
576 |
+
|
577 |
+
return promptA, promptB, PreInstruct, PreInput, PreResponse, terminate_response, chat_sep, humanstr, botstr
|
578 |
+
|
579 |
+
|
580 |
+
def generate_prompt(data_point, prompt_type, chat, reduced):
|
581 |
+
context = data_point.get('context')
|
582 |
+
if context is None:
|
583 |
+
context = ''
|
584 |
+
instruction = data_point.get('instruction')
|
585 |
+
input = data_point.get('input')
|
586 |
+
output = data_point.get('output')
|
587 |
+
prompt_type = data_point.get('prompt_type', prompt_type)
|
588 |
+
assert prompt_type in prompt_types, "Bad prompt type: %s" % prompt_type
|
589 |
+
promptA, promptB, PreInstruct, PreInput, PreResponse, \
|
590 |
+
terminate_response, chat_sep, humanstr, botstr = get_prompt(prompt_type, chat, context, reduced)
|
591 |
+
|
592 |
+
prompt = context if not reduced else ''
|
593 |
+
|
594 |
+
if input and promptA:
|
595 |
+
prompt += f"""{promptA}"""
|
596 |
+
elif promptB:
|
597 |
+
prompt += f"""{promptB}"""
|
598 |
+
|
599 |
+
if instruction and PreInstruct is not None and input and PreInput is not None:
|
600 |
+
prompt += f"""{PreInstruct}{instruction}{PreInput}{input}"""
|
601 |
+
prompt = inject_newline(prompt_type, prompt)
|
602 |
+
elif instruction and input and PreInstruct is None and PreInput is not None:
|
603 |
+
prompt += f"""{PreInput}{instruction}
|
604 |
+
{input}"""
|
605 |
+
prompt = inject_newline(prompt_type, prompt)
|
606 |
+
elif input and instruction and PreInput is None and PreInstruct is not None:
|
607 |
+
prompt += f"""{PreInstruct}{instruction}
|
608 |
+
{input}"""
|
609 |
+
prompt = inject_newline(prompt_type, prompt)
|
610 |
+
elif instruction and PreInstruct is not None:
|
611 |
+
prompt += f"""{PreInstruct}{instruction}"""
|
612 |
+
prompt = inject_newline(prompt_type, prompt)
|
613 |
+
elif input and PreInput is not None:
|
614 |
+
prompt += f"""{PreInput}{input}"""
|
615 |
+
prompt = inject_newline(prompt_type, prompt)
|
616 |
+
elif input and instruction and PreInput is not None:
|
617 |
+
prompt += f"""{PreInput}{instruction}{input}"""
|
618 |
+
prompt = inject_newline(prompt_type, prompt)
|
619 |
+
elif input and instruction and PreInstruct is not None:
|
620 |
+
prompt += f"""{PreInstruct}{instruction}{input}"""
|
621 |
+
prompt = inject_newline(prompt_type, prompt)
|
622 |
+
elif input and instruction:
|
623 |
+
# i.e. for simple_instruct
|
624 |
+
prompt += f"""{instruction}: {input}"""
|
625 |
+
prompt = inject_newline(prompt_type, prompt)
|
626 |
+
elif input:
|
627 |
+
prompt += f"""{input}"""
|
628 |
+
prompt = inject_newline(prompt_type, prompt)
|
629 |
+
elif instruction:
|
630 |
+
prompt += f"""{instruction}"""
|
631 |
+
prompt = inject_newline(prompt_type, prompt)
|
632 |
+
|
633 |
+
if PreResponse is not None:
|
634 |
+
prompt += f"""{PreResponse}"""
|
635 |
+
pre_response = PreResponse # Don't use strip
|
636 |
+
else:
|
637 |
+
pre_response = ''
|
638 |
+
|
639 |
+
if output:
|
640 |
+
prompt += f"""{output}"""
|
641 |
+
|
642 |
+
return prompt, pre_response, terminate_response, chat_sep
|
643 |
+
|
644 |
+
|
645 |
+
def inject_newline(prompt_type, prompt):
|
646 |
+
if prompt_type not in [-1, '-1', 'plain', 'simple_instruct']:
|
647 |
+
# only add new line if structured prompt, while 'plain' is just generation of next tokens from input
|
648 |
+
prompt += '\n'
|
649 |
+
return prompt
|
650 |
+
|
651 |
+
|
652 |
+
class Prompter(object):
|
653 |
+
def __init__(self, prompt_type, debug=False, chat=False, stream_output=False, repeat_penalty=True,
|
654 |
+
allowed_repeat_line_length=10):
|
655 |
+
self.prompt_type = prompt_type
|
656 |
+
data_point = dict(instruction='', input='', output='')
|
657 |
+
_, self.pre_response, self.terminate_response, self.chat_sep = \
|
658 |
+
generate_prompt(data_point, prompt_type, chat, False)
|
659 |
+
self.debug = debug
|
660 |
+
self.chat = chat
|
661 |
+
self.stream_output = stream_output
|
662 |
+
self.repeat_penalty = repeat_penalty
|
663 |
+
self.allowed_repeat_line_length = allowed_repeat_line_length
|
664 |
+
self.prompt = None
|
665 |
+
context = "" # not for chat context
|
666 |
+
reduced = False # not for chat context
|
667 |
+
self.promptA, self.promptB, self.PreInstruct, self.PreInput, self.PreResponse, \
|
668 |
+
self.terminate_response, self.chat_sep, self.humanstr, self.botstr = \
|
669 |
+
get_prompt(prompt_type, chat, context, reduced)
|
670 |
+
|
671 |
+
def generate_prompt(self, data_point):
|
672 |
+
reduced = False
|
673 |
+
prompt, _, _, _ = generate_prompt(data_point, self.prompt_type, self.chat, reduced)
|
674 |
+
if self.debug:
|
675 |
+
print("prompt: ", prompt, flush=True)
|
676 |
+
self.prompt = prompt
|
677 |
+
return prompt
|
678 |
+
|
679 |
+
def get_response(self, outputs, prompt=None, sanitize_bot_response=True):
|
680 |
+
if isinstance(outputs, str):
|
681 |
+
outputs = [outputs]
|
682 |
+
if self.debug:
|
683 |
+
print("output:\n", '\n\n'.join(outputs), flush=True)
|
684 |
+
if prompt is not None:
|
685 |
+
self.prompt = prompt
|
686 |
+
|
687 |
+
def clean_response(response):
|
688 |
+
meaningless_words = ['<pad>', '</s>', '<|endoftext|>']
|
689 |
+
for word in meaningless_words:
|
690 |
+
response = response.replace(word, "")
|
691 |
+
if sanitize_bot_response:
|
692 |
+
from better_profanity import profanity
|
693 |
+
response = profanity.censor(response)
|
694 |
+
response = response.strip("\n")
|
695 |
+
return response
|
696 |
+
|
697 |
+
def clean_repeats(response):
|
698 |
+
lines = response.split('\n')
|
699 |
+
new_lines = []
|
700 |
+
[new_lines.append(line) for line in lines if
|
701 |
+
line not in new_lines or len(line) < self.allowed_repeat_line_length]
|
702 |
+
if self.debug and len(lines) != len(new_lines):
|
703 |
+
print("cleaned repeats: %s %s" % (len(lines), len(new_lines)), flush=True)
|
704 |
+
response = '\n'.join(new_lines)
|
705 |
+
return response
|
706 |
+
|
707 |
+
multi_output = len(outputs) > 1
|
708 |
+
|
709 |
+
for oi, output in enumerate(outputs):
|
710 |
+
if self.prompt_type in [PromptType.plain.value, str(PromptType.plain.value), PromptType.plain.name]:
|
711 |
+
output = clean_response(output)
|
712 |
+
elif prompt is None:
|
713 |
+
# then use most basic parsing like pipeline
|
714 |
+
if self.botstr in output:
|
715 |
+
if self.humanstr:
|
716 |
+
output = clean_response(output.split(self.botstr)[1].strip().split(self.humanstr)[0].strip())
|
717 |
+
else:
|
718 |
+
# i.e. use after bot but only up to next bot
|
719 |
+
output = clean_response(output.split(self.botstr)[1].strip().split(self.botstr)[0].strip())
|
720 |
+
else:
|
721 |
+
# output = clean_response(output.strip())
|
722 |
+
# assume just not printed yet
|
723 |
+
output = ""
|
724 |
+
else:
|
725 |
+
# find first instance of prereponse
|
726 |
+
# prompt sometimes has odd characters, that mutate length,
|
727 |
+
# so can't go by length alone
|
728 |
+
if self.pre_response:
|
729 |
+
outputi = output.find(prompt)
|
730 |
+
if outputi >= 0:
|
731 |
+
output = output[outputi + len(prompt):]
|
732 |
+
allow_terminate = True
|
733 |
+
else:
|
734 |
+
# subtraction is risky due to space offsets sometimes, so only do if necessary
|
735 |
+
output = output[len(prompt) - len(self.pre_response):]
|
736 |
+
# [1] to avoid repeated pre_response, just take first (after prompt - pre_response for chat)
|
737 |
+
if self.pre_response in output:
|
738 |
+
output = output.split(self.pre_response)[1]
|
739 |
+
allow_terminate = True
|
740 |
+
else:
|
741 |
+
if output:
|
742 |
+
print("Failure of parsing or not enough output yet: %s" % output, flush=True)
|
743 |
+
allow_terminate = False
|
744 |
+
else:
|
745 |
+
allow_terminate = True
|
746 |
+
output = output[len(prompt):]
|
747 |
+
# clean after subtract prompt out, so correct removal of pre_response
|
748 |
+
output = clean_response(output).strip()
|
749 |
+
if self.repeat_penalty:
|
750 |
+
output = clean_repeats(output).strip()
|
751 |
+
if self.terminate_response and allow_terminate:
|
752 |
+
finds = []
|
753 |
+
for term in self.terminate_response:
|
754 |
+
finds.append(output.find(term))
|
755 |
+
finds = [x for x in finds if x >= 0]
|
756 |
+
if len(finds) > 0:
|
757 |
+
termi = finds[0]
|
758 |
+
output = output[:termi].strip()
|
759 |
+
else:
|
760 |
+
output = output.strip()
|
761 |
+
else:
|
762 |
+
output = output.strip()
|
763 |
+
if multi_output:
|
764 |
+
# prefix with output counter
|
765 |
+
output = "\n=========== Output %d\n\n" % (1 + oi) + output
|
766 |
+
if oi > 0:
|
767 |
+
# post fix outputs with seperator
|
768 |
+
output += '\n'
|
769 |
+
outputs[oi] = output
|
770 |
+
# join all outputs, only one extra new line between outputs
|
771 |
+
output = '\n'.join(outputs)
|
772 |
+
if self.debug:
|
773 |
+
print("outputclean:\n", '\n\n'.join(outputs), flush=True)
|
774 |
+
return output
|
pytorch_model-00001-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:6759cb7f56922efdd1b7eadb04c28150883378c574c18cdda309162c8eed9d49
|
3 |
+
size 4605550559
|
pytorch_model-00002-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:1dcba8d2ec7b7788ea31e52c938a44187e7895a7f77e2de947b918ff4f5059b0
|
3 |
+
size 4899219433
|
pytorch_model-00003-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:8dde2dceef6a3806e1542323b2203e519eb80942adf81a8af3c25aefcf5c4b1a
|
3 |
+
size 4613939365
|
pytorch_model-00004-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:c3e0d9e39b57071facfb524736219e7788e1b159ae54755bd785c3ef400c57b2
|
3 |
+
size 4899219497
|
pytorch_model-00005-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:72693bbc7b09e5cd5e5f98261a10a4bb842efa3acf977aa14800735794246ab2
|
3 |
+
size 4613939429
|
pytorch_model-00006-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:b355e2c4beeb82dfbc96e0d896e2b14171cd7e1facea0c56a0e84b0fdb6cae74
|
3 |
+
size 4899219497
|
pytorch_model-00007-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:a56eb695b4510c9db91ef0aaa4f4d4b977a20e78c6a21975cf618c8dd8928d1c
|
3 |
+
size 4613939429
|
pytorch_model-00008-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:aef35e36a1c807ab81accb4e5366d2e84eec19c3912637e3510788c19220d0a7
|
3 |
+
size 4899219497
|
pytorch_model-00009-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:a8e71270a91ca71b247ab77d7181ac37204c92a1c046d7a37d0c34f520f618a0
|
3 |
+
size 4613939429
|
pytorch_model-00010-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:5be04c37a40d6ad3dee1ce0f89accc44142ede1fa96de3a1be1af995a9ce3d35
|
3 |
+
size 4899219497
|
pytorch_model-00011-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:86fdbc48099e78ef58aa7426b15a7a13b7ef5c0a892f58edb2f079f65b16e9e9
|
3 |
+
size 4613939429
|
pytorch_model-00012-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:8295ef7e4c878e1b7a3209ae0e4af8b9e0e4b2725a8752cf8148e53f55f65995
|
3 |
+
size 4899219497
|
pytorch_model-00013-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:b9340525be56f3d1b40206542a5dab95e5e48896012a3dffaccb14f0550ff5fd
|
3 |
+
size 4613939429
|
pytorch_model-00014-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:67671259aa7aa95f2b4de2edc8e781c8b011c29ad0a6c5a96e5213f1d273d6bb
|
3 |
+
size 4899219497
|
pytorch_model-00015-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:db276197987bf7716b16a237f6a054537b2ee921171b97c1080ecc41ba1770f5
|
3 |
+
size 4613939429
|
pytorch_model-00016-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:0152922ced49b95e8aa229c60ce3f7086d2779aaa454c4d1aeb497663a969c35
|
3 |
+
size 4899219497
|
pytorch_model-00017-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:c1ab82290d28bdf08849e25c19b13e3e47fb55234606b8b14e5c6598dfaf5003
|
3 |
+
size 4613939429
|
pytorch_model-00018-of-00018.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:f6ce6db21ff11306937c647414ce838f8d7c013680046ac50c8ed747e8896aac
|
3 |
+
size 1895927701
|
pytorch_model.bin.index.json
ADDED
@@ -0,0 +1,491 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"metadata": {
|
3 |
+
"total_size": 82606587904
|
4 |
+
},
|
5 |
+
"weight_map": {
|
6 |
+
"lm_head.weight": "pytorch_model-00001-of-00018.bin",
|
7 |
+
"transformer.h.0.ln_attn.bias": "pytorch_model-00001-of-00018.bin",
|
8 |
+
"transformer.h.0.ln_attn.weight": "pytorch_model-00001-of-00018.bin",
|
9 |
+
"transformer.h.0.ln_mlp.bias": "pytorch_model-00001-of-00018.bin",
|
10 |
+
"transformer.h.0.ln_mlp.weight": "pytorch_model-00001-of-00018.bin",
|
11 |
+
"transformer.h.0.mlp.dense_4h_to_h.weight": "pytorch_model-00001-of-00018.bin",
|
12 |
+
"transformer.h.0.mlp.dense_h_to_4h.weight": "pytorch_model-00001-of-00018.bin",
|
13 |
+
"transformer.h.0.self_attention.dense.weight": "pytorch_model-00001-of-00018.bin",
|
14 |
+
"transformer.h.0.self_attention.query_key_value.weight": "pytorch_model-00001-of-00018.bin",
|
15 |
+
"transformer.h.1.ln_attn.bias": "pytorch_model-00001-of-00018.bin",
|
16 |
+
"transformer.h.1.ln_attn.weight": "pytorch_model-00001-of-00018.bin",
|
17 |
+
"transformer.h.1.ln_mlp.bias": "pytorch_model-00001-of-00018.bin",
|
18 |
+
"transformer.h.1.ln_mlp.weight": "pytorch_model-00001-of-00018.bin",
|
19 |
+
"transformer.h.1.mlp.dense_4h_to_h.weight": "pytorch_model-00001-of-00018.bin",
|
20 |
+
"transformer.h.1.mlp.dense_h_to_4h.weight": "pytorch_model-00001-of-00018.bin",
|
21 |
+
"transformer.h.1.self_attention.dense.weight": "pytorch_model-00001-of-00018.bin",
|
22 |
+
"transformer.h.1.self_attention.query_key_value.weight": "pytorch_model-00001-of-00018.bin",
|
23 |
+
"transformer.h.10.ln_attn.bias": "pytorch_model-00004-of-00018.bin",
|
24 |
+
"transformer.h.10.ln_attn.weight": "pytorch_model-00004-of-00018.bin",
|
25 |
+
"transformer.h.10.ln_mlp.bias": "pytorch_model-00004-of-00018.bin",
|
26 |
+
"transformer.h.10.ln_mlp.weight": "pytorch_model-00004-of-00018.bin",
|
27 |
+
"transformer.h.10.mlp.dense_4h_to_h.weight": "pytorch_model-00004-of-00018.bin",
|
28 |
+
"transformer.h.10.mlp.dense_h_to_4h.weight": "pytorch_model-00004-of-00018.bin",
|
29 |
+
"transformer.h.10.self_attention.dense.weight": "pytorch_model-00004-of-00018.bin",
|
30 |
+
"transformer.h.10.self_attention.query_key_value.weight": "pytorch_model-00004-of-00018.bin",
|
31 |
+
"transformer.h.11.ln_attn.bias": "pytorch_model-00004-of-00018.bin",
|
32 |
+
"transformer.h.11.ln_attn.weight": "pytorch_model-00004-of-00018.bin",
|
33 |
+
"transformer.h.11.ln_mlp.bias": "pytorch_model-00004-of-00018.bin",
|
34 |
+
"transformer.h.11.ln_mlp.weight": "pytorch_model-00004-of-00018.bin",
|
35 |
+
"transformer.h.11.mlp.dense_4h_to_h.weight": "pytorch_model-00004-of-00018.bin",
|
36 |
+
"transformer.h.11.mlp.dense_h_to_4h.weight": "pytorch_model-00004-of-00018.bin",
|
37 |
+
"transformer.h.11.self_attention.dense.weight": "pytorch_model-00004-of-00018.bin",
|
38 |
+
"transformer.h.11.self_attention.query_key_value.weight": "pytorch_model-00004-of-00018.bin",
|
39 |
+
"transformer.h.12.ln_attn.bias": "pytorch_model-00004-of-00018.bin",
|
40 |
+
"transformer.h.12.ln_attn.weight": "pytorch_model-00004-of-00018.bin",
|
41 |
+
"transformer.h.12.ln_mlp.bias": "pytorch_model-00004-of-00018.bin",
|
42 |
+
"transformer.h.12.ln_mlp.weight": "pytorch_model-00004-of-00018.bin",
|
43 |
+
"transformer.h.12.mlp.dense_4h_to_h.weight": "pytorch_model-00004-of-00018.bin",
|
44 |
+
"transformer.h.12.mlp.dense_h_to_4h.weight": "pytorch_model-00004-of-00018.bin",
|
45 |
+
"transformer.h.12.self_attention.dense.weight": "pytorch_model-00004-of-00018.bin",
|
46 |
+
"transformer.h.12.self_attention.query_key_value.weight": "pytorch_model-00004-of-00018.bin",
|
47 |
+
"transformer.h.13.ln_attn.bias": "pytorch_model-00004-of-00018.bin",
|
48 |
+
"transformer.h.13.ln_attn.weight": "pytorch_model-00004-of-00018.bin",
|
49 |
+
"transformer.h.13.ln_mlp.bias": "pytorch_model-00004-of-00018.bin",
|
50 |
+
"transformer.h.13.ln_mlp.weight": "pytorch_model-00004-of-00018.bin",
|
51 |
+
"transformer.h.13.mlp.dense_4h_to_h.weight": "pytorch_model-00005-of-00018.bin",
|
52 |
+
"transformer.h.13.mlp.dense_h_to_4h.weight": "pytorch_model-00005-of-00018.bin",
|
53 |
+
"transformer.h.13.self_attention.dense.weight": "pytorch_model-00004-of-00018.bin",
|
54 |
+
"transformer.h.13.self_attention.query_key_value.weight": "pytorch_model-00004-of-00018.bin",
|
55 |
+
"transformer.h.14.ln_attn.bias": "pytorch_model-00005-of-00018.bin",
|
56 |
+
"transformer.h.14.ln_attn.weight": "pytorch_model-00005-of-00018.bin",
|
57 |
+
"transformer.h.14.ln_mlp.bias": "pytorch_model-00005-of-00018.bin",
|
58 |
+
"transformer.h.14.ln_mlp.weight": "pytorch_model-00005-of-00018.bin",
|
59 |
+
"transformer.h.14.mlp.dense_4h_to_h.weight": "pytorch_model-00005-of-00018.bin",
|
60 |
+
"transformer.h.14.mlp.dense_h_to_4h.weight": "pytorch_model-00005-of-00018.bin",
|
61 |
+
"transformer.h.14.self_attention.dense.weight": "pytorch_model-00005-of-00018.bin",
|
62 |
+
"transformer.h.14.self_attention.query_key_value.weight": "pytorch_model-00005-of-00018.bin",
|
63 |
+
"transformer.h.15.ln_attn.bias": "pytorch_model-00005-of-00018.bin",
|
64 |
+
"transformer.h.15.ln_attn.weight": "pytorch_model-00005-of-00018.bin",
|
65 |
+
"transformer.h.15.ln_mlp.bias": "pytorch_model-00005-of-00018.bin",
|
66 |
+
"transformer.h.15.ln_mlp.weight": "pytorch_model-00005-of-00018.bin",
|
67 |
+
"transformer.h.15.mlp.dense_4h_to_h.weight": "pytorch_model-00005-of-00018.bin",
|
68 |
+
"transformer.h.15.mlp.dense_h_to_4h.weight": "pytorch_model-00005-of-00018.bin",
|
69 |
+
"transformer.h.15.self_attention.dense.weight": "pytorch_model-00005-of-00018.bin",
|
70 |
+
"transformer.h.15.self_attention.query_key_value.weight": "pytorch_model-00005-of-00018.bin",
|
71 |
+
"transformer.h.16.ln_attn.bias": "pytorch_model-00005-of-00018.bin",
|
72 |
+
"transformer.h.16.ln_attn.weight": "pytorch_model-00005-of-00018.bin",
|
73 |
+
"transformer.h.16.ln_mlp.bias": "pytorch_model-00005-of-00018.bin",
|
74 |
+
"transformer.h.16.ln_mlp.weight": "pytorch_model-00005-of-00018.bin",
|
75 |
+
"transformer.h.16.mlp.dense_4h_to_h.weight": "pytorch_model-00006-of-00018.bin",
|
76 |
+
"transformer.h.16.mlp.dense_h_to_4h.weight": "pytorch_model-00005-of-00018.bin",
|
77 |
+
"transformer.h.16.self_attention.dense.weight": "pytorch_model-00005-of-00018.bin",
|
78 |
+
"transformer.h.16.self_attention.query_key_value.weight": "pytorch_model-00005-of-00018.bin",
|
79 |
+
"transformer.h.17.ln_attn.bias": "pytorch_model-00006-of-00018.bin",
|
80 |
+
"transformer.h.17.ln_attn.weight": "pytorch_model-00006-of-00018.bin",
|
81 |
+
"transformer.h.17.ln_mlp.bias": "pytorch_model-00006-of-00018.bin",
|
82 |
+
"transformer.h.17.ln_mlp.weight": "pytorch_model-00006-of-00018.bin",
|
83 |
+
"transformer.h.17.mlp.dense_4h_to_h.weight": "pytorch_model-00006-of-00018.bin",
|
84 |
+
"transformer.h.17.mlp.dense_h_to_4h.weight": "pytorch_model-00006-of-00018.bin",
|
85 |
+
"transformer.h.17.self_attention.dense.weight": "pytorch_model-00006-of-00018.bin",
|
86 |
+
"transformer.h.17.self_attention.query_key_value.weight": "pytorch_model-00006-of-00018.bin",
|
87 |
+
"transformer.h.18.ln_attn.bias": "pytorch_model-00006-of-00018.bin",
|
88 |
+
"transformer.h.18.ln_attn.weight": "pytorch_model-00006-of-00018.bin",
|
89 |
+
"transformer.h.18.ln_mlp.bias": "pytorch_model-00006-of-00018.bin",
|
90 |
+
"transformer.h.18.ln_mlp.weight": "pytorch_model-00006-of-00018.bin",
|
91 |
+
"transformer.h.18.mlp.dense_4h_to_h.weight": "pytorch_model-00006-of-00018.bin",
|
92 |
+
"transformer.h.18.mlp.dense_h_to_4h.weight": "pytorch_model-00006-of-00018.bin",
|
93 |
+
"transformer.h.18.self_attention.dense.weight": "pytorch_model-00006-of-00018.bin",
|
94 |
+
"transformer.h.18.self_attention.query_key_value.weight": "pytorch_model-00006-of-00018.bin",
|
95 |
+
"transformer.h.19.ln_attn.bias": "pytorch_model-00006-of-00018.bin",
|
96 |
+
"transformer.h.19.ln_attn.weight": "pytorch_model-00006-of-00018.bin",
|
97 |
+
"transformer.h.19.ln_mlp.bias": "pytorch_model-00006-of-00018.bin",
|
98 |
+
"transformer.h.19.ln_mlp.weight": "pytorch_model-00006-of-00018.bin",
|
99 |
+
"transformer.h.19.mlp.dense_4h_to_h.weight": "pytorch_model-00006-of-00018.bin",
|
100 |
+
"transformer.h.19.mlp.dense_h_to_4h.weight": "pytorch_model-00006-of-00018.bin",
|
101 |
+
"transformer.h.19.self_attention.dense.weight": "pytorch_model-00006-of-00018.bin",
|
102 |
+
"transformer.h.19.self_attention.query_key_value.weight": "pytorch_model-00006-of-00018.bin",
|
103 |
+
"transformer.h.2.ln_attn.bias": "pytorch_model-00001-of-00018.bin",
|
104 |
+
"transformer.h.2.ln_attn.weight": "pytorch_model-00001-of-00018.bin",
|
105 |
+
"transformer.h.2.ln_mlp.bias": "pytorch_model-00001-of-00018.bin",
|
106 |
+
"transformer.h.2.ln_mlp.weight": "pytorch_model-00001-of-00018.bin",
|
107 |
+
"transformer.h.2.mlp.dense_4h_to_h.weight": "pytorch_model-00002-of-00018.bin",
|
108 |
+
"transformer.h.2.mlp.dense_h_to_4h.weight": "pytorch_model-00001-of-00018.bin",
|
109 |
+
"transformer.h.2.self_attention.dense.weight": "pytorch_model-00001-of-00018.bin",
|
110 |
+
"transformer.h.2.self_attention.query_key_value.weight": "pytorch_model-00001-of-00018.bin",
|
111 |
+
"transformer.h.20.ln_attn.bias": "pytorch_model-00006-of-00018.bin",
|
112 |
+
"transformer.h.20.ln_attn.weight": "pytorch_model-00006-of-00018.bin",
|
113 |
+
"transformer.h.20.ln_mlp.bias": "pytorch_model-00006-of-00018.bin",
|
114 |
+
"transformer.h.20.ln_mlp.weight": "pytorch_model-00006-of-00018.bin",
|
115 |
+
"transformer.h.20.mlp.dense_4h_to_h.weight": "pytorch_model-00007-of-00018.bin",
|
116 |
+
"transformer.h.20.mlp.dense_h_to_4h.weight": "pytorch_model-00007-of-00018.bin",
|
117 |
+
"transformer.h.20.self_attention.dense.weight": "pytorch_model-00006-of-00018.bin",
|
118 |
+
"transformer.h.20.self_attention.query_key_value.weight": "pytorch_model-00006-of-00018.bin",
|
119 |
+
"transformer.h.21.ln_attn.bias": "pytorch_model-00007-of-00018.bin",
|
120 |
+
"transformer.h.21.ln_attn.weight": "pytorch_model-00007-of-00018.bin",
|
121 |
+
"transformer.h.21.ln_mlp.bias": "pytorch_model-00007-of-00018.bin",
|
122 |
+
"transformer.h.21.ln_mlp.weight": "pytorch_model-00007-of-00018.bin",
|
123 |
+
"transformer.h.21.mlp.dense_4h_to_h.weight": "pytorch_model-00007-of-00018.bin",
|
124 |
+
"transformer.h.21.mlp.dense_h_to_4h.weight": "pytorch_model-00007-of-00018.bin",
|
125 |
+
"transformer.h.21.self_attention.dense.weight": "pytorch_model-00007-of-00018.bin",
|
126 |
+
"transformer.h.21.self_attention.query_key_value.weight": "pytorch_model-00007-of-00018.bin",
|
127 |
+
"transformer.h.22.ln_attn.bias": "pytorch_model-00007-of-00018.bin",
|
128 |
+
"transformer.h.22.ln_attn.weight": "pytorch_model-00007-of-00018.bin",
|
129 |
+
"transformer.h.22.ln_mlp.bias": "pytorch_model-00007-of-00018.bin",
|
130 |
+
"transformer.h.22.ln_mlp.weight": "pytorch_model-00007-of-00018.bin",
|
131 |
+
"transformer.h.22.mlp.dense_4h_to_h.weight": "pytorch_model-00007-of-00018.bin",
|
132 |
+
"transformer.h.22.mlp.dense_h_to_4h.weight": "pytorch_model-00007-of-00018.bin",
|
133 |
+
"transformer.h.22.self_attention.dense.weight": "pytorch_model-00007-of-00018.bin",
|
134 |
+
"transformer.h.22.self_attention.query_key_value.weight": "pytorch_model-00007-of-00018.bin",
|
135 |
+
"transformer.h.23.ln_attn.bias": "pytorch_model-00007-of-00018.bin",
|
136 |
+
"transformer.h.23.ln_attn.weight": "pytorch_model-00007-of-00018.bin",
|
137 |
+
"transformer.h.23.ln_mlp.bias": "pytorch_model-00007-of-00018.bin",
|
138 |
+
"transformer.h.23.ln_mlp.weight": "pytorch_model-00007-of-00018.bin",
|
139 |
+
"transformer.h.23.mlp.dense_4h_to_h.weight": "pytorch_model-00008-of-00018.bin",
|
140 |
+
"transformer.h.23.mlp.dense_h_to_4h.weight": "pytorch_model-00007-of-00018.bin",
|
141 |
+
"transformer.h.23.self_attention.dense.weight": "pytorch_model-00007-of-00018.bin",
|
142 |
+
"transformer.h.23.self_attention.query_key_value.weight": "pytorch_model-00007-of-00018.bin",
|
143 |
+
"transformer.h.24.ln_attn.bias": "pytorch_model-00008-of-00018.bin",
|
144 |
+
"transformer.h.24.ln_attn.weight": "pytorch_model-00008-of-00018.bin",
|
145 |
+
"transformer.h.24.ln_mlp.bias": "pytorch_model-00008-of-00018.bin",
|
146 |
+
"transformer.h.24.ln_mlp.weight": "pytorch_model-00008-of-00018.bin",
|
147 |
+
"transformer.h.24.mlp.dense_4h_to_h.weight": "pytorch_model-00008-of-00018.bin",
|
148 |
+
"transformer.h.24.mlp.dense_h_to_4h.weight": "pytorch_model-00008-of-00018.bin",
|
149 |
+
"transformer.h.24.self_attention.dense.weight": "pytorch_model-00008-of-00018.bin",
|
150 |
+
"transformer.h.24.self_attention.query_key_value.weight": "pytorch_model-00008-of-00018.bin",
|
151 |
+
"transformer.h.25.ln_attn.bias": "pytorch_model-00008-of-00018.bin",
|
152 |
+
"transformer.h.25.ln_attn.weight": "pytorch_model-00008-of-00018.bin",
|
153 |
+
"transformer.h.25.ln_mlp.bias": "pytorch_model-00008-of-00018.bin",
|
154 |
+
"transformer.h.25.ln_mlp.weight": "pytorch_model-00008-of-00018.bin",
|
155 |
+
"transformer.h.25.mlp.dense_4h_to_h.weight": "pytorch_model-00008-of-00018.bin",
|
156 |
+
"transformer.h.25.mlp.dense_h_to_4h.weight": "pytorch_model-00008-of-00018.bin",
|
157 |
+
"transformer.h.25.self_attention.dense.weight": "pytorch_model-00008-of-00018.bin",
|
158 |
+
"transformer.h.25.self_attention.query_key_value.weight": "pytorch_model-00008-of-00018.bin",
|
159 |
+
"transformer.h.26.ln_attn.bias": "pytorch_model-00008-of-00018.bin",
|
160 |
+
"transformer.h.26.ln_attn.weight": "pytorch_model-00008-of-00018.bin",
|
161 |
+
"transformer.h.26.ln_mlp.bias": "pytorch_model-00008-of-00018.bin",
|
162 |
+
"transformer.h.26.ln_mlp.weight": "pytorch_model-00008-of-00018.bin",
|
163 |
+
"transformer.h.26.mlp.dense_4h_to_h.weight": "pytorch_model-00008-of-00018.bin",
|
164 |
+
"transformer.h.26.mlp.dense_h_to_4h.weight": "pytorch_model-00008-of-00018.bin",
|
165 |
+
"transformer.h.26.self_attention.dense.weight": "pytorch_model-00008-of-00018.bin",
|
166 |
+
"transformer.h.26.self_attention.query_key_value.weight": "pytorch_model-00008-of-00018.bin",
|
167 |
+
"transformer.h.27.ln_attn.bias": "pytorch_model-00008-of-00018.bin",
|
168 |
+
"transformer.h.27.ln_attn.weight": "pytorch_model-00008-of-00018.bin",
|
169 |
+
"transformer.h.27.ln_mlp.bias": "pytorch_model-00008-of-00018.bin",
|
170 |
+
"transformer.h.27.ln_mlp.weight": "pytorch_model-00008-of-00018.bin",
|
171 |
+
"transformer.h.27.mlp.dense_4h_to_h.weight": "pytorch_model-00009-of-00018.bin",
|
172 |
+
"transformer.h.27.mlp.dense_h_to_4h.weight": "pytorch_model-00009-of-00018.bin",
|
173 |
+
"transformer.h.27.self_attention.dense.weight": "pytorch_model-00008-of-00018.bin",
|
174 |
+
"transformer.h.27.self_attention.query_key_value.weight": "pytorch_model-00008-of-00018.bin",
|
175 |
+
"transformer.h.28.ln_attn.bias": "pytorch_model-00009-of-00018.bin",
|
176 |
+
"transformer.h.28.ln_attn.weight": "pytorch_model-00009-of-00018.bin",
|
177 |
+
"transformer.h.28.ln_mlp.bias": "pytorch_model-00009-of-00018.bin",
|
178 |
+
"transformer.h.28.ln_mlp.weight": "pytorch_model-00009-of-00018.bin",
|
179 |
+
"transformer.h.28.mlp.dense_4h_to_h.weight": "pytorch_model-00009-of-00018.bin",
|
180 |
+
"transformer.h.28.mlp.dense_h_to_4h.weight": "pytorch_model-00009-of-00018.bin",
|
181 |
+
"transformer.h.28.self_attention.dense.weight": "pytorch_model-00009-of-00018.bin",
|
182 |
+
"transformer.h.28.self_attention.query_key_value.weight": "pytorch_model-00009-of-00018.bin",
|
183 |
+
"transformer.h.29.ln_attn.bias": "pytorch_model-00009-of-00018.bin",
|
184 |
+
"transformer.h.29.ln_attn.weight": "pytorch_model-00009-of-00018.bin",
|
185 |
+
"transformer.h.29.ln_mlp.bias": "pytorch_model-00009-of-00018.bin",
|
186 |
+
"transformer.h.29.ln_mlp.weight": "pytorch_model-00009-of-00018.bin",
|
187 |
+
"transformer.h.29.mlp.dense_4h_to_h.weight": "pytorch_model-00009-of-00018.bin",
|
188 |
+
"transformer.h.29.mlp.dense_h_to_4h.weight": "pytorch_model-00009-of-00018.bin",
|
189 |
+
"transformer.h.29.self_attention.dense.weight": "pytorch_model-00009-of-00018.bin",
|
190 |
+
"transformer.h.29.self_attention.query_key_value.weight": "pytorch_model-00009-of-00018.bin",
|
191 |
+
"transformer.h.3.ln_attn.bias": "pytorch_model-00002-of-00018.bin",
|
192 |
+
"transformer.h.3.ln_attn.weight": "pytorch_model-00002-of-00018.bin",
|
193 |
+
"transformer.h.3.ln_mlp.bias": "pytorch_model-00002-of-00018.bin",
|
194 |
+
"transformer.h.3.ln_mlp.weight": "pytorch_model-00002-of-00018.bin",
|
195 |
+
"transformer.h.3.mlp.dense_4h_to_h.weight": "pytorch_model-00002-of-00018.bin",
|
196 |
+
"transformer.h.3.mlp.dense_h_to_4h.weight": "pytorch_model-00002-of-00018.bin",
|
197 |
+
"transformer.h.3.self_attention.dense.weight": "pytorch_model-00002-of-00018.bin",
|
198 |
+
"transformer.h.3.self_attention.query_key_value.weight": "pytorch_model-00002-of-00018.bin",
|
199 |
+
"transformer.h.30.ln_attn.bias": "pytorch_model-00009-of-00018.bin",
|
200 |
+
"transformer.h.30.ln_attn.weight": "pytorch_model-00009-of-00018.bin",
|
201 |
+
"transformer.h.30.ln_mlp.bias": "pytorch_model-00009-of-00018.bin",
|
202 |
+
"transformer.h.30.ln_mlp.weight": "pytorch_model-00009-of-00018.bin",
|
203 |
+
"transformer.h.30.mlp.dense_4h_to_h.weight": "pytorch_model-00010-of-00018.bin",
|
204 |
+
"transformer.h.30.mlp.dense_h_to_4h.weight": "pytorch_model-00009-of-00018.bin",
|
205 |
+
"transformer.h.30.self_attention.dense.weight": "pytorch_model-00009-of-00018.bin",
|
206 |
+
"transformer.h.30.self_attention.query_key_value.weight": "pytorch_model-00009-of-00018.bin",
|
207 |
+
"transformer.h.31.ln_attn.bias": "pytorch_model-00010-of-00018.bin",
|
208 |
+
"transformer.h.31.ln_attn.weight": "pytorch_model-00010-of-00018.bin",
|
209 |
+
"transformer.h.31.ln_mlp.bias": "pytorch_model-00010-of-00018.bin",
|
210 |
+
"transformer.h.31.ln_mlp.weight": "pytorch_model-00010-of-00018.bin",
|
211 |
+
"transformer.h.31.mlp.dense_4h_to_h.weight": "pytorch_model-00010-of-00018.bin",
|
212 |
+
"transformer.h.31.mlp.dense_h_to_4h.weight": "pytorch_model-00010-of-00018.bin",
|
213 |
+
"transformer.h.31.self_attention.dense.weight": "pytorch_model-00010-of-00018.bin",
|
214 |
+
"transformer.h.31.self_attention.query_key_value.weight": "pytorch_model-00010-of-00018.bin",
|
215 |
+
"transformer.h.32.ln_attn.bias": "pytorch_model-00010-of-00018.bin",
|
216 |
+
"transformer.h.32.ln_attn.weight": "pytorch_model-00010-of-00018.bin",
|
217 |
+
"transformer.h.32.ln_mlp.bias": "pytorch_model-00010-of-00018.bin",
|
218 |
+
"transformer.h.32.ln_mlp.weight": "pytorch_model-00010-of-00018.bin",
|
219 |
+
"transformer.h.32.mlp.dense_4h_to_h.weight": "pytorch_model-00010-of-00018.bin",
|
220 |
+
"transformer.h.32.mlp.dense_h_to_4h.weight": "pytorch_model-00010-of-00018.bin",
|
221 |
+
"transformer.h.32.self_attention.dense.weight": "pytorch_model-00010-of-00018.bin",
|
222 |
+
"transformer.h.32.self_attention.query_key_value.weight": "pytorch_model-00010-of-00018.bin",
|
223 |
+
"transformer.h.33.ln_attn.bias": "pytorch_model-00010-of-00018.bin",
|
224 |
+
"transformer.h.33.ln_attn.weight": "pytorch_model-00010-of-00018.bin",
|
225 |
+
"transformer.h.33.ln_mlp.bias": "pytorch_model-00010-of-00018.bin",
|
226 |
+
"transformer.h.33.ln_mlp.weight": "pytorch_model-00010-of-00018.bin",
|
227 |
+
"transformer.h.33.mlp.dense_4h_to_h.weight": "pytorch_model-00010-of-00018.bin",
|
228 |
+
"transformer.h.33.mlp.dense_h_to_4h.weight": "pytorch_model-00010-of-00018.bin",
|
229 |
+
"transformer.h.33.self_attention.dense.weight": "pytorch_model-00010-of-00018.bin",
|
230 |
+
"transformer.h.33.self_attention.query_key_value.weight": "pytorch_model-00010-of-00018.bin",
|
231 |
+
"transformer.h.34.ln_attn.bias": "pytorch_model-00010-of-00018.bin",
|
232 |
+
"transformer.h.34.ln_attn.weight": "pytorch_model-00010-of-00018.bin",
|
233 |
+
"transformer.h.34.ln_mlp.bias": "pytorch_model-00010-of-00018.bin",
|
234 |
+
"transformer.h.34.ln_mlp.weight": "pytorch_model-00010-of-00018.bin",
|
235 |
+
"transformer.h.34.mlp.dense_4h_to_h.weight": "pytorch_model-00011-of-00018.bin",
|
236 |
+
"transformer.h.34.mlp.dense_h_to_4h.weight": "pytorch_model-00011-of-00018.bin",
|
237 |
+
"transformer.h.34.self_attention.dense.weight": "pytorch_model-00010-of-00018.bin",
|
238 |
+
"transformer.h.34.self_attention.query_key_value.weight": "pytorch_model-00010-of-00018.bin",
|
239 |
+
"transformer.h.35.ln_attn.bias": "pytorch_model-00011-of-00018.bin",
|
240 |
+
"transformer.h.35.ln_attn.weight": "pytorch_model-00011-of-00018.bin",
|
241 |
+
"transformer.h.35.ln_mlp.bias": "pytorch_model-00011-of-00018.bin",
|
242 |
+
"transformer.h.35.ln_mlp.weight": "pytorch_model-00011-of-00018.bin",
|
243 |
+
"transformer.h.35.mlp.dense_4h_to_h.weight": "pytorch_model-00011-of-00018.bin",
|
244 |
+
"transformer.h.35.mlp.dense_h_to_4h.weight": "pytorch_model-00011-of-00018.bin",
|
245 |
+
"transformer.h.35.self_attention.dense.weight": "pytorch_model-00011-of-00018.bin",
|
246 |
+
"transformer.h.35.self_attention.query_key_value.weight": "pytorch_model-00011-of-00018.bin",
|
247 |
+
"transformer.h.36.ln_attn.bias": "pytorch_model-00011-of-00018.bin",
|
248 |
+
"transformer.h.36.ln_attn.weight": "pytorch_model-00011-of-00018.bin",
|
249 |
+
"transformer.h.36.ln_mlp.bias": "pytorch_model-00011-of-00018.bin",
|
250 |
+
"transformer.h.36.ln_mlp.weight": "pytorch_model-00011-of-00018.bin",
|
251 |
+
"transformer.h.36.mlp.dense_4h_to_h.weight": "pytorch_model-00011-of-00018.bin",
|
252 |
+
"transformer.h.36.mlp.dense_h_to_4h.weight": "pytorch_model-00011-of-00018.bin",
|
253 |
+
"transformer.h.36.self_attention.dense.weight": "pytorch_model-00011-of-00018.bin",
|
254 |
+
"transformer.h.36.self_attention.query_key_value.weight": "pytorch_model-00011-of-00018.bin",
|
255 |
+
"transformer.h.37.ln_attn.bias": "pytorch_model-00011-of-00018.bin",
|
256 |
+
"transformer.h.37.ln_attn.weight": "pytorch_model-00011-of-00018.bin",
|
257 |
+
"transformer.h.37.ln_mlp.bias": "pytorch_model-00011-of-00018.bin",
|
258 |
+
"transformer.h.37.ln_mlp.weight": "pytorch_model-00011-of-00018.bin",
|
259 |
+
"transformer.h.37.mlp.dense_4h_to_h.weight": "pytorch_model-00012-of-00018.bin",
|
260 |
+
"transformer.h.37.mlp.dense_h_to_4h.weight": "pytorch_model-00011-of-00018.bin",
|
261 |
+
"transformer.h.37.self_attention.dense.weight": "pytorch_model-00011-of-00018.bin",
|
262 |
+
"transformer.h.37.self_attention.query_key_value.weight": "pytorch_model-00011-of-00018.bin",
|
263 |
+
"transformer.h.38.ln_attn.bias": "pytorch_model-00012-of-00018.bin",
|
264 |
+
"transformer.h.38.ln_attn.weight": "pytorch_model-00012-of-00018.bin",
|
265 |
+
"transformer.h.38.ln_mlp.bias": "pytorch_model-00012-of-00018.bin",
|
266 |
+
"transformer.h.38.ln_mlp.weight": "pytorch_model-00012-of-00018.bin",
|
267 |
+
"transformer.h.38.mlp.dense_4h_to_h.weight": "pytorch_model-00012-of-00018.bin",
|
268 |
+
"transformer.h.38.mlp.dense_h_to_4h.weight": "pytorch_model-00012-of-00018.bin",
|
269 |
+
"transformer.h.38.self_attention.dense.weight": "pytorch_model-00012-of-00018.bin",
|
270 |
+
"transformer.h.38.self_attention.query_key_value.weight": "pytorch_model-00012-of-00018.bin",
|
271 |
+
"transformer.h.39.ln_attn.bias": "pytorch_model-00012-of-00018.bin",
|
272 |
+
"transformer.h.39.ln_attn.weight": "pytorch_model-00012-of-00018.bin",
|
273 |
+
"transformer.h.39.ln_mlp.bias": "pytorch_model-00012-of-00018.bin",
|
274 |
+
"transformer.h.39.ln_mlp.weight": "pytorch_model-00012-of-00018.bin",
|
275 |
+
"transformer.h.39.mlp.dense_4h_to_h.weight": "pytorch_model-00012-of-00018.bin",
|
276 |
+
"transformer.h.39.mlp.dense_h_to_4h.weight": "pytorch_model-00012-of-00018.bin",
|
277 |
+
"transformer.h.39.self_attention.dense.weight": "pytorch_model-00012-of-00018.bin",
|
278 |
+
"transformer.h.39.self_attention.query_key_value.weight": "pytorch_model-00012-of-00018.bin",
|
279 |
+
"transformer.h.4.ln_attn.bias": "pytorch_model-00002-of-00018.bin",
|
280 |
+
"transformer.h.4.ln_attn.weight": "pytorch_model-00002-of-00018.bin",
|
281 |
+
"transformer.h.4.ln_mlp.bias": "pytorch_model-00002-of-00018.bin",
|
282 |
+
"transformer.h.4.ln_mlp.weight": "pytorch_model-00002-of-00018.bin",
|
283 |
+
"transformer.h.4.mlp.dense_4h_to_h.weight": "pytorch_model-00002-of-00018.bin",
|
284 |
+
"transformer.h.4.mlp.dense_h_to_4h.weight": "pytorch_model-00002-of-00018.bin",
|
285 |
+
"transformer.h.4.self_attention.dense.weight": "pytorch_model-00002-of-00018.bin",
|
286 |
+
"transformer.h.4.self_attention.query_key_value.weight": "pytorch_model-00002-of-00018.bin",
|
287 |
+
"transformer.h.40.ln_attn.bias": "pytorch_model-00012-of-00018.bin",
|
288 |
+
"transformer.h.40.ln_attn.weight": "pytorch_model-00012-of-00018.bin",
|
289 |
+
"transformer.h.40.ln_mlp.bias": "pytorch_model-00012-of-00018.bin",
|
290 |
+
"transformer.h.40.ln_mlp.weight": "pytorch_model-00012-of-00018.bin",
|
291 |
+
"transformer.h.40.mlp.dense_4h_to_h.weight": "pytorch_model-00012-of-00018.bin",
|
292 |
+
"transformer.h.40.mlp.dense_h_to_4h.weight": "pytorch_model-00012-of-00018.bin",
|
293 |
+
"transformer.h.40.self_attention.dense.weight": "pytorch_model-00012-of-00018.bin",
|
294 |
+
"transformer.h.40.self_attention.query_key_value.weight": "pytorch_model-00012-of-00018.bin",
|
295 |
+
"transformer.h.41.ln_attn.bias": "pytorch_model-00012-of-00018.bin",
|
296 |
+
"transformer.h.41.ln_attn.weight": "pytorch_model-00012-of-00018.bin",
|
297 |
+
"transformer.h.41.ln_mlp.bias": "pytorch_model-00012-of-00018.bin",
|
298 |
+
"transformer.h.41.ln_mlp.weight": "pytorch_model-00012-of-00018.bin",
|
299 |
+
"transformer.h.41.mlp.dense_4h_to_h.weight": "pytorch_model-00013-of-00018.bin",
|
300 |
+
"transformer.h.41.mlp.dense_h_to_4h.weight": "pytorch_model-00013-of-00018.bin",
|
301 |
+
"transformer.h.41.self_attention.dense.weight": "pytorch_model-00012-of-00018.bin",
|
302 |
+
"transformer.h.41.self_attention.query_key_value.weight": "pytorch_model-00012-of-00018.bin",
|
303 |
+
"transformer.h.42.ln_attn.bias": "pytorch_model-00013-of-00018.bin",
|
304 |
+
"transformer.h.42.ln_attn.weight": "pytorch_model-00013-of-00018.bin",
|
305 |
+
"transformer.h.42.ln_mlp.bias": "pytorch_model-00013-of-00018.bin",
|
306 |
+
"transformer.h.42.ln_mlp.weight": "pytorch_model-00013-of-00018.bin",
|
307 |
+
"transformer.h.42.mlp.dense_4h_to_h.weight": "pytorch_model-00013-of-00018.bin",
|
308 |
+
"transformer.h.42.mlp.dense_h_to_4h.weight": "pytorch_model-00013-of-00018.bin",
|
309 |
+
"transformer.h.42.self_attention.dense.weight": "pytorch_model-00013-of-00018.bin",
|
310 |
+
"transformer.h.42.self_attention.query_key_value.weight": "pytorch_model-00013-of-00018.bin",
|
311 |
+
"transformer.h.43.ln_attn.bias": "pytorch_model-00013-of-00018.bin",
|
312 |
+
"transformer.h.43.ln_attn.weight": "pytorch_model-00013-of-00018.bin",
|
313 |
+
"transformer.h.43.ln_mlp.bias": "pytorch_model-00013-of-00018.bin",
|
314 |
+
"transformer.h.43.ln_mlp.weight": "pytorch_model-00013-of-00018.bin",
|
315 |
+
"transformer.h.43.mlp.dense_4h_to_h.weight": "pytorch_model-00013-of-00018.bin",
|
316 |
+
"transformer.h.43.mlp.dense_h_to_4h.weight": "pytorch_model-00013-of-00018.bin",
|
317 |
+
"transformer.h.43.self_attention.dense.weight": "pytorch_model-00013-of-00018.bin",
|
318 |
+
"transformer.h.43.self_attention.query_key_value.weight": "pytorch_model-00013-of-00018.bin",
|
319 |
+
"transformer.h.44.ln_attn.bias": "pytorch_model-00013-of-00018.bin",
|
320 |
+
"transformer.h.44.ln_attn.weight": "pytorch_model-00013-of-00018.bin",
|
321 |
+
"transformer.h.44.ln_mlp.bias": "pytorch_model-00013-of-00018.bin",
|
322 |
+
"transformer.h.44.ln_mlp.weight": "pytorch_model-00013-of-00018.bin",
|
323 |
+
"transformer.h.44.mlp.dense_4h_to_h.weight": "pytorch_model-00014-of-00018.bin",
|
324 |
+
"transformer.h.44.mlp.dense_h_to_4h.weight": "pytorch_model-00013-of-00018.bin",
|
325 |
+
"transformer.h.44.self_attention.dense.weight": "pytorch_model-00013-of-00018.bin",
|
326 |
+
"transformer.h.44.self_attention.query_key_value.weight": "pytorch_model-00013-of-00018.bin",
|
327 |
+
"transformer.h.45.ln_attn.bias": "pytorch_model-00014-of-00018.bin",
|
328 |
+
"transformer.h.45.ln_attn.weight": "pytorch_model-00014-of-00018.bin",
|
329 |
+
"transformer.h.45.ln_mlp.bias": "pytorch_model-00014-of-00018.bin",
|
330 |
+
"transformer.h.45.ln_mlp.weight": "pytorch_model-00014-of-00018.bin",
|
331 |
+
"transformer.h.45.mlp.dense_4h_to_h.weight": "pytorch_model-00014-of-00018.bin",
|
332 |
+
"transformer.h.45.mlp.dense_h_to_4h.weight": "pytorch_model-00014-of-00018.bin",
|
333 |
+
"transformer.h.45.self_attention.dense.weight": "pytorch_model-00014-of-00018.bin",
|
334 |
+
"transformer.h.45.self_attention.query_key_value.weight": "pytorch_model-00014-of-00018.bin",
|
335 |
+
"transformer.h.46.ln_attn.bias": "pytorch_model-00014-of-00018.bin",
|
336 |
+
"transformer.h.46.ln_attn.weight": "pytorch_model-00014-of-00018.bin",
|
337 |
+
"transformer.h.46.ln_mlp.bias": "pytorch_model-00014-of-00018.bin",
|
338 |
+
"transformer.h.46.ln_mlp.weight": "pytorch_model-00014-of-00018.bin",
|
339 |
+
"transformer.h.46.mlp.dense_4h_to_h.weight": "pytorch_model-00014-of-00018.bin",
|
340 |
+
"transformer.h.46.mlp.dense_h_to_4h.weight": "pytorch_model-00014-of-00018.bin",
|
341 |
+
"transformer.h.46.self_attention.dense.weight": "pytorch_model-00014-of-00018.bin",
|
342 |
+
"transformer.h.46.self_attention.query_key_value.weight": "pytorch_model-00014-of-00018.bin",
|
343 |
+
"transformer.h.47.ln_attn.bias": "pytorch_model-00014-of-00018.bin",
|
344 |
+
"transformer.h.47.ln_attn.weight": "pytorch_model-00014-of-00018.bin",
|
345 |
+
"transformer.h.47.ln_mlp.bias": "pytorch_model-00014-of-00018.bin",
|
346 |
+
"transformer.h.47.ln_mlp.weight": "pytorch_model-00014-of-00018.bin",
|
347 |
+
"transformer.h.47.mlp.dense_4h_to_h.weight": "pytorch_model-00014-of-00018.bin",
|
348 |
+
"transformer.h.47.mlp.dense_h_to_4h.weight": "pytorch_model-00014-of-00018.bin",
|
349 |
+
"transformer.h.47.self_attention.dense.weight": "pytorch_model-00014-of-00018.bin",
|
350 |
+
"transformer.h.47.self_attention.query_key_value.weight": "pytorch_model-00014-of-00018.bin",
|
351 |
+
"transformer.h.48.ln_attn.bias": "pytorch_model-00014-of-00018.bin",
|
352 |
+
"transformer.h.48.ln_attn.weight": "pytorch_model-00014-of-00018.bin",
|
353 |
+
"transformer.h.48.ln_mlp.bias": "pytorch_model-00014-of-00018.bin",
|
354 |
+
"transformer.h.48.ln_mlp.weight": "pytorch_model-00014-of-00018.bin",
|
355 |
+
"transformer.h.48.mlp.dense_4h_to_h.weight": "pytorch_model-00015-of-00018.bin",
|
356 |
+
"transformer.h.48.mlp.dense_h_to_4h.weight": "pytorch_model-00015-of-00018.bin",
|
357 |
+
"transformer.h.48.self_attention.dense.weight": "pytorch_model-00014-of-00018.bin",
|
358 |
+
"transformer.h.48.self_attention.query_key_value.weight": "pytorch_model-00014-of-00018.bin",
|
359 |
+
"transformer.h.49.ln_attn.bias": "pytorch_model-00015-of-00018.bin",
|
360 |
+
"transformer.h.49.ln_attn.weight": "pytorch_model-00015-of-00018.bin",
|
361 |
+
"transformer.h.49.ln_mlp.bias": "pytorch_model-00015-of-00018.bin",
|
362 |
+
"transformer.h.49.ln_mlp.weight": "pytorch_model-00015-of-00018.bin",
|
363 |
+
"transformer.h.49.mlp.dense_4h_to_h.weight": "pytorch_model-00015-of-00018.bin",
|
364 |
+
"transformer.h.49.mlp.dense_h_to_4h.weight": "pytorch_model-00015-of-00018.bin",
|
365 |
+
"transformer.h.49.self_attention.dense.weight": "pytorch_model-00015-of-00018.bin",
|
366 |
+
"transformer.h.49.self_attention.query_key_value.weight": "pytorch_model-00015-of-00018.bin",
|
367 |
+
"transformer.h.5.ln_attn.bias": "pytorch_model-00002-of-00018.bin",
|
368 |
+
"transformer.h.5.ln_attn.weight": "pytorch_model-00002-of-00018.bin",
|
369 |
+
"transformer.h.5.ln_mlp.bias": "pytorch_model-00002-of-00018.bin",
|
370 |
+
"transformer.h.5.ln_mlp.weight": "pytorch_model-00002-of-00018.bin",
|
371 |
+
"transformer.h.5.mlp.dense_4h_to_h.weight": "pytorch_model-00002-of-00018.bin",
|
372 |
+
"transformer.h.5.mlp.dense_h_to_4h.weight": "pytorch_model-00002-of-00018.bin",
|
373 |
+
"transformer.h.5.self_attention.dense.weight": "pytorch_model-00002-of-00018.bin",
|
374 |
+
"transformer.h.5.self_attention.query_key_value.weight": "pytorch_model-00002-of-00018.bin",
|
375 |
+
"transformer.h.50.ln_attn.bias": "pytorch_model-00015-of-00018.bin",
|
376 |
+
"transformer.h.50.ln_attn.weight": "pytorch_model-00015-of-00018.bin",
|
377 |
+
"transformer.h.50.ln_mlp.bias": "pytorch_model-00015-of-00018.bin",
|
378 |
+
"transformer.h.50.ln_mlp.weight": "pytorch_model-00015-of-00018.bin",
|
379 |
+
"transformer.h.50.mlp.dense_4h_to_h.weight": "pytorch_model-00015-of-00018.bin",
|
380 |
+
"transformer.h.50.mlp.dense_h_to_4h.weight": "pytorch_model-00015-of-00018.bin",
|
381 |
+
"transformer.h.50.self_attention.dense.weight": "pytorch_model-00015-of-00018.bin",
|
382 |
+
"transformer.h.50.self_attention.query_key_value.weight": "pytorch_model-00015-of-00018.bin",
|
383 |
+
"transformer.h.51.ln_attn.bias": "pytorch_model-00015-of-00018.bin",
|
384 |
+
"transformer.h.51.ln_attn.weight": "pytorch_model-00015-of-00018.bin",
|
385 |
+
"transformer.h.51.ln_mlp.bias": "pytorch_model-00015-of-00018.bin",
|
386 |
+
"transformer.h.51.ln_mlp.weight": "pytorch_model-00015-of-00018.bin",
|
387 |
+
"transformer.h.51.mlp.dense_4h_to_h.weight": "pytorch_model-00016-of-00018.bin",
|
388 |
+
"transformer.h.51.mlp.dense_h_to_4h.weight": "pytorch_model-00015-of-00018.bin",
|
389 |
+
"transformer.h.51.self_attention.dense.weight": "pytorch_model-00015-of-00018.bin",
|
390 |
+
"transformer.h.51.self_attention.query_key_value.weight": "pytorch_model-00015-of-00018.bin",
|
391 |
+
"transformer.h.52.ln_attn.bias": "pytorch_model-00016-of-00018.bin",
|
392 |
+
"transformer.h.52.ln_attn.weight": "pytorch_model-00016-of-00018.bin",
|
393 |
+
"transformer.h.52.ln_mlp.bias": "pytorch_model-00016-of-00018.bin",
|
394 |
+
"transformer.h.52.ln_mlp.weight": "pytorch_model-00016-of-00018.bin",
|
395 |
+
"transformer.h.52.mlp.dense_4h_to_h.weight": "pytorch_model-00016-of-00018.bin",
|
396 |
+
"transformer.h.52.mlp.dense_h_to_4h.weight": "pytorch_model-00016-of-00018.bin",
|
397 |
+
"transformer.h.52.self_attention.dense.weight": "pytorch_model-00016-of-00018.bin",
|
398 |
+
"transformer.h.52.self_attention.query_key_value.weight": "pytorch_model-00016-of-00018.bin",
|
399 |
+
"transformer.h.53.ln_attn.bias": "pytorch_model-00016-of-00018.bin",
|
400 |
+
"transformer.h.53.ln_attn.weight": "pytorch_model-00016-of-00018.bin",
|
401 |
+
"transformer.h.53.ln_mlp.bias": "pytorch_model-00016-of-00018.bin",
|
402 |
+
"transformer.h.53.ln_mlp.weight": "pytorch_model-00016-of-00018.bin",
|
403 |
+
"transformer.h.53.mlp.dense_4h_to_h.weight": "pytorch_model-00016-of-00018.bin",
|
404 |
+
"transformer.h.53.mlp.dense_h_to_4h.weight": "pytorch_model-00016-of-00018.bin",
|
405 |
+
"transformer.h.53.self_attention.dense.weight": "pytorch_model-00016-of-00018.bin",
|
406 |
+
"transformer.h.53.self_attention.query_key_value.weight": "pytorch_model-00016-of-00018.bin",
|
407 |
+
"transformer.h.54.ln_attn.bias": "pytorch_model-00016-of-00018.bin",
|
408 |
+
"transformer.h.54.ln_attn.weight": "pytorch_model-00016-of-00018.bin",
|
409 |
+
"transformer.h.54.ln_mlp.bias": "pytorch_model-00016-of-00018.bin",
|
410 |
+
"transformer.h.54.ln_mlp.weight": "pytorch_model-00016-of-00018.bin",
|
411 |
+
"transformer.h.54.mlp.dense_4h_to_h.weight": "pytorch_model-00016-of-00018.bin",
|
412 |
+
"transformer.h.54.mlp.dense_h_to_4h.weight": "pytorch_model-00016-of-00018.bin",
|
413 |
+
"transformer.h.54.self_attention.dense.weight": "pytorch_model-00016-of-00018.bin",
|
414 |
+
"transformer.h.54.self_attention.query_key_value.weight": "pytorch_model-00016-of-00018.bin",
|
415 |
+
"transformer.h.55.ln_attn.bias": "pytorch_model-00016-of-00018.bin",
|
416 |
+
"transformer.h.55.ln_attn.weight": "pytorch_model-00016-of-00018.bin",
|
417 |
+
"transformer.h.55.ln_mlp.bias": "pytorch_model-00016-of-00018.bin",
|
418 |
+
"transformer.h.55.ln_mlp.weight": "pytorch_model-00016-of-00018.bin",
|
419 |
+
"transformer.h.55.mlp.dense_4h_to_h.weight": "pytorch_model-00017-of-00018.bin",
|
420 |
+
"transformer.h.55.mlp.dense_h_to_4h.weight": "pytorch_model-00017-of-00018.bin",
|
421 |
+
"transformer.h.55.self_attention.dense.weight": "pytorch_model-00016-of-00018.bin",
|
422 |
+
"transformer.h.55.self_attention.query_key_value.weight": "pytorch_model-00016-of-00018.bin",
|
423 |
+
"transformer.h.56.ln_attn.bias": "pytorch_model-00017-of-00018.bin",
|
424 |
+
"transformer.h.56.ln_attn.weight": "pytorch_model-00017-of-00018.bin",
|
425 |
+
"transformer.h.56.ln_mlp.bias": "pytorch_model-00017-of-00018.bin",
|
426 |
+
"transformer.h.56.ln_mlp.weight": "pytorch_model-00017-of-00018.bin",
|
427 |
+
"transformer.h.56.mlp.dense_4h_to_h.weight": "pytorch_model-00017-of-00018.bin",
|
428 |
+
"transformer.h.56.mlp.dense_h_to_4h.weight": "pytorch_model-00017-of-00018.bin",
|
429 |
+
"transformer.h.56.self_attention.dense.weight": "pytorch_model-00017-of-00018.bin",
|
430 |
+
"transformer.h.56.self_attention.query_key_value.weight": "pytorch_model-00017-of-00018.bin",
|
431 |
+
"transformer.h.57.ln_attn.bias": "pytorch_model-00017-of-00018.bin",
|
432 |
+
"transformer.h.57.ln_attn.weight": "pytorch_model-00017-of-00018.bin",
|
433 |
+
"transformer.h.57.ln_mlp.bias": "pytorch_model-00017-of-00018.bin",
|
434 |
+
"transformer.h.57.ln_mlp.weight": "pytorch_model-00017-of-00018.bin",
|
435 |
+
"transformer.h.57.mlp.dense_4h_to_h.weight": "pytorch_model-00017-of-00018.bin",
|
436 |
+
"transformer.h.57.mlp.dense_h_to_4h.weight": "pytorch_model-00017-of-00018.bin",
|
437 |
+
"transformer.h.57.self_attention.dense.weight": "pytorch_model-00017-of-00018.bin",
|
438 |
+
"transformer.h.57.self_attention.query_key_value.weight": "pytorch_model-00017-of-00018.bin",
|
439 |
+
"transformer.h.58.ln_attn.bias": "pytorch_model-00017-of-00018.bin",
|
440 |
+
"transformer.h.58.ln_attn.weight": "pytorch_model-00017-of-00018.bin",
|
441 |
+
"transformer.h.58.ln_mlp.bias": "pytorch_model-00017-of-00018.bin",
|
442 |
+
"transformer.h.58.ln_mlp.weight": "pytorch_model-00017-of-00018.bin",
|
443 |
+
"transformer.h.58.mlp.dense_4h_to_h.weight": "pytorch_model-00018-of-00018.bin",
|
444 |
+
"transformer.h.58.mlp.dense_h_to_4h.weight": "pytorch_model-00017-of-00018.bin",
|
445 |
+
"transformer.h.58.self_attention.dense.weight": "pytorch_model-00017-of-00018.bin",
|
446 |
+
"transformer.h.58.self_attention.query_key_value.weight": "pytorch_model-00017-of-00018.bin",
|
447 |
+
"transformer.h.59.ln_attn.bias": "pytorch_model-00018-of-00018.bin",
|
448 |
+
"transformer.h.59.ln_attn.weight": "pytorch_model-00018-of-00018.bin",
|
449 |
+
"transformer.h.59.ln_mlp.bias": "pytorch_model-00018-of-00018.bin",
|
450 |
+
"transformer.h.59.ln_mlp.weight": "pytorch_model-00018-of-00018.bin",
|
451 |
+
"transformer.h.59.mlp.dense_4h_to_h.weight": "pytorch_model-00018-of-00018.bin",
|
452 |
+
"transformer.h.59.mlp.dense_h_to_4h.weight": "pytorch_model-00018-of-00018.bin",
|
453 |
+
"transformer.h.59.self_attention.dense.weight": "pytorch_model-00018-of-00018.bin",
|
454 |
+
"transformer.h.59.self_attention.query_key_value.weight": "pytorch_model-00018-of-00018.bin",
|
455 |
+
"transformer.h.6.ln_attn.bias": "pytorch_model-00002-of-00018.bin",
|
456 |
+
"transformer.h.6.ln_attn.weight": "pytorch_model-00002-of-00018.bin",
|
457 |
+
"transformer.h.6.ln_mlp.bias": "pytorch_model-00002-of-00018.bin",
|
458 |
+
"transformer.h.6.ln_mlp.weight": "pytorch_model-00002-of-00018.bin",
|
459 |
+
"transformer.h.6.mlp.dense_4h_to_h.weight": "pytorch_model-00003-of-00018.bin",
|
460 |
+
"transformer.h.6.mlp.dense_h_to_4h.weight": "pytorch_model-00003-of-00018.bin",
|
461 |
+
"transformer.h.6.self_attention.dense.weight": "pytorch_model-00002-of-00018.bin",
|
462 |
+
"transformer.h.6.self_attention.query_key_value.weight": "pytorch_model-00002-of-00018.bin",
|
463 |
+
"transformer.h.7.ln_attn.bias": "pytorch_model-00003-of-00018.bin",
|
464 |
+
"transformer.h.7.ln_attn.weight": "pytorch_model-00003-of-00018.bin",
|
465 |
+
"transformer.h.7.ln_mlp.bias": "pytorch_model-00003-of-00018.bin",
|
466 |
+
"transformer.h.7.ln_mlp.weight": "pytorch_model-00003-of-00018.bin",
|
467 |
+
"transformer.h.7.mlp.dense_4h_to_h.weight": "pytorch_model-00003-of-00018.bin",
|
468 |
+
"transformer.h.7.mlp.dense_h_to_4h.weight": "pytorch_model-00003-of-00018.bin",
|
469 |
+
"transformer.h.7.self_attention.dense.weight": "pytorch_model-00003-of-00018.bin",
|
470 |
+
"transformer.h.7.self_attention.query_key_value.weight": "pytorch_model-00003-of-00018.bin",
|
471 |
+
"transformer.h.8.ln_attn.bias": "pytorch_model-00003-of-00018.bin",
|
472 |
+
"transformer.h.8.ln_attn.weight": "pytorch_model-00003-of-00018.bin",
|
473 |
+
"transformer.h.8.ln_mlp.bias": "pytorch_model-00003-of-00018.bin",
|
474 |
+
"transformer.h.8.ln_mlp.weight": "pytorch_model-00003-of-00018.bin",
|
475 |
+
"transformer.h.8.mlp.dense_4h_to_h.weight": "pytorch_model-00003-of-00018.bin",
|
476 |
+
"transformer.h.8.mlp.dense_h_to_4h.weight": "pytorch_model-00003-of-00018.bin",
|
477 |
+
"transformer.h.8.self_attention.dense.weight": "pytorch_model-00003-of-00018.bin",
|
478 |
+
"transformer.h.8.self_attention.query_key_value.weight": "pytorch_model-00003-of-00018.bin",
|
479 |
+
"transformer.h.9.ln_attn.bias": "pytorch_model-00003-of-00018.bin",
|
480 |
+
"transformer.h.9.ln_attn.weight": "pytorch_model-00003-of-00018.bin",
|
481 |
+
"transformer.h.9.ln_mlp.bias": "pytorch_model-00003-of-00018.bin",
|
482 |
+
"transformer.h.9.ln_mlp.weight": "pytorch_model-00003-of-00018.bin",
|
483 |
+
"transformer.h.9.mlp.dense_4h_to_h.weight": "pytorch_model-00004-of-00018.bin",
|
484 |
+
"transformer.h.9.mlp.dense_h_to_4h.weight": "pytorch_model-00003-of-00018.bin",
|
485 |
+
"transformer.h.9.self_attention.dense.weight": "pytorch_model-00003-of-00018.bin",
|
486 |
+
"transformer.h.9.self_attention.query_key_value.weight": "pytorch_model-00003-of-00018.bin",
|
487 |
+
"transformer.ln_f.bias": "pytorch_model-00018-of-00018.bin",
|
488 |
+
"transformer.ln_f.weight": "pytorch_model-00018-of-00018.bin",
|
489 |
+
"transformer.word_embeddings.weight": "pytorch_model-00001-of-00018.bin"
|
490 |
+
}
|
491 |
+
}
|
special_tokens_map.json
ADDED
@@ -0,0 +1,16 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"additional_special_tokens": [
|
3 |
+
">>TITLE<<",
|
4 |
+
">>ABSTRACT<<",
|
5 |
+
">>INTRODUCTION<<",
|
6 |
+
">>SUMMARY<<",
|
7 |
+
">>COMMENT<<",
|
8 |
+
">>ANSWER<<",
|
9 |
+
">>QUESTION<<",
|
10 |
+
">>DOMAIN<<",
|
11 |
+
">>PREFIX<<",
|
12 |
+
">>SUFFIX<<",
|
13 |
+
">>MIDDLE<<"
|
14 |
+
],
|
15 |
+
"eos_token": "<|endoftext|>"
|
16 |
+
}
|
tokenizer.json
ADDED
The diff for this file is too large to render.
See raw diff
|
|
tokenizer_config.json
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"add_prefix_space": false,
|
3 |
+
"clean_up_tokenization_spaces": true,
|
4 |
+
"eos_token": "<|endoftext|>",
|
5 |
+
"model_max_length": 2048,
|
6 |
+
"tokenizer_class": "PreTrainedTokenizerFast"
|
7 |
+
}
|