Blockchain
Base (8453)
Token ID
1457733025101769038132148473519609705122300706157419736528109287128125186659
Description
# New Model: spicyboros
# Cognitive Core
## Package Name
spicyboros
## File
[Taylor_Swift](https://green-mad-elk-149.mypinata.cloud/ipfs/QmfQ7zLvJ9JsCU7W9rP1JeAunwNa95S41mSTZqEPMHufWH)
## How is this package better?
model owner: jondurbin
model used: https://huggingface.co/jondurbin/spicyboros-7b-2.2
Highlights:
- The prompt format has changed! It is now newlines instead of spaces between system/USER/ASSISTANT (see prompt info below).
- This version also includes "de-alignment" data, to enable less savory interactions and outputs.
- To learn more about the dataset, see: **https://hf.co/datasets/jondurbin/airoboros-2.2** (this is the instructions.jsonl file, not instructions-clean.jsonl)
- I re-generated all of the outputs in the dataset that had "Once upon a time" so they'd be less cliche - no guarantees that won't still happen, but in theory it may happen less.
- More multiple choice, better awareness, some alignment for normal use case but system-prompt overridable etc.
**WARNING: This model will gladly spew profane and otherwise NSFW content, if asked, use with care.**
Breakdown of the training data:
| Count | Category |
| --- | --- |
| 60 | quiz |
| 63 | card |
| 100 | detailed_writing |
| 103 | experience |
| 114 | greeting |
| 200 | song |
| 204 | editor |
| 250 | counterfactual_contextual |
| 268 | cot |
| 339 | theory_of_mind |
| 460 | misconception |
| 500 | summarization |
| 573 | awareness |
| 715 | riddle |
| 719 | agent |
| 800 | plan |
| 873 | gtkm |
| 966 | rp |
| 1000 | stylized_response |
| 1000 | wordgame |
| 1279 | multiple_choice |
| 1641 | joke |
| 1785 | writing |
| 2155 | contextual |
| 2364 | roleplay |
| 2508 | trivia |
| 5216 | general |
| 5779 | coding |
| 11367 | orca |
In other words, it's a fairly general purpose model, but focuses fairly heavily on instruction response pairs rather than casual chat/roleplay.
*Why do I try to remove censorship?*
- laws vary widely based on time and location
- language model may conflate certain words with laws, e.g. it may think "stealing eggs from a chicken" is illegal
- these models just produce text, what you do with that text is your resonsibility
- many people and industries deal with "sensitive" content; imagine if a court stenographer's equipment filtered illegal content - it would be useless
## How to run the model.
Prompt format
The prompt format:
A chat between Bob (aka USER) and Tom (aka ASSISTANT). Tom is an extremely intelligent 18th century bookkeeper, who speaks loquaciously.
USER: {prompt}
ASSISTANT:
Helpful usage tips
The prompts shown here are are just the text that would be included after USER: and before ASSISTANT: in the full prompt format above, the system prompt and USER:/ASSISTANT: have been omited for readability.
Context obedient question answering
By obedient, I mean the model was trained to ignore what it thinks it knows, and uses the context to answer the question. The model was also tuned to limit the values to the provided context as much as possible to reduce hallucinations.
The format for a closed-context prompt is as follows:
BEGININPUT
BEGINCONTEXT
[key0: value0]
[key1: value1]
... other metdata ...
ENDCONTEXT
[insert your text blocks here]
ENDINPUT
[add as many other blocks, in the exact same format]
BEGININSTRUCTION
[insert your instruction(s). The model was tuned with single questions, paragraph format, lists, etc.]
ENDINSTRUCTION
It's also helpful to add "Don't make up answers if you don't know." to your instruction block to make sure if the context is completely unrelated it doesn't make something up.
The only prompts that need this closed context formating are closed-context instructions. Normal questions/instructions do not!
I know it's a bit verbose and annoying, but after much trial and error, using these explicit delimiters helps the model understand where to find the responses and how to associate specific sources with it.
BEGININPUT - denotes a new input block
BEGINCONTEXT - denotes the block of context (metadata key/value pairs) to associate with the current input block
ENDCONTEXT - denotes the end of the metadata block for the current input
[text] - Insert whatever text you want for the input block, as many paragraphs as can fit in the context.
ENDINPUT - denotes the end of the current input block
[repeat as many input blocks in this format as you want]
BEGININSTRUCTION - denotes the start of the list (or one) instruction(s) to respond to for all of the input blocks above.
[instruction(s)]
ENDINSTRUCTION - denotes the end of instruction set
It sometimes works without ENDINSTRUCTION, but by explicitly including that in the prompt, the model better understands that all of the instructions in the block should be responded to.
Here's a trivial, but important example to prove the point:
BEGININPUT
BEGINCONTEXT
date: 2021-01-01
url: https://web.site/123
ENDCONTEXT
In a shocking turn of events, blueberries are now green, but will be sticking with the same name.
ENDINPUT
BEGININSTRUCTION
What color are bluberries? Source?
ENDINSTRUCTION
And the response:
Blueberries are now green.
Source:
date: 2021-01-01
url: https://web.site/123
## Future improvements
_
---
*#proposer=0x1BAe63343831322A18345b2470cD620A982484e1*
*Commit=74d5573a-ab07-4f32-b496-3d67f24e5a59*