Upload folder using huggingface_hub
Browse files
app.py
CHANGED
@@ -114,21 +114,32 @@ If the user is engaging in discussion, try to steer them towards getting in touc
|
|
114 |
|
115 |
def chat(self, message, history):
|
116 |
messages = [{"role": "system", "content": self.system_prompt()}]
|
117 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
118 |
messages.append({"role": "user", "content": message})
|
|
|
119 |
done = False
|
120 |
while not done:
|
121 |
-
response = self.openai.chat.completions.create(
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
|
|
|
|
|
|
128 |
else:
|
129 |
done = True
|
|
|
130 |
return response.choices[0].message.content
|
131 |
-
|
132 |
|
133 |
if __name__ == "__main__":
|
134 |
me = Me()
|
|
|
114 |
|
115 |
def chat(self, message, history):
|
116 |
messages = [{"role": "system", "content": self.system_prompt()}]
|
117 |
+
|
118 |
+
# Convert list of [user, assistant] pairs to message dicts
|
119 |
+
for user_msg, assistant_msg in history:
|
120 |
+
messages.append({"role": "user", "content": user_msg})
|
121 |
+
messages.append({"role": "assistant", "content": assistant_msg})
|
122 |
+
|
123 |
+
# Append the latest user message
|
124 |
messages.append({"role": "user", "content": message})
|
125 |
+
|
126 |
done = False
|
127 |
while not done:
|
128 |
+
response = self.openai.chat.completions.create(
|
129 |
+
model="gpt-4o-mini",
|
130 |
+
messages=messages,
|
131 |
+
tools=tools
|
132 |
+
)
|
133 |
+
if response.choices[0].finish_reason == "tool_calls":
|
134 |
+
tool_calls = response.choices[0].message.tool_calls
|
135 |
+
tool_result = self.handle_tool_call(tool_calls)
|
136 |
+
messages.append(response.choices[0].message)
|
137 |
+
messages.extend(tool_result)
|
138 |
else:
|
139 |
done = True
|
140 |
+
|
141 |
return response.choices[0].message.content
|
142 |
+
|
143 |
|
144 |
if __name__ == "__main__":
|
145 |
me = Me()
|