prompt format
Browse files
app.py
CHANGED
@@ -27,11 +27,25 @@ pipe = Llama(
|
|
27 |
model_path=model_path
|
28 |
)
|
29 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
def predict(message: str, history: List[List[str]], max_new_tokens: int = DEFAULT_MAX_NEW_TOKENS, progress=gr.Progress()):
|
31 |
if not message:
|
32 |
return "", history, ""
|
33 |
|
34 |
-
prompt = message
|
35 |
history.append([message, ""])
|
36 |
|
37 |
# Initialize reply for this round
|
|
|
27 |
model_path=model_path
|
28 |
)
|
29 |
|
30 |
+
def format_prompt(message: str, history: List[List[str]]):
|
31 |
+
prompt = "<|begin_of_text|>" # Start with the begin of text token
|
32 |
+
prompt += "<|im_start|>system\n<|im_end|>\n" # Assuming there's no system prompt here, just adding system role tags
|
33 |
+
|
34 |
+
for user_msg, assistant_msg in history:
|
35 |
+
prompt += f"<|im_start|>user\n{user_msg}<|im_end|>\n"
|
36 |
+
if assistant_msg:
|
37 |
+
prompt += f"<|im_start|>assistant\n{assistant_msg}<|im_end|>\n"
|
38 |
+
|
39 |
+
prompt += f"<|im_start|>user\n{message}<|im_end|>\n"
|
40 |
+
prompt += "<|im_start|>assistant\n" # Start of the Assistant's part
|
41 |
+
|
42 |
+
return prompt
|
43 |
+
|
44 |
def predict(message: str, history: List[List[str]], max_new_tokens: int = DEFAULT_MAX_NEW_TOKENS, progress=gr.Progress()):
|
45 |
if not message:
|
46 |
return "", history, ""
|
47 |
|
48 |
+
prompt = format_prompt(message, history)
|
49 |
history.append([message, ""])
|
50 |
|
51 |
# Initialize reply for this round
|