Gerofra commited on
Commit
c440981
1 Parent(s): 08b0795

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -20
app.py CHANGED
@@ -1,8 +1,7 @@
1
  import os
2
  import openai
3
- from langchain.chat_models import ChatOpenAI
4
- from langchain.schema import AIMessage, HumanMessage
5
  from llama_index import StorageContext, load_index_from_storage, LLMPredictor, ServiceContext
 
6
  import gradio as gr
7
 
8
  # Conectar Cuenta API de OpenAI
@@ -17,18 +16,12 @@ else:
17
  exec(os.environ.get('storage_context'))
18
 
19
  prompt = 'responder en español como un asistente experto en medicina, dando una respuesta detallada y reflejando de forma fiel los datos disponibles. Considerar segun aplique la siguiente informacion adicional: Nombre del Medicamento: Acsodix. Principio Activo: Vortioxetina. Formas y Dosis: Acsodix 5, 10, y 20 mg (comprimidos recubiertos). Indicaciones: Tratamiento de episodios de depresión mayor en adultos. Contraindicaciones: Alergia a la Vortioxetina, toma de ciertos inhibidores de la monoaminooxidasa, enfermedad hepática grave, etc. Precauciones: Embarazo, lactancia, conducción, uso de otros medicamentos, etc. Efectos Adversos: Náuseas, diarrea, vómitos, mareo, prurito, etc. Instrucciones de Uso: Se puede tomar con o sin alimentos, no se aconseja la combinación con alcohol, etc. Presentación: Cajas conteniendo 30 comprimidos recubiertos en diferentes dosis. La dosis máxima de Acsodix para adultos menores a 65 años es de 20 mg al día. Se debe tener precaución cuando se traten pacientes mayores de 65 años de edad con dosis superiores a 10 mg de Vortioxetina una vez al día, ya que los datos son limitados. El medicamento Vortioxetina (Acsodix) no puede ni debe ser combinado con alcohol. Se debe tener precaución al combinar la Vortioxetina con anticoagulantes o antiagregantes plaquetarios orales como warfarina, dipiridamol, fenprocumón, ácido acetilsalicílico, debido al potencial aumento del riesgo de hemorragia. La información proporcionada no menciona específicamente los dolores de cabeza como un efecto secundario de tomar Acsodix. Informe a su médico si está tomando, ha tomado recientemente o podría tener que tomar cualquier otro medicamento, incluso los adquiridos sin receta. No se observaron cambios en los niveles de hormonas sexuales después de la administración conjunta de Vortioxetina con el anticonceptivo oral combinado (etinil estradiol 30 μg/ levonorgestrel 150 μg).Acsodix no está recomendado en niños y adolescentes menores de 18 años, debido a la falta de información en este grupo de edad. La pregunta a responder es la siguiente:'
20
-
21
 
22
  # Funcion de chat
23
- def predict(message, history):
24
- history_openai_format = []
25
- for human, assistant in history:
26
- history_openai_format.append({"role": "user", "content": human})
27
- history_openai_format.append({"role": "assistant", "content": assistant})
28
 
29
- # Agrega la preg. del usuario al historial en formato OpenAI
30
- history_openai_format.append({"role": "user", "content": message})
31
-
32
  # Agrega el prompt personalizado al inicio del historial
33
  full_prompt = [{'role': 'assistant', 'content': prompt}]
34
  full_prompt.extend(history_openai_format)
@@ -55,17 +48,17 @@ def predict(message, history):
55
  partial_message = partial_message + chunk['choices'][0]['delta']['content']
56
  yield partial_message
57
 
58
-
59
- gr.ChatInterface(
60
- predict,
61
- chatbot=gr.Chatbot(height=300),
62
- textbox=gr.Textbox(placeholder="Escribe una pregunta...", container=False, scale=7),
63
  title="Titulo titulo",
64
  description="Descripción descripción",
65
  theme="soft",
66
  examples=["¿Se puede tomar con anticonceptivos?", "Hola"],
67
  cache_examples=True,
68
- retry_btn=None,
69
- undo_btn="Deshacer",
70
- clear_btn="Limpiar",
71
- ).queue().launch()
 
