AIRider commited on
Commit
c174edf
·
verified ·
1 Parent(s): 93b41fc

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -17
app.py CHANGED
@@ -11,14 +11,11 @@ def get_model_response(client, messages, max_tokens, temperature, top_p):
11
  max_tokens=max_tokens,
12
  temperature=temperature,
13
  top_p=top_p,
14
- stream=True
15
  )
16
- for message in response:
17
- token = message.choices[0].delta.content if hasattr(message.choices[0], 'delta') else message.choices[0].text
18
- if token:
19
- yield token
20
  except Exception as e:
21
- yield f"모델 추론 실패: {str(e)}"
22
 
23
  def respond(message, history, system_message, max_tokens, temperature, top_p, selected_model):
24
  try:
@@ -28,15 +25,12 @@ def respond(message, history, system_message, max_tokens, temperature, top_p, se
28
  messages.extend([{"role": "user" if i % 2 == 0 else "assistant", "content": m} for h in history for i, m in enumerate(h) if m])
29
  messages.append({"role": "user", "content": message})
30
 
31
- response = ""
32
- for token in get_model_response(client, messages, max_tokens, temperature, top_p):
33
- response += token
34
- yield response
35
 
36
- if not response:
37
- yield "모델이 응답을 생성하지 못했습니다. 다른 입력이나 모델을 시도해보세요."
38
  except Exception as e:
39
- yield f"오류 발생: {str(e)}"
40
 
41
  models = {
42
  "deepseek-ai/DeepSeek-Coder-V2-Instruct": "DeepSeek-Coder-V2-Instruct",
@@ -66,10 +60,10 @@ with gr.Blocks() as demo:
66
  top_p = gr.Slider(minimum=0.1, maximum=1.0, value=0.90, step=0.05, label="Top-p (핵 샘플링)")
67
  model = gr.Radio(list(models.keys()), value=list(models.keys())[0], label="언어 모델 선택", info="사용할 언어 모델을 선택하세요")
68
 
69
- send.click(respond, inputs=[msg, chatbot, system_message, max_tokens, temperature, top_p, model], outputs=chatbot)
70
- msg.submit(respond, inputs=[msg, chatbot, system_message, max_tokens, temperature, top_p, model], outputs=chatbot)
71
- regenerate.click(respond, inputs=[msg, chatbot, system_message, max_tokens, temperature, top_p, model], outputs=chatbot)
72
- clear.click(lambda: None, None, chatbot, queue=False)
73
 
74
  if __name__ == "__main__":
75
  if not hf_token:
 
11
  max_tokens=max_tokens,
12
  temperature=temperature,
13
  top_p=top_p,
14
+ stream=False # 스트리밍을 비활성화하여 전체 응답을 한 번에 받습니다.
15
  )
16
+ return response.choices[0].message.content
 
 
 
17
  except Exception as e:
18
+ return f"모델 추론 실패: {str(e)}"
19
 
20
  def respond(message, history, system_message, max_tokens, temperature, top_p, selected_model):
21
  try:
 
25
  messages.extend([{"role": "user" if i % 2 == 0 else "assistant", "content": m} for h in history for i, m in enumerate(h) if m])
26
  messages.append({"role": "user", "content": message})
27
 
28
+ response = get_model_response(client, messages, max_tokens, temperature, top_p)
 
 
 
29
 
30
+ history.append((message, response))
31
+ return "", history
32
  except Exception as e:
33
+ return "", history + [(message, f"오류 발생: {str(e)}")]
34
 
35
  models = {
36
  "deepseek-ai/DeepSeek-Coder-V2-Instruct": "DeepSeek-Coder-V2-Instruct",
 
60
  top_p = gr.Slider(minimum=0.1, maximum=1.0, value=0.90, step=0.05, label="Top-p (핵 샘플링)")
61
  model = gr.Radio(list(models.keys()), value=list(models.keys())[0], label="언어 모델 선택", info="사용할 언어 모델을 선택하세요")
62
 
63
+ send.click(respond, inputs=[msg, chatbot, system_message, max_tokens, temperature, top_p, model], outputs=[msg, chatbot])
64
+ msg.submit(respond, inputs=[msg, chatbot, system_message, max_tokens, temperature, top_p, model], outputs=[msg, chatbot])
65
+ regenerate.click(lambda h: respond(h[-1][0] if h else "", h[:-1], *h.values()), inputs=[chatbot, system_message, max_tokens, temperature, top_p, model], outputs=[msg, chatbot])
66
+ clear.click(lambda: (None, None), outputs=[msg, chatbot])
67
 
68
  if __name__ == "__main__":
69
  if not hf_token: