Update README.md
Browse files
README.md
CHANGED
@@ -68,6 +68,19 @@ BEGININSTRUCTION
|
|
68 |
ENDINSTRUCTION
|
69 |
```
|
70 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
Here's a trivial, but important example to prove the point:
|
72 |
```
|
73 |
BEGININPUT
|
|
|
68 |
ENDINSTRUCTION
|
69 |
```
|
70 |
|
71 |
+
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.
|
72 |
+
- `BEGININPUT` - denotes a new input block
|
73 |
+
- `BEGINCONTEXT` - denotes the block of context (metadata key/value pairs) to associate with the current input block
|
74 |
+
- `ENDCONTEXT` - denotes the end of the metadata block for the current input
|
75 |
+
- [text] - Insert whatever text you want for the input block, as many paragraphs as can fit in the context.
|
76 |
+
- `ENDINPUT` - denotes the end of the current input block
|
77 |
+
- [repeat as many input blocks in this format as you want]
|
78 |
+
- `BEGININSTRUCTION` - denotes the start of the list (or one) instruction(s) to respond to for all of the input blocks above.
|
79 |
+
- [instruction(s)]
|
80 |
+
- `ENDINSTRUCTION` - denotes the end of instruction set
|
81 |
+
|
82 |
+
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.
|
83 |
+
|
84 |
Here's a trivial, but important example to prove the point:
|
85 |
```
|
86 |
BEGININPUT
|