1
  import os
2
  import openai
 
 
3
  from llama_index import StorageContext, load_index_from_storage, LLMPredictor, ServiceContext
4
+ from langchain.chat_models import ChatOpenAI
5
  import gradio as gr
6
 
7
  # Conectar Cuenta API de OpenAI
 
16
  exec(os.environ.get('storage_context'))
17
 
18
  prompt = 'responder en español como un asistente experto en medicina, dando una respuesta detallada y reflejando de forma fiel los datos disponibles. Considerar segun aplique la siguiente informacion adicional: Nombre del Medicamento: Acsodix. Principio Activo: Vortioxetina. Formas y Dosis: Acsodix 5, 10, y 20 mg (comprimidos recubiertos). Indicaciones: Tratamiento de episodios de depresión mayor en adultos. Contraindicaciones: Alergia a la Vortioxetina, toma de ciertos inhibidores de la monoaminooxidasa, enfermedad hepática grave, etc. Precauciones: Embarazo, lactancia, conducción, uso de otros medicamentos, etc. Efectos Adversos: Náuseas, diarrea, vómitos, mareo, prurito, etc. Instrucciones de Uso: Se puede tomar con o sin alimentos, no se aconseja la combinación con alcohol, etc. Presentación: Cajas conteniendo 30 comprimidos recubiertos en diferentes dosis. La dosis máxima de Acsodix para adultos menores a 65 años es de 20 mg al día. Se debe tener precaución cuando se traten pacientes mayores de 65 años de edad con dosis superiores a 10 mg de Vortioxetina una vez al día, ya que los datos son limitados. El medicamento Vortioxetina (Acsodix) no puede ni debe ser combinado con alcohol. Se debe tener precaución al combinar la Vortioxetina con anticoagulantes o antiagregantes plaquetarios orales como warfarina, dipiridamol, fenprocumón, ácido acetilsalicílico, debido al potencial aumento del riesgo de hemorragia. La información proporcionada no menciona específicamente los dolores de cabeza como un efecto secundario de tomar Acsodix. Informe a su médico si está tomando, ha tomado recientemente o podría tener que tomar cualquier otro medicamento, incluso los adquiridos sin receta. No se observaron cambios en los niveles de hormonas sexuales después de la administración conjunta de Vortioxetina con el anticonceptivo oral combinado (etinil estradiol 30 μg/ levonorgestrel 150 μg).Acsodix no está recomendado en niños y adolescentes menores de 18 años, debido a la falta de información en este grupo de edad. La pregunta a responder es la siguiente:'
 
19
 
20
  # Funcion de chat
21
+ def predict(message):
22
+ # Agrega la pregunta del usuario al historial en formato OpenAI
23
+ history_openai_format = [{"role": "user", "content": message}]
 
 
24
 
 
 
 
25
  # Agrega el prompt personalizado al inicio del historial
26
  full_prompt = [{'role': 'assistant', 'content': prompt}]
27
  full_prompt.extend(history_openai_format)
 
48
  partial_message = partial_message + chunk['choices'][0]['delta']['content']
49
  yield partial_message
50
 
51
+ # Define la interfaz de Gradio sin chat
52
+ gr.Interface(
53
+ fn=predict,
54
+ inputs=gr.Textbox("Escribe una pregunta...", label="Pregunta"),
55
+ outputs=gr.Textbox(label="Respuesta"),
56
  title="Titulo titulo",
57
  description="Descripción descripción",
58
  theme="soft",
59
  examples=["¿Se puede tomar con anticonceptivos?", "Hola"],
60
  cache_examples=True,
61
+ #live=True,
62
+ button="Preguntar"
63
+ clearbutton=None,
64
+ ).launch()