AlexandreScriptsMT commited on
Commit
7ffe937
·
verified ·
1 Parent(s): 9aa8344

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +17 -17
app.py CHANGED
@@ -1,32 +1,32 @@
1
  import gradio as gr
2
  from transformers import pipeline
3
 
 
4
  pipe = pipeline("text-generation", model="Qwen/Qwen2.5-0.5B-Instruct", device_map="cpu")
5
 
6
- # nomes descritivos e tipos claros. O MCP usa isso para o agente "entender" a ferramenta.
7
- def generate_story_or_chat(prompt: str, history: list):
8
  """
9
- Use esta função para conversar com o assistente Qwen ou gerar textos criativos.
10
-
11
- Parameters:
12
- - prompt: A mensagem atual ou pedido do usuário.
13
- - history: O contexto da conversa anterior.
14
  """
15
- # (Mesma lógica de memória que corrigimos antes)
16
- messages_formatted = []
17
- for user_msg, bot_msg in history:
18
- messages_formatted.append({"role": "user", "content": user_msg})
19
- messages_formatted.append({"role": "assistant", "content": bot_msg})
20
- messages_formatted.append({"role": "user", "content": prompt})
21
 
22
- results = pipe(messages_formatted, max_new_tokens=512)
 
 
 
 
 
 
 
23
  return results[0]['generated_text'][-1]['content']
24
 
25
- # A interface define como o MCP vai enxergar isso
 
26
  demo = gr.ChatInterface(
27
- fn=generate_story_or_chat,
 
28
  title="Qwen Agent Node",
29
- description="Um endpoint MCP para geração de texto e chat usando Qwen 2.5."
30
  )
31
 
32
  if __name__ == "__main__":
 
1
  import gradio as gr
2
  from transformers import pipeline
3
 
4
+ # 1. Carrega o modelo (Isso já estava funcionando)
5
  pipe = pipeline("text-generation", model="Qwen/Qwen2.5-0.5B-Instruct", device_map="cpu")
6
 
7
+ def predict(message, history):
 
8
  """
9
+ Com type="messages", o 'history' vem no formato correto:
10
+ [{'role': 'user', 'content': 'oi'}, {'role': 'assistant', 'content': 'olá'}]
 
 
 
11
  """
 
 
 
 
 
 
12
 
13
+ # Criamos a lista de mensagens adicionando a mensagem atual ao histórico
14
+ # O history vem do Gradio, o message é o input atual
15
+ messages = history + [{"role": "user", "content": message}]
16
+
17
+ # Gera a resposta
18
+ results = pipe(messages, max_new_tokens=512)
19
+
20
+ # Retorna apenas o texto novo gerado
21
  return results[0]['generated_text'][-1]['content']
22
 
23
+ # 2. Configuração da Interface
24
+ # Adicionamos type="messages" para corrigir o aviso e padronizar com o OpenClaw/MCP
25
  demo = gr.ChatInterface(
26
+ fn=predict,
27
+ type="messages", # <--- ESTA LINHA CORRIGE O AVISO E MUDA O FORMATO DO HISTÓRICO
28
  title="Qwen Agent Node",
29
+ description="Bot rodando Qwen 2.5 via CPU no Hugging Face."
30
  )
31
 
32
  if __name__ == "__main__":