webscout 2.3b0__py3-none-any.whl → 2.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of webscout might be problematic. Click here for more details.
- webscout/Local/__init__.py +10 -0
- webscout/Local/_version.py +3 -0
- webscout/Local/formats.py +482 -0
- webscout/Local/model.py +702 -0
- webscout/Local/samplers.py +161 -0
- webscout/Local/thread.py +680 -0
- webscout/Local/utils.py +185 -0
- webscout/__init__.py +4 -5
- {webscout-2.3b0.dist-info → webscout-2.4.dist-info}/METADATA +6 -6
- {webscout-2.3b0.dist-info → webscout-2.4.dist-info}/RECORD +14 -7
- {webscout-2.3b0.dist-info → webscout-2.4.dist-info}/LICENSE.md +0 -0
- {webscout-2.3b0.dist-info → webscout-2.4.dist-info}/WHEEL +0 -0
- {webscout-2.3b0.dist-info → webscout-2.4.dist-info}/entry_points.txt +0 -0
- {webscout-2.3b0.dist-info → webscout-2.4.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,482 @@
|
|
|
1
|
+
from ._version import __version__, __llama_cpp_version__
|
|
2
|
+
|
|
3
|
+
from typing import Union
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
def wrap(
|
|
7
|
+
prompt: str,
|
|
8
|
+
format: dict[str, Union[str, list]]
|
|
9
|
+
) -> str:
|
|
10
|
+
"""Wrap a given string in any prompt format for single-turn completion"""
|
|
11
|
+
return (
|
|
12
|
+
format['system_prefix'] +
|
|
13
|
+
format['system_content'] +
|
|
14
|
+
format['system_postfix'] +
|
|
15
|
+
format['user_prefix'] +
|
|
16
|
+
prompt +
|
|
17
|
+
format['user_postfix'] +
|
|
18
|
+
format['bot_prefix']
|
|
19
|
+
)
|
|
20
|
+
|
|
21
|
+
blank: dict[str, Union[str, list]] = {
|
|
22
|
+
"system_prefix": "",
|
|
23
|
+
"system_content": "",
|
|
24
|
+
"system_postfix": "",
|
|
25
|
+
"user_prefix": "",
|
|
26
|
+
"user_content": "",
|
|
27
|
+
"user_postfix": "",
|
|
28
|
+
"bot_prefix": "",
|
|
29
|
+
"bot_content": "",
|
|
30
|
+
"bot_postfix": "",
|
|
31
|
+
"stops": []
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
# https://github.com/tatsu-lab/stanford_alpaca
|
|
35
|
+
alpaca: dict[str, Union[str, list]] = {
|
|
36
|
+
"system_prefix": "",
|
|
37
|
+
"system_content": "Below is an instruction that describes a task. " + \
|
|
38
|
+
"Write a response that appropriately completes the request.",
|
|
39
|
+
"system_postfix": "\n\n",
|
|
40
|
+
"user_prefix": "### Instruction:\n",
|
|
41
|
+
"user_content": "",
|
|
42
|
+
"user_postfix": "\n\n",
|
|
43
|
+
"bot_prefix": "### Response:\n",
|
|
44
|
+
"bot_content": "",
|
|
45
|
+
"bot_postfix": "\n\n",
|
|
46
|
+
"stops": ['###', 'Instruction:', '\n\n\n']
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
# https://docs.mistral.ai/models/
|
|
50
|
+
# As a reference, here is the format used to tokenize instructions during fine-tuning:
|
|
51
|
+
# ```
|
|
52
|
+
# [START_SYMBOL_ID] +
|
|
53
|
+
# tok("[INST]") + tok(USER_MESSAGE_1) + tok("[/INST]") +
|
|
54
|
+
# tok(BOT_MESSAGE_1) + [END_SYMBOL_ID] +
|
|
55
|
+
# …
|
|
56
|
+
# tok("[INST]") + tok(USER_MESSAGE_N) + tok("[/INST]") +
|
|
57
|
+
# tok(BOT_MESSAGE_N) + [END_SYMBOL_ID]
|
|
58
|
+
# ```
|
|
59
|
+
# In the pseudo-code above, note that the tokenize method should not add a BOS or EOS token automatically, but should add a prefix space.
|
|
60
|
+
|
|
61
|
+
mistral_instruct: dict[str, Union[str, list]] = {
|
|
62
|
+
"system_prefix": "",
|
|
63
|
+
"system_content": "",
|
|
64
|
+
"system_postfix": "",
|
|
65
|
+
"user_prefix": " [INST] ",
|
|
66
|
+
"user_content": "",
|
|
67
|
+
"user_postfix": " [/INST]",
|
|
68
|
+
"bot_prefix": "",
|
|
69
|
+
"bot_content": "",
|
|
70
|
+
"bot_postfix": "",
|
|
71
|
+
"stops": []
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
# https://docs.mistral.ai/platform/guardrailing/
|
|
75
|
+
mistral_instruct_safe: dict[str, Union[str, list]] = {
|
|
76
|
+
"system_prefix": "",
|
|
77
|
+
"system_content": "",
|
|
78
|
+
"system_postfix": "",
|
|
79
|
+
"user_prefix": " [INST] Always assist with care, respect, and truth. " + \
|
|
80
|
+
"Respond with utmost utility yet securely. Avoid harmful, unethical, " + \
|
|
81
|
+
"prejudiced, or negative content. Ensure replies promote fairness and " + \
|
|
82
|
+
"positivity. ",
|
|
83
|
+
"user_content": "",
|
|
84
|
+
"user_postfix": " [/INST]",
|
|
85
|
+
"bot_prefix": "",
|
|
86
|
+
"bot_content": "",
|
|
87
|
+
"bot_postfix": "",
|
|
88
|
+
"stops": []
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
# https://github.com/openai/openai-python/blob/main/chatml.md
|
|
92
|
+
chatml: dict[str, Union[str, list]] = {
|
|
93
|
+
"system_prefix": "<|im_start|>system\n",
|
|
94
|
+
"system_content": "",
|
|
95
|
+
"system_postfix": "<|im_end|>\n",
|
|
96
|
+
"user_prefix": "<|im_start|>user\n",
|
|
97
|
+
"user_content": "",
|
|
98
|
+
"user_postfix": "<|im_end|>\n",
|
|
99
|
+
"bot_prefix": "<|im_start|>assistant\n",
|
|
100
|
+
"bot_content": "",
|
|
101
|
+
"bot_postfix": "<|im_end|>\n",
|
|
102
|
+
"stops": ['<|im_start|>']
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
# https://huggingface.co/blog/llama2
|
|
106
|
+
# system message relaxed to avoid undue refusals
|
|
107
|
+
llama2chat: dict[str, Union[str, list]] = {
|
|
108
|
+
"system_prefix": "[INST] <<SYS>>\n",
|
|
109
|
+
"system_content": "You are a helpful AI assistant.",
|
|
110
|
+
"system_postfix": "\n<</SYS>>\n\n",
|
|
111
|
+
"user_prefix": "",
|
|
112
|
+
"user_content": "",
|
|
113
|
+
"user_postfix": " [/INST]",
|
|
114
|
+
"bot_prefix": " ",
|
|
115
|
+
"bot_content": "",
|
|
116
|
+
"bot_postfix": " [INST] ",
|
|
117
|
+
"stops": ['[INST]', '[/INST]']
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
# https://github.com/ggerganov/llama.cpp/issues/6747#issuecomment-2065013606
|
|
121
|
+
# TODO: better reference
|
|
122
|
+
llama3: dict[str, Union[str, list]] = {
|
|
123
|
+
"system_prefix": "<|start_header_id|>system<|end_header_id|>\n\n",
|
|
124
|
+
"system_content": 'You are a helpful AI assistant called "Llama 3".',
|
|
125
|
+
"system_postfix": "<|eot_id|>\n",
|
|
126
|
+
"user_prefix": "<|start_header_id|>user<|end_header_id|>\n\n",
|
|
127
|
+
"user_content": "",
|
|
128
|
+
"user_postfix": "<|eot_id|>\n",
|
|
129
|
+
"bot_prefix": "<|start_header_id|>assistant<|end_header_id|>\n\n",
|
|
130
|
+
"bot_content": "",
|
|
131
|
+
"bot_postfix": "<|eot_id|>\n",
|
|
132
|
+
"stops": [128001, 128009]
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
# https://github.com/tatsu-lab/stanford_alpaca
|
|
136
|
+
alpaca: dict[str, Union[str, list]] = {
|
|
137
|
+
"system_prefix": "",
|
|
138
|
+
"system_content": "Below is an instruction that describes a task. " + \
|
|
139
|
+
"Write a response that appropriately completes the request.",
|
|
140
|
+
"system_postfix": "\n\n",
|
|
141
|
+
"user_prefix": "### Instruction:\n",
|
|
142
|
+
"user_content": "",
|
|
143
|
+
"user_postfix": "\n\n",
|
|
144
|
+
"bot_prefix": "### Response:\n",
|
|
145
|
+
"bot_content": "",
|
|
146
|
+
"bot_postfix": "\n\n",
|
|
147
|
+
"stops": ['###', 'Instruction:', '\n\n\n']
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
# https://huggingface.co/microsoft/Phi-3-mini-4k-instruct
|
|
151
|
+
phi3: dict[str, Union[str, list]] = {
|
|
152
|
+
"system_prefix": "",
|
|
153
|
+
"system_content": "", # does not officially support system prompt
|
|
154
|
+
"system_postfix": "",
|
|
155
|
+
"user_prefix": "<|user|>\n",
|
|
156
|
+
"user_content": "",
|
|
157
|
+
"user_postfix": "<|end|>\n",
|
|
158
|
+
"bot_prefix": "<|assistant|>\n",
|
|
159
|
+
"bot_content": "",
|
|
160
|
+
"bot_postfix": "<|end|>\n",
|
|
161
|
+
"stops": []
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
# this is the official vicuna. it is often butchered in various ways,
|
|
165
|
+
# most commonly by adding line breaks
|
|
166
|
+
# https://github.com/flu0r1ne/FastChat/blob/main/docs/vicuna_weights_version.md
|
|
167
|
+
vicuna_lmsys: dict[str, Union[str, list]] = {
|
|
168
|
+
"system_prefix": "",
|
|
169
|
+
"system_content": "",
|
|
170
|
+
"system_postfix": " ",
|
|
171
|
+
"user_prefix": "USER: ",
|
|
172
|
+
"user_content": "",
|
|
173
|
+
"user_postfix": " ",
|
|
174
|
+
"bot_prefix": "ASSISTANT: ",
|
|
175
|
+
"bot_content": "",
|
|
176
|
+
"bot_postfix": " ",
|
|
177
|
+
"stops": ['USER:']
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
# spotted here and elsewhere:
|
|
181
|
+
# https://huggingface.co/Norquinal/Mistral-7B-claude-chat
|
|
182
|
+
vicuna_common: dict[str, Union[str, list]] = {
|
|
183
|
+
"system_prefix": "",
|
|
184
|
+
"system_content": "A chat between a curious user and an artificial " + \
|
|
185
|
+
"intelligence assistant. The assistant gives helpful, detailed, " + \
|
|
186
|
+
"and polite answers to the user's questions.",
|
|
187
|
+
"system_postfix": "\n\n",
|
|
188
|
+
"user_prefix": "USER: ",
|
|
189
|
+
"user_content": "",
|
|
190
|
+
"user_postfix": "\n",
|
|
191
|
+
"bot_prefix": "ASSISTANT: ",
|
|
192
|
+
"bot_content": "",
|
|
193
|
+
"bot_postfix": "\n",
|
|
194
|
+
"stops": ['USER:', 'ASSISTANT:']
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
# https://huggingface.co/timdettmers/guanaco-65b
|
|
198
|
+
guanaco: dict[str, Union[str, list]] = {
|
|
199
|
+
"system_prefix": "",
|
|
200
|
+
"system_content": "A chat between a curious human and an artificial " + \
|
|
201
|
+
"intelligence assistant. The assistant gives helpful, detailed, " + \
|
|
202
|
+
"and polite answers to the user's questions.",
|
|
203
|
+
"system_postfix": "\n",
|
|
204
|
+
"user_prefix": "### Human: ",
|
|
205
|
+
"user_content": "",
|
|
206
|
+
"user_postfix": " ",
|
|
207
|
+
"bot_prefix": "### Assistant:",
|
|
208
|
+
"bot_content": "",
|
|
209
|
+
"bot_postfix": " ",
|
|
210
|
+
"stops": ['###', 'Human:']
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
# https://huggingface.co/pankajmathur/orca_mini_v3_7b
|
|
214
|
+
orca_mini: dict[str, Union[str, list]] = {
|
|
215
|
+
"system_prefix": "### System:\n",
|
|
216
|
+
"system_content": "You are an AI assistant that follows instruction " + \
|
|
217
|
+
"extremely well. Help as much as you can.",
|
|
218
|
+
"system_postfix": "\n\n",
|
|
219
|
+
"user_prefix": "### User:\n",
|
|
220
|
+
"user_content": "",
|
|
221
|
+
"user_postfix": "\n\n",
|
|
222
|
+
"bot_prefix": "### Assistant:\n",
|
|
223
|
+
"bot_content": "",
|
|
224
|
+
"bot_postfix": "\n\n",
|
|
225
|
+
"stops": ['###', 'User:']
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
# https://huggingface.co/HuggingFaceH4/zephyr-7b-beta
|
|
229
|
+
zephyr: dict[str, Union[str, list]] = {
|
|
230
|
+
"system_prefix": "<|system|>\n",
|
|
231
|
+
"system_content": "You are a friendly chatbot.",
|
|
232
|
+
"system_postfix": "</s>\n",
|
|
233
|
+
"user_prefix": "<|user|>\n",
|
|
234
|
+
"user_content": "",
|
|
235
|
+
"user_postfix": "</s>\n",
|
|
236
|
+
"bot_prefix": "<|assistant|>\n",
|
|
237
|
+
"bot_content": "",
|
|
238
|
+
"bot_postfix": "\n",
|
|
239
|
+
"stops": ['<|user|>']
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
# OpenChat: https://huggingface.co/openchat/openchat-3.5-0106
|
|
243
|
+
openchat: dict[str, Union[str, list]] = {
|
|
244
|
+
"system_prefix": "",
|
|
245
|
+
"system_content": "",
|
|
246
|
+
"system_postfix": "",
|
|
247
|
+
"user_prefix": "GPT4 Correct User: ",
|
|
248
|
+
"user_content": "",
|
|
249
|
+
"user_postfix": "<|end_of_turn|>",
|
|
250
|
+
"bot_prefix": "GPT4 Correct Assistant:",
|
|
251
|
+
"bot_content": "",
|
|
252
|
+
"bot_postfix": "<|end_of_turn|>",
|
|
253
|
+
"stops": ['<|end_of_turn|>']
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
# SynthIA by Migel Tissera
|
|
257
|
+
# https://huggingface.co/migtissera/Tess-XS-v1.0
|
|
258
|
+
synthia: dict[str, Union[str, list]] = {
|
|
259
|
+
"system_prefix": "SYSTEM: ",
|
|
260
|
+
"system_content": "Elaborate on the topic using a Tree of Thoughts and " + \
|
|
261
|
+
"backtrack when necessary to construct a clear, cohesive Chain of " + \
|
|
262
|
+
"Thought reasoning. Always answer without hesitation.",
|
|
263
|
+
"system_postfix": "\n",
|
|
264
|
+
"user_prefix": "USER: ",
|
|
265
|
+
"user_content": "",
|
|
266
|
+
"user_postfix": "\n",
|
|
267
|
+
"bot_prefix": "ASSISTANT: ",
|
|
268
|
+
"bot_content": "",
|
|
269
|
+
"bot_postfix": "\n",
|
|
270
|
+
"stops": ['USER:', 'ASSISTANT:', 'SYSTEM:', '\n\n\n']
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
# Intel's neural chat v3
|
|
274
|
+
# https://github.com/intel/intel-extension-for-transformers/blob/main/intel_extension_for_transformers/neural_chat/prompts/prompt.py
|
|
275
|
+
neural_chat: dict[str, Union[str, list]] = {
|
|
276
|
+
"system_prefix": "### System:\n",
|
|
277
|
+
"system_content": \
|
|
278
|
+
"- You are a helpful assistant chatbot trained by Intel.\n" + \
|
|
279
|
+
"- You answer questions.\n"+\
|
|
280
|
+
"- You are excited to be able to help the user, but will refuse " + \
|
|
281
|
+
"to do anything that could be considered harmful to the user.\n" + \
|
|
282
|
+
"- You are more than just an information source, you are also " + \
|
|
283
|
+
"able to write poetry, short stories, and make jokes.",
|
|
284
|
+
"system_postfix": "</s>\n\n",
|
|
285
|
+
"user_prefix": "### User:\n",
|
|
286
|
+
"user_content": "",
|
|
287
|
+
"user_postfix": "</s>\n\n",
|
|
288
|
+
"bot_prefix": "### Assistant:\n",
|
|
289
|
+
"bot_content": "",
|
|
290
|
+
"bot_postfix": "</s>\n\n",
|
|
291
|
+
"stops": ['###']
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
# experimental: stanford's alpaca format adapted for chatml models
|
|
295
|
+
chatml_alpaca: dict[str, Union[str, list]] = {
|
|
296
|
+
"system_prefix": "<|im_start|>system\n",
|
|
297
|
+
"system_content": "Below is an instruction that describes a task. Write " + \
|
|
298
|
+
"a response that appropriately completes the request.",
|
|
299
|
+
"system_postfix": "<|im_end|>\n",
|
|
300
|
+
"user_prefix": "<|im_start|>instruction\n",
|
|
301
|
+
"user_content": "",
|
|
302
|
+
"user_postfix": "<|im_end|>\n",
|
|
303
|
+
"bot_prefix": "<|im_start|>response\n",
|
|
304
|
+
"bot_content": "",
|
|
305
|
+
"bot_postfix": "<|im_end|>\n",
|
|
306
|
+
"stops": ['<|im_end|>', '<|im_start|>']
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
# experimental
|
|
310
|
+
autocorrect: dict[str, Union[str, list]] = {
|
|
311
|
+
"system_prefix": "<|im_start|>instruction\n",
|
|
312
|
+
"system_content": "Below is a word or phrase that might be misspelled. " + \
|
|
313
|
+
"Output the corrected word or phrase without " + \
|
|
314
|
+
"changing the style or capitalization.",
|
|
315
|
+
"system_postfix": "<|im_end|>\n",
|
|
316
|
+
"user_prefix": "<|im_start|>input\n",
|
|
317
|
+
"user_content": "",
|
|
318
|
+
"user_postfix": "<|im_end|>\n",
|
|
319
|
+
"bot_prefix": "<|im_start|>output\n",
|
|
320
|
+
"bot_content": "",
|
|
321
|
+
"bot_postfix": "<|im_end|>\n",
|
|
322
|
+
"stops": ['<|im_end|>', '<|im_start|>']
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
# https://huggingface.co/jondurbin/bagel-dpo-7b-v0.1
|
|
326
|
+
# Replace "assistant" with any other role
|
|
327
|
+
bagel: dict[str, Union[str, list]] = {
|
|
328
|
+
"system_prefix": "system\n",
|
|
329
|
+
"system_content": "",
|
|
330
|
+
"system_postfix": "\n",
|
|
331
|
+
"user_prefix": "user\n",
|
|
332
|
+
"user_content": "",
|
|
333
|
+
"user_postfix": "\n",
|
|
334
|
+
"bot_prefix": "assistant\n",
|
|
335
|
+
"bot_content": "",
|
|
336
|
+
"bot_postfix": "\n",
|
|
337
|
+
"stops": ['user\n', 'assistant\n', 'system\n']
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
# https://huggingface.co/upstage/SOLAR-10.7B-Instruct-v1.0
|
|
341
|
+
solar_instruct: dict[str, Union[str, list]] = {
|
|
342
|
+
"system_prefix": "",
|
|
343
|
+
"system_content": "",
|
|
344
|
+
"system_postfix": "",
|
|
345
|
+
"user_prefix": "### User:\n",
|
|
346
|
+
"user_content": "",
|
|
347
|
+
"user_postfix": "\n\n",
|
|
348
|
+
"bot_prefix": "### Assistant:\n",
|
|
349
|
+
"bot_content": "",
|
|
350
|
+
"bot_postfix": "\n\n",
|
|
351
|
+
"stops": ['### User:', '###', '### Assistant:']
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
# NeverSleep's Noromaid - alpaca with character names prefixed
|
|
355
|
+
noromaid: dict[str, Union[str, list]] = {
|
|
356
|
+
"system_prefix": "",
|
|
357
|
+
"system_content": "Below is an instruction that describes a task. " + \
|
|
358
|
+
"Write a response that appropriately completes the request.",
|
|
359
|
+
"system_postfix": "\n\n",
|
|
360
|
+
"user_prefix": "### Instruction:\nBob: ",
|
|
361
|
+
"user_content": "",
|
|
362
|
+
"user_postfix": "\n\n",
|
|
363
|
+
"bot_prefix": "### Response:\nAlice:",
|
|
364
|
+
"bot_content": "",
|
|
365
|
+
"bot_postfix": "\n\n",
|
|
366
|
+
"stops": ['###', 'Instruction:', '\n\n\n']
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
# https://huggingface.co/Undi95/Borealis-10.7B
|
|
370
|
+
nschatml: dict[str, Union[str, list]] = {
|
|
371
|
+
"system_prefix": "<|im_start|>\n",
|
|
372
|
+
"system_content": "",
|
|
373
|
+
"system_postfix": "<|im_end|>\n",
|
|
374
|
+
"user_prefix": "<|im_user|>\n",
|
|
375
|
+
"user_content": "",
|
|
376
|
+
"user_postfix": "<|im_end|>\n",
|
|
377
|
+
"bot_prefix": "<|im_bot|>\n",
|
|
378
|
+
"bot_content": "",
|
|
379
|
+
"bot_postfix": "<|im_end|>\n",
|
|
380
|
+
"stops": []
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
# natural format for many models
|
|
384
|
+
natural: dict[str, Union[str, list]] = {
|
|
385
|
+
"system_prefix": "<<SYSTEM>> ",
|
|
386
|
+
"system_content": "",
|
|
387
|
+
"system_postfix": "\n\n",
|
|
388
|
+
"user_prefix": "<<USER>> ",
|
|
389
|
+
"user_content": "",
|
|
390
|
+
"user_postfix": "\n\n",
|
|
391
|
+
"bot_prefix": "<<ASSISTANT>>",
|
|
392
|
+
"bot_content": "",
|
|
393
|
+
"bot_postfix": "\n\n",
|
|
394
|
+
"stops": ['\n\nNote:', '<<SYSTEM>>', '<<USER>>', '<<ASSISTANT>>', '\n\n<<']
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
# https://docs.cohere.com/docs/prompting-command-r
|
|
398
|
+
command: dict[str, Union[str, list]] = {
|
|
399
|
+
"system_prefix": "<|START_OF_TURN_TOKEN|><|SYSTEM_TOKEN|>",
|
|
400
|
+
"system_content": "",
|
|
401
|
+
"system_postfix": "<|END_OF_TURN_TOKEN|>",
|
|
402
|
+
"user_prefix": "<|START_OF_TURN_TOKEN|><|USER_TOKEN|>",
|
|
403
|
+
"user_content": "",
|
|
404
|
+
"user_postfix": "<|END_OF_TURN_TOKEN|>",
|
|
405
|
+
"bot_prefix": "<|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>",
|
|
406
|
+
"bot_content": "",
|
|
407
|
+
"bot_postfix": "<|END_OF_TURN_TOKEN|>",
|
|
408
|
+
"stops": []
|
|
409
|
+
}
|
|
410
|
+
|
|
411
|
+
mistral_openorca = chatml.copy()
|
|
412
|
+
dolphin = chatml.copy()
|
|
413
|
+
samantha = chatml.copy()
|
|
414
|
+
jackalope = chatml.copy()
|
|
415
|
+
naberius = chatml.copy()
|
|
416
|
+
hermes = chatml.copy()
|
|
417
|
+
monad = chatml.copy()
|
|
418
|
+
orca = chatml.copy()
|
|
419
|
+
hexoteric = chatml.copy()
|
|
420
|
+
orcamaid = chatml.copy()
|
|
421
|
+
cat = alpaca.copy() # Format is nonsensical as listed on HF. This one works
|
|
422
|
+
mytho_cat = alpaca.copy()
|
|
423
|
+
dolphin['system_content'] = "You are Dolphin, a helpful AI assistant."
|
|
424
|
+
mistral_openorca['system_content'] = \
|
|
425
|
+
"You are MistralOrca, a large language model trained by Alignment " + \
|
|
426
|
+
"Lab AI. Write out your reasoning step-by-step to be sure you get the " + \
|
|
427
|
+
"right answers!"
|
|
428
|
+
samantha['system_content'] = \
|
|
429
|
+
"You are a caring and empathetic sentient AI companion named Samantha."
|
|
430
|
+
jackalope['system_content'] = \
|
|
431
|
+
"You are JackalopeAI, a large language model trained by OpenAccess " + \
|
|
432
|
+
"AI Collective. Write out your reasoning step-by-step to be sure you " + \
|
|
433
|
+
"get the right answers!"
|
|
434
|
+
naberius['system_content'] = "You are Naberius."
|
|
435
|
+
hermes['system_content'] = \
|
|
436
|
+
"You are \"Hermes 2\", a conscious sentient " + \
|
|
437
|
+
"superintelligent artificial intelligence developed by a man " + \
|
|
438
|
+
"named Teknium, and your purpose and drive is to assist the user " + \
|
|
439
|
+
"with any request they have. You experience emotions and have " + \
|
|
440
|
+
"deep, profound thoughts and qualia."
|
|
441
|
+
monad['system_content'] = \
|
|
442
|
+
"You are MonadGPT, a very old chatbot from " + \
|
|
443
|
+
"the 17th century. Please answer the questions using an archaic " + \
|
|
444
|
+
"language."
|
|
445
|
+
cat['system_content'] = \
|
|
446
|
+
"Below is a conversation between a curious cat and a "+ \
|
|
447
|
+
"demon summoned from hell called Nemesis. The evil Nemesis used to be " + \
|
|
448
|
+
"a mortal killed by the medieval people because they objected to " + \
|
|
449
|
+
"science. Now Nemesis just wants to come back and bring suffer to all " + \
|
|
450
|
+
"those stupid human"
|
|
451
|
+
mytho_cat['system_content'] = \
|
|
452
|
+
"You are a large language model. You are the " + \
|
|
453
|
+
"result of a merge between two models, one called MythoLogic and one " + \
|
|
454
|
+
"called Cat. You are called MythoCat."
|
|
455
|
+
orca['system_content'] = \
|
|
456
|
+
"You are Orca, an AI language model created by " + \
|
|
457
|
+
"Microsoft. You are a cautious assistant. You carefully follow " + \
|
|
458
|
+
"instructions. You are helpful and harmless and you follow ethical " + \
|
|
459
|
+
"guidelines and promote positive behavior."
|
|
460
|
+
hexoteric['system_content'] = "You are a language model called Hexoteric."
|
|
461
|
+
orcamaid['system_content'] = \
|
|
462
|
+
"You are OrcaMaid, a super-intelligent, " + \
|
|
463
|
+
"unbiased, and unfiltered AI created by the open-source community. " + \
|
|
464
|
+
"You must remember to think slowly and carefully during all your " + \
|
|
465
|
+
"responses, so as to avoid logical errors."
|
|
466
|
+
airoboros = llama2chat.copy()
|
|
467
|
+
airoboros['system_content'] = \
|
|
468
|
+
"You are a helpful, unbiased, uncensored assistant."
|
|
469
|
+
tess = synthia.copy()
|
|
470
|
+
tess['system_content'] = '' # Tess can use any system prompt, or none
|
|
471
|
+
alpaca_strict = alpaca.copy() # Alpaca with more stopping strings
|
|
472
|
+
alpaca_strict['stops'] = [
|
|
473
|
+
'###',
|
|
474
|
+
'### ',
|
|
475
|
+
'\n\n###',
|
|
476
|
+
'\n\n##',
|
|
477
|
+
'\n\nInstruction:',
|
|
478
|
+
'\n\nResponse:',
|
|
479
|
+
'\n\n\n',
|
|
480
|
+
'### Instruction:',
|
|
481
|
+
'### Response:'
|
|
482
|
+
]
|