HaveAI commited on
Commit
bc379c4
·
verified ·
1 Parent(s): 160c993

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +20 -13
app.py CHANGED
@@ -2,15 +2,16 @@ import gradio as gr
2
  from huggingface_hub import InferenceClient
3
  import os
4
 
5
- # Используем максимально свежую и поддерживаемую модель
6
- # Llama-3.2-3B-Instruct — идеальный баланс скорости и ума
7
  token = os.getenv("HF_TOKEN")
8
- client = InferenceClient("meta-llama/Llama-3.2-3B-Instruct", token=token)
9
 
10
  def respond(message, history):
11
- messages = [{"role": "system", "content": "Ты — полезный ИИ ассистент и тебя зовут Flare. Отвечай на русском языке."}]
 
 
 
12
 
13
- # Наполняем историю
14
  for user_msg, assistant_msg in history:
15
  if user_msg:
16
  messages.append({"role": "user", "content": user_msg})
@@ -20,24 +21,30 @@ def respond(message, history):
20
  messages.append({"role": "user", "content": message})
21
 
22
  response = ""
23
-
24
  try:
25
- # Пытаемся получить ответ
26
  for message_chunk in client.chat_completion(
27
  messages=messages,
28
- max_tokens=1000,
29
  stream=True,
30
- temperature=0.3,
31
  ):
32
  token_text = message_chunk.choices[0].delta.content
33
  if token_text:
34
  response += token_text
35
  yield response
36
  except Exception as e:
37
- # Если модель всё еще капризничает, бот скажет об этом прямо в чате
38
- yield f"Ошибка: {str(e)}. Попробуй подождать минуту или проверь HF_TOKEN."
39
-
40
- demo = gr.ChatInterface(fn=respond)
 
 
 
 
 
 
 
41
 
42
  if __name__ == "__main__":
43
  demo.launch()
 
2
  from huggingface_hub import InferenceClient
3
  import os
4
 
5
+ # Используем модель Qwen — она сейчас работает стабильнее всех с русским языком
 
6
  token = os.getenv("HF_TOKEN")
7
+ client = InferenceClient("Qwen/Qwen2.5-72B-Instruct", token=token)
8
 
9
  def respond(message, history):
10
+ # Ограничиваем историю последними 5 сообщениями, чтобы не перегружать API
11
+ history = history[-5:]
12
+
13
+ messages = [{"role": "system", "content": "Ты — профессиональный ИИ-ассистент твоё имя Flare. Пиши грамотно на русском языке."}]
14
 
 
15
  for user_msg, assistant_msg in history:
16
  if user_msg:
17
  messages.append({"role": "user", "content": user_msg})
 
21
  messages.append({"role": "user", "content": message})
22
 
23
  response = ""
 
24
  try:
25
+ # Уменьшаем max_tokens для стабильности
26
  for message_chunk in client.chat_completion(
27
  messages=messages,
28
+ max_tokens=512,
29
  stream=True,
30
+ temperature=0.5, # Снизили температуру для точности
31
  ):
32
  token_text = message_chunk.choices[0].delta.content
33
  if token_text:
34
  response += token_text
35
  yield response
36
  except Exception as e:
37
+ if "rate limit" in str(e).lower():
38
+ yield "Ошибка: Слишком много запросов. Подожди 15 секунд."
39
+ else:
40
+ yield f"Ошибка API: {str(e)}"
41
+
42
+ # Настройка интерфейса без лишних аргументов
43
+ demo = gr.ChatInterface(
44
+ fn=respond,
45
+ examples=["Как дела?", "Напиши план тренировки", "Что такое ИИ?"],
46
+ title="Стабильный ИИ Чат"
47
+ )
48
 
49
  if __name__ == "__main__":
50
  demo.launch()