Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
@@ -2,48 +2,55 @@ import gradio as gr
|
|
2 |
import requests
|
3 |
import json
|
4 |
|
|
|
5 |
def chat_function(message):
|
6 |
-
#
|
7 |
payload = {
|
8 |
"model": "mixtral-8x7b-32768",
|
9 |
"messages": [
|
10 |
{
|
11 |
"role": "system",
|
12 |
-
"content": "Вы — API-интерфейс аналитики данных, способный анализировать настроения и отвечать в формате JSON. Схема JSON должна быть следующей:\n\n"
|
13 |
},
|
14 |
{"role": "user", "content": message}
|
15 |
]
|
16 |
}
|
17 |
-
|
|
|
18 |
headers = {
|
19 |
"Content-Type": "application/json",
|
20 |
-
"Authorization": "Bearer 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" #
|
21 |
}
|
22 |
|
23 |
try:
|
24 |
-
#
|
25 |
response = requests.post("https://api.groq.com/openai/v1/chat/completions", headers=headers, data=json.dumps(payload))
|
26 |
|
27 |
-
#
|
28 |
if response.status_code == 200:
|
29 |
data = response.json()
|
30 |
-
|
|
|
|
|
31 |
else:
|
32 |
-
|
|
|
33 |
except requests.exceptions.RequestException as e:
|
34 |
-
|
|
|
35 |
|
36 |
-
#
|
37 |
gr.Interface(
|
38 |
-
fn=chat_function, #
|
39 |
-
inputs=gr.Textbox(placeholder="
|
40 |
-
outputs="text", #
|
41 |
-
title="Groq-Gradio Chat", #
|
42 |
-
|
|
|
43 |
examples=[
|
44 |
-
"
|
45 |
-
"
|
46 |
-
"
|
47 |
-
"
|
48 |
-
]
|
49 |
).launch()
|
|
|
2 |
import requests
|
3 |
import json
|
4 |
|
5 |
+
# Функция для отправки запроса в API Groq и получения ответа
|
6 |
def chat_function(message):
|
7 |
+
# Определение данных запроса
|
8 |
payload = {
|
9 |
"model": "mixtral-8x7b-32768",
|
10 |
"messages": [
|
11 |
{
|
12 |
"role": "system",
|
13 |
+
"content": "Вы — API-интерфейс аналитики данных, способный анализировать настроения и отвечать в формате JSON. Схема JSON должна быть следующей:\n\n{\n \"sentiment\": \"positive|neutral|negative\",\n \"analysis\": \"Краткий текст анализа настроения.\"\n}"
|
14 |
},
|
15 |
{"role": "user", "content": message}
|
16 |
]
|
17 |
}
|
18 |
+
|
19 |
+
# Заголовки с указанием ключа API
|
20 |
headers = {
|
21 |
"Content-Type": "application/json",
|
22 |
+
"Authorization": "Bearer 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" # Укажите свой API-ключ
|
23 |
}
|
24 |
|
25 |
try:
|
26 |
+
# Отправка POST-запроса в API Groq
|
27 |
response = requests.post("https://api.groq.com/openai/v1/chat/completions", headers=headers, data=json.dumps(payload))
|
28 |
|
29 |
+
# Обработка ответа
|
30 |
if response.status_code == 200:
|
31 |
data = response.json()
|
32 |
+
# Извлечение ответа модели
|
33 |
+
content = data.get("choices", [{}])[0].get("message", {}).get("content", "No content available")
|
34 |
+
return content
|
35 |
else:
|
36 |
+
# Если запрос вернул ошибку
|
37 |
+
return f"Ошибка: {response.status_code}, {response.text}"
|
38 |
except requests.exceptions.RequestException as e:
|
39 |
+
# Обработка исключений
|
40 |
+
return f"Ошибка при выполнении запроса: {e}"
|
41 |
|
42 |
+
# Настройка интерфейса Gradio
|
43 |
gr.Interface(
|
44 |
+
fn=chat_function, # Функция обработки сообщений
|
45 |
+
inputs=gr.Textbox(placeholder="Введите запрос..."), # Поле ввода для сообщений
|
46 |
+
outputs="text", # Вывод результата в текстовом формате
|
47 |
+
title="Groq-Gradio Chat", # Заголовок интерфейса
|
48 |
+
description="Чатбот с аналитикой данных. Введите сообщение для анализа настроений.", # Описание интерфейса
|
49 |
+
theme="default", # Тема интерфейса (указана простая стандартная)
|
50 |
examples=[
|
51 |
+
"Какие перспективы на рынке акций?",
|
52 |
+
"Сегодня погода будет хорошей или плохой?",
|
53 |
+
"Какой результат от встречи с партнёрами?",
|
54 |
+
"Как настроение в моём тексте?"
|
55 |
+
] # Примеры запросов
|
56 |
).launch()
|