NicoGargano commited on
Commit
312c075
·
1 Parent(s): dfdd8d8

Upload 5 files

Browse files
Files changed (5) hide show
  1. app.py +47 -0
  2. chatbot.py +9 -0
  3. myrequirements.txt +6 -0
  4. requirements.txt +5 -0
  5. tools.py +54 -0
app.py ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from tools import ask_chatbot
3
+
4
+
5
+
6
+
7
+ def check_inputs(question):
8
+ if(question !="" ):
9
+ respuesta = ask_chatbot(question)
10
+ return respuesta
11
+ else:
12
+ return '!Ups, hubo un Error! - Nos hace falta mas cerveza para poder ayudarte', None
13
+
14
+
15
+ # Descripción del Header
16
+ description = """
17
+ <center><h1><b><img src="https://imgs.search.brave.com/FOs8wNNOrQRHfIJKL6DWejiq9hf8c8LhnE66Bf-UoQQ/rs:fit:560:320:1/g:ce/aHR0cHM6Ly91cGxv/YWQud2lraW1lZGlh/Lm9yZy93aWtpcGVk/aWEvY29tbW9ucy90/aHVtYi85Lzk4L1Ro/ZV9TaW1wc29uc195/ZWxsb3dfbG9nby5z/dmcvNTEycHgtVGhl/X1NpbXBzb25zX3ll/bGxvd19sb2dvLnN2/Zy5wbmc" alt="THE SIMPSONS"></b></h1>
18
+ <center><h2><b>Todo sobre los simpsons </b></h2>
19
+ Simplemente carga respuestas a ciertas preguntas clave y obtén conclusiones detalladas sobre los simpsons.
20
+ </center>
21
+ """
22
+
23
+ # Descripción del Footer
24
+ article = """
25
+ <br>
26
+ <b>¿Por qué elegirnos?</b>
27
+ <br><b>Hest.ia 👑</b>, tu aliado inteligente para mejorar tus habilidades comunicativas 💯. <br>Hacemos análisis de tus respuestas ante preguntas 🔍 y te damos feedback para mejorar tu viaje espacial 🙌.
28
+ <br>Descubre el poder de la inteligencia artificial aplicada a potenciar los viajes espaciales.🤖💡
29
+ """
30
+
31
+
32
+ # Inputs
33
+ question = gr.Textbox(label="Contame, en qué te puedo ayudar ❓")
34
+
35
+ # Outputs
36
+ resultado = gr.Textbox(label="Respuesta 💡")
37
+
38
+ gui = gr.Interface(
39
+ fn=check_inputs,
40
+ inputs=[question],
41
+ outputs=[resultado],
42
+ description = description,
43
+ article = article,
44
+ theme=gr.themes.Soft()
45
+ )
46
+
47
+ gui.launch()
chatbot.py ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+
3
+ def chatbot(input_text):
4
+ # Use YouChat to process the input and generate a response
5
+ response = youchat.process(input_text)
6
+ return response
7
+
8
+ iface = gr.Interface(fn=chatbot, inputs="text", outputs="text")
9
+ iface.launch()
myrequirements.txt ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ fastapi==0.103.1
2
+ gradio==3.44.4
3
+ openai==0.28.0
4
+ pydantic==2.3.0
5
+ uvicorn==0.23.2
6
+ python-dotenv==1.0.0
requirements.txt ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ fastapi==0.103.1
2
+ gradio==3.44.4
3
+ openai==0.28.0
4
+ pydantic==2.3.0
5
+ uvicorn==0.23.2
tools.py ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # -*- coding: utf-8 -*-
2
+ """tools.ipynb
3
+
4
+ Automatically generated by Colaboratory.
5
+
6
+ Original file is located at
7
+ https://colab.research.google.com/drive/1bf1JxvWIpqRY6Q36aazPA2KALPqrvVAC
8
+ """
9
+
10
+ import os
11
+ from dotenv import load_dotenv
12
+ import openai
13
+
14
+ # Cargar variables de entorno
15
+ load_dotenv()
16
+
17
+ OPENAI_KEY = os.getenv('OPENAI_KEY', '')
18
+
19
+ # Asignar la API Key
20
+ openai.api_key = OPENAI_KEY
21
+
22
+ def mychatbot(messages):
23
+ # Chatbot que hace consultas "query" a una base de conocimiento "contract_knowledge"
24
+
25
+ # Enviar solicitud a la api OpenAI con el modelo "GPT-3.5-turbo"
26
+ res = openai.ChatCompletion.create(
27
+ model="gpt-3.5-turbo",
28
+ messages = messages
29
+ )
30
+
31
+ # Del diccionario extraer la informacion correspondiente al id "content"
32
+ conclusion = res['choices'][0]['message']['content']
33
+
34
+ return conclusion
35
+
36
+ def ask_chatbot(question):
37
+
38
+ prompt = f"""
39
+ Dada la siguiente pregunta realizada por el usuario: {question}.
40
+ Reponde de manera efusiva y tajante la conversación.
41
+ Relaciona todo con la serie animada "Los Simpsons", con una frase, o con un personaje, o con una situacion o con un capitulo. Si puedes agrega un link de youtube donde se pueda ver lo que acabas de mencionar.
42
+ """
43
+
44
+
45
+ # Dialogo con ChatGPT
46
+ messages = [
47
+ {"role": "system", "content": "Eres un apasionado de 'Los Simpsons'. Has visto todos los capitulos varias veces, te sabes todos los diaglogos de memoria, y cada situacion de la vida la relacionas con 'Los Simpsons'."},
48
+ {"role": "user", "content": prompt}
49
+ ]
50
+
51
+ # Output
52
+ respuesta = mychatbot(messages)
53
+
54
+ return respuesta