File size: 1,418 Bytes
b88c9bc
8acbfc0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import gradio as gr
from groq import Groq

# Inicializa o cliente Groq - você precisará de uma API key
client = Groq()

def generate_response(message, history):
    # Cria um prompt no estilo ELIZA
    prompt = f"""Você é ELIZA, uma terapeuta que responde com empatia e faz perguntas 
    para entender melhor o paciente. Responda à seguinte mensagem do paciente: {message}"""
    
    # Faz a chamada para a API do Groq
    chat_completion = client.chat.completions.create(
        messages=[
            {
                "role": "system",
                "content": "Você é ELIZA, uma terapeuta empática que faz perguntas reflexivas."
            },
            {
                "role": "user",
                "content": message
            }
        ],
        model="mixtral-8x7b-32768",  # ou outro modelo disponível no Groq
        temperature=0.7,
        max_tokens=150
    )
    
    # Retorna a resposta gerada
    return chat_completion.choices[0].message.content

# Cria a interface Gradio
with gr.Blocks() as demo:
    gr.Markdown("# ELIZA Chatbot")
    gr.Markdown("Converse com ELIZA, uma terapeuta virtual baseada no chatbot clássico de 1966.")
    
    chatbot = gr.ChatInterface(
        generate_response,
        title="ELIZA Therapy Session",
        description="Compartilhe seus pensamentos e ELIZA irá ajudar você a refletir sobre eles."
    )

# Inicia a interface
demo.launch()