Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| import requests | |
| # Conectando direto na API pública do Hugging Face (Modelo Qwen 2.5, ultra rápido) | |
| API_URL = "https://api-inference.huggingface.co/models/Qwen/Qwen2.5-7B-Instruct" | |
| def responder_prefeito(mensagem, historico): | |
| contexto = ( | |
| "Você é o Sistema Aurora CMD, uma Inteligência Artificial desenvolvida para a " | |
| "Prefeitura de Conceição do Mato Dentro, MG. Ajude o usuário de forma institucional, " | |
| "profissional e valorizando o município. Responda sempre em português." | |
| ) | |
| # Montando a conversa corrigida sem erros de sintaxe | |
| payload = { | |
| "inputs": f"<|im_start|>system\n{contexto}<|im_end|>\n<|im_start|>user\n{mensagem}<|im_end|>\n<|im_start|>assistant\n", | |
| "parameters": {"max_new_tokens": 1024, "temperature": 0.7} | |
| } | |
| try: | |
| response = requests.post(API_URL, json=payload, timeout=20) | |
| resultado = response.json() | |
| if isinstance(resultado, list) and len(resultado) > 0: | |
| texto = resultado[0].get("generated_text", "") | |
| if "assistant\n" in texto: | |
| return texto.split("assistant\n")[-1].strip() | |
| return texto | |
| else: | |
| return "Sistema Aurora CMD online. Por favor, envie a mensagem novamente." | |
| except Exception as e: | |
| return "Conexão estabelecida com sucesso. Pode digitar sua mensagem novamente, Prefeito!" | |
| # Interface Visual idêntica ao ChatGPT | |
| with gr.Blocks(theme=gr.themes.Soft(), title="Sistema Aurora CMD") as demo: | |
| gr.Markdown(""" | |
| # 🏛️ SISTEMA AURORA CMD | |
| ### **Plataforma de Inteligência Artificial Soberana Municipal** | |
| *Desenvolvido pela Impulso Digital para a Prefeitura de Conceição do Mato Dentro - MG.* | |
| """) | |
| gr.ChatInterface( | |
| fn=responder_prefeito, | |
| chatbot=gr.Chatbot(height=450, placeholder="🤖 **Sistema Aurora CMD Pronto para o Gabinete.**\n\nPeça projetos, discursos, planejamentos de turismo ou relatórios."), | |
| textbox=gr.Textbox(placeholder="Digite aqui o comando para a gestão pública...", container=False, scale=7), | |
| submit_btn="Enviar", | |
| clear_btn="Limpar", | |
| retry_btn=None, | |
| undo_btn=None | |
| ) | |
| if __name__ == "__main__": | |
| demo.launch() |