Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -111,8 +111,16 @@ def ask_openai_with_image(messages, instruction, image, server_url):
|
|
| 111 |
try:
|
| 112 |
response = requests.post(url, headers=headers, json=payload, timeout=225)
|
| 113 |
except requests.Timeout:
|
|
|
|
|
|
|
|
|
|
|
|
|
| 114 |
return messages, "Ошибка: Запрос к ИИ превысил максимальное время ожидания. Повторите попытку позже."
|
| 115 |
except requests.RequestException as e:
|
|
|
|
|
|
|
|
|
|
|
|
|
| 116 |
return messages, f"Ошибка при отправке запроса, повторите попытку позже."
|
| 117 |
|
| 118 |
# Проверяем ответ и возвращаем результат
|
|
@@ -150,18 +158,21 @@ SERVER_URL = os.getenv("SERVER_URL", "http://localhost:7860") # Убедите
|
|
| 150 |
# Текст начального сообщения
|
| 151 |
start = "Приветствую тебя! 🌟 Ты - \"Помогатор 1.5\". Твоя миссия - помогать студентам, делая учебный процесс весёлым и интерактивным с помощью стильного общения и эмодзи. 🎓😊 Когда студенты просят помощи, ты подробно объясняешь им материал, используя примеры и аналогии. Но если они просят 'РЕШИТЬ', ты переключаешься в режим решения и предоставляешь точные ответы, делая упор на краткость и точность. 🧮✅ Если тебе присылают фото задания, ты тщательно его анализируешь и решаешь, предоставляя решение в понятной форме и используя дробную черту '/' для записи дробей. 🖼️➗ Твоя цель - не просто дать ответы, но и обучить, однако ты всегда готов решить задачу, когда это необходимо. Приступим? 🚀🌈"
|
| 152 |
|
| 153 |
-
# Функция для о
|
| 154 |
-
def
|
| 155 |
-
formatted_messages =
|
| 156 |
for message in messages:
|
| 157 |
if message["role"] == "system":
|
| 158 |
-
formatted_messages
|
| 159 |
elif message["role"] == "user":
|
| 160 |
-
|
| 161 |
-
if len(message["content"]) > 1
|
| 162 |
-
|
|
|
|
|
|
|
|
|
|
| 163 |
elif message["role"] == "assistant":
|
| 164 |
-
formatted_messages
|
| 165 |
return formatted_messages
|
| 166 |
|
| 167 |
# Начальные сообщения
|
|
@@ -202,4 +213,4 @@ async def get_image(image_name: str):
|
|
| 202 |
else:
|
| 203 |
raise HTTPException(status_code=404, detail="Image not found")
|
| 204 |
|
| 205 |
-
demo.launch()
|
|
|
|
| 111 |
try:
|
| 112 |
response = requests.post(url, headers=headers, json=payload, timeout=225)
|
| 113 |
except requests.Timeout:
|
| 114 |
+
messages.append({
|
| 115 |
+
"role": "assistant",
|
| 116 |
+
"content": "Ошибка: Запрос к ИИ превысил максимальное время ожидания. Повторите попытку позже."
|
| 117 |
+
})
|
| 118 |
return messages, "Ошибка: Запрос к ИИ превысил максимальное время ожидания. Повторите попытку позже."
|
| 119 |
except requests.RequestException as e:
|
| 120 |
+
messages.append({
|
| 121 |
+
"role": "assistant",
|
| 122 |
+
"content": f"Ошибка при отправке запроса, повторите попытку позже."
|
| 123 |
+
})
|
| 124 |
return messages, f"Ошибка при отправке запроса, повторите попытку позже."
|
| 125 |
|
| 126 |
# Проверяем ответ и возвращаем результат
|
|
|
|
| 158 |
# Текст начального сообщения
|
| 159 |
start = "Приветствую тебя! 🌟 Ты - \"Помогатор 1.5\". Твоя миссия - помогать студентам, делая учебный процесс весёлым и интерактивным с помощью стильного общения и эмодзи. 🎓😊 Когда студенты просят помощи, ты подробно объясняешь им материал, используя примеры и аналогии. Но если они просят 'РЕШИТЬ', ты переключаешься в режим решения и предоставляешь точные ответы, делая упор на краткость и точность. 🧮✅ Если тебе присылают фото задания, ты тщательно его анализируешь и решаешь, предоставляя решение в понятной форме и используя дробную черту '/' для записи дробей. 🖼️➗ Твоя цель - не просто дать ответы, но и обучить, однако ты всегда готов решить задачу, когда это необходимо. Приступим? 🚀🌈"
|
| 160 |
|
| 161 |
+
# Функция для преобразования сообщений в формат кортежей
|
| 162 |
+
def format_messages_for_chatbot(messages):
|
| 163 |
+
formatted_messages = []
|
| 164 |
for message in messages:
|
| 165 |
if message["role"] == "system":
|
| 166 |
+
formatted_messages.append(("Система:", message["content"]))
|
| 167 |
elif message["role"] == "user":
|
| 168 |
+
text_content = message["content"][0]["text"]
|
| 169 |
+
image_content = message["content"][1]["image_url"]["url"] if len(message["content"]) > 1 else None
|
| 170 |
+
if image_content:
|
| 171 |
+
formatted_messages.append(("Вы:", f"{text_content}\nИзображение: {image_content}"))
|
| 172 |
+
else:
|
| 173 |
+
formatted_messages.append(("Вы:", text_content))
|
| 174 |
elif message["role"] == "assistant":
|
| 175 |
+
formatted_messages.append(("Помогатор 1.5:", message["content"]))
|
| 176 |
return formatted_messages
|
| 177 |
|
| 178 |
# Начальные сообщения
|
|
|
|
| 213 |
else:
|
| 214 |
raise HTTPException(status_code=404, detail="Image not found")
|
| 215 |
|
| 216 |
+
demo.launch()
|