Spaces:
Sleeping
Sleeping
DylanZimmer commited on
Commit ·
bff1060
1
Parent(s): 4b234e7
Historyis list?
Browse files
app.py
CHANGED
|
@@ -22,21 +22,8 @@ system_prompt_default = (
|
|
| 22 |
chatbot.tokenizer.bos_token = "<sos>"
|
| 23 |
chatbot.tokenizer.eos_token = "<|endoftext|>"
|
| 24 |
|
| 25 |
-
# Helper to manually apply chat template
|
| 26 |
-
def apply_tiny_chat_template(messages):
|
| 27 |
-
prompt = ""
|
| 28 |
-
for message in messages:
|
| 29 |
-
role = message["role"]
|
| 30 |
-
content = message["content"].strip()
|
| 31 |
-
if role == "system":
|
| 32 |
-
prompt += f"<|system|> {content}\n"
|
| 33 |
-
elif role == "user":
|
| 34 |
-
prompt += f"<|instruction|> {content}\n"
|
| 35 |
-
elif role == "assistant":
|
| 36 |
-
prompt += f"<|response|> {content}\n"
|
| 37 |
-
return prompt
|
| 38 |
-
|
| 39 |
def chat_fxn_caller(message, history, temperature=0.6, top_p=0.95, max_tokens=128):
|
|
|
|
| 40 |
messages = []
|
| 41 |
|
| 42 |
# Fix history unpacking for Gradio ChatInterface
|
|
@@ -49,10 +36,23 @@ def chat_fxn_caller(message, history, temperature=0.6, top_p=0.95, max_tokens=12
|
|
| 49 |
|
| 50 |
messages.append({"role": "user", "content": message})
|
| 51 |
|
| 52 |
-
|
| 53 |
-
|
| 54 |
-
prompt = chatbot.tokenizer.apply_chat_template(messages, tokenize=False)
|
| 55 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 56 |
|
| 57 |
# Generate response
|
| 58 |
response = chatbot(
|
|
|
|
| 22 |
chatbot.tokenizer.bos_token = "<sos>"
|
| 23 |
chatbot.tokenizer.eos_token = "<|endoftext|>"
|
| 24 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 25 |
def chat_fxn_caller(message, history, temperature=0.6, top_p=0.95, max_tokens=128):
|
| 26 |
+
"""
|
| 27 |
messages = []
|
| 28 |
|
| 29 |
# Fix history unpacking for Gradio ChatInterface
|
|
|
|
| 36 |
|
| 37 |
messages.append({"role": "user", "content": message})
|
| 38 |
|
| 39 |
+
"""
|
| 40 |
+
messages = []
|
|
|
|
| 41 |
|
| 42 |
+
for turn in history:
|
| 43 |
+
# Each turn is [user_msg, bot_msg] or [user_msg] depending on history length
|
| 44 |
+
if isinstance(turn, list):
|
| 45 |
+
if len(turn) > 0:
|
| 46 |
+
messages.append({"role": "user", "content": str(turn[0])})
|
| 47 |
+
if len(turn) > 1:
|
| 48 |
+
messages.append({"role": "assistant", "content": str(turn[1])})
|
| 49 |
+
else:
|
| 50 |
+
messages.append({"role": "user", "content": str(turn)})
|
| 51 |
+
|
| 52 |
+
# Append current user message
|
| 53 |
+
messages.append({"role": "user", "content": str(message)})
|
| 54 |
+
|
| 55 |
+
prompt = chatbot.tokenizer.apply_chat_template(messages, tokenize=False)
|
| 56 |
|
| 57 |
# Generate response
|
| 58 |
response = chatbot(
|