Xolkin commited on
Commit
b87d619
·
verified ·
1 Parent(s): e57fe70

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -5
app.py CHANGED
@@ -1,6 +1,7 @@
1
  import gradio as gr
2
  from huggingface_hub import InferenceClient
3
 
 
4
  client = InferenceClient("HuggingFaceH4/zephyr-7b-beta")
5
 
6
  def respond(
@@ -11,18 +12,21 @@ def respond(
11
  temperature,
12
  top_p,
13
  ):
 
14
  messages = [{"role": "system", "content": system_message}]
15
 
 
16
  for val in history:
17
  if val[0]:
18
  messages.append({"role": "user", "content": val[0]})
19
  if val[1]:
20
  messages.append({"role": "assistant", "content": val[1]})
21
 
 
22
  messages.append({"role": "user", "content": message})
23
 
 
24
  response = ""
25
-
26
  for message in client.chat_completion(
27
  messages,
28
  max_tokens=max_tokens,
@@ -34,7 +38,7 @@ def respond(
34
  response += token
35
  yield response
36
 
37
- # Highlight the diagnosis in bold
38
  diagnosis_start = response.find("Предварительный диагноз:")
39
  if diagnosis_start != -1:
40
  diagnosis_end = response.find("\n", diagnosis_start)
@@ -43,18 +47,19 @@ def respond(
43
  diagnosis = response[diagnosis_start:diagnosis_end]
44
  response = response[:diagnosis_start] + f"<b>{diagnosis}</b>" + response[diagnosis_end:]
45
 
46
- # Add an identification message to the response
47
  final_response = f"{response}\n\nСоздано больницей EMS штата Alta"
48
  yield final_response
49
 
 
50
  demo = gr.ChatInterface(
51
  respond,
52
  additional_inputs=[
53
  gr.Textbox(
54
- value="Привет! Я помощник врача в больнице EMS штата Alta! Опиши свои симптомы, и я поставлю предварительный диагноз.",
55
  label="Системное сообщение"
56
  ),
57
- gr.Slider(minimum=1, maximum=2048, value=512, step=1, label="Максимальное количество новых токенов"),
58
  gr.Slider(minimum=0.1, maximum=4.0, value=0.7, step=0.1, label="Температура"),
59
  gr.Slider(
60
  minimum=0.1,
 
1
  import gradio as gr
2
  from huggingface_hub import InferenceClient
3
 
4
+ # Инициализация клиента с моделью от Hugging Face
5
  client = InferenceClient("HuggingFaceH4/zephyr-7b-beta")
6
 
7
  def respond(
 
12
  temperature,
13
  top_p,
14
  ):
15
+ # Формирование списка сообщений для отправки модели
16
  messages = [{"role": "system", "content": system_message}]
17
 
18
+ # Добавление истории разговора в список сообщений
19
  for val in history:
20
  if val[0]:
21
  messages.append({"role": "user", "content": val[0]})
22
  if val[1]:
23
  messages.append({"role": "assistant", "content": val[1]})
24
 
25
+ # Добавление текущего сообщения пользователя
26
  messages.append({"role": "user", "content": message})
27
 
28
+ # Получение ответа от модели
29
  response = ""
 
30
  for message in client.chat_completion(
31
  messages,
32
  max_tokens=max_tokens,
 
38
  response += token
39
  yield response
40
 
41
+ # Выделение диагноза жирным шрифтом
42
  diagnosis_start = response.find("Предварительный диагноз:")
43
  if diagnosis_start != -1:
44
  diagnosis_end = response.find("\n", diagnosis_start)
 
47
  diagnosis = response[diagnosis_start:diagnosis_end]
48
  response = response[:diagnosis_start] + f"<b>{diagnosis}</b>" + response[diagnosis_end:]
49
 
50
+ # Добавление идентификационного сообщения к ответу
51
  final_response = f"{response}\n\nСоздано больницей EMS штата Alta"
52
  yield final_response
53
 
54
+ # Создание интерфейса Gradio
55
  demo = gr.ChatInterface(
56
  respond,
57
  additional_inputs=[
58
  gr.Textbox(
59
+ value="Привет! Я помощник врача в больнице EMS штата Alta! Опиши свои симптомы кратко, и я поставлю предварительный диагноз.",
60
  label="Системное сообщение"
61
  ),
62
+ gr.Slider(minimum=1, maximum=2048, value=100, step=1, label="Максимальное количество новых токенов"),
63
  gr.Slider(minimum=0.1, maximum=4.0, value=0.7, step=0.1, label="Температура"),
64
  gr.Slider(
65
  minimum=0.1,