Gerofra commited on
Commit
dd3f189
1 Parent(s): 0971aeb

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -8
app.py CHANGED
@@ -16,7 +16,7 @@ else:
16
  storage_context = StorageContext.from_defaults(persist_dir=".")
17
 
18
  # Crear un nuevo modelo and service context (with the same variable name)
19
- modelo = LLMPredictor(llm=ChatOpenAI(temperature=0, model_name='gpt-3.5-turbo-16k', max_tokens=7000, top_p=0, stream=True))
20
  service_context = ServiceContext.from_defaults(llm_predictor=modelo)
21
 
22
  # Cargar el nuevo index Doc_1 (with the same variable name)
@@ -25,7 +25,6 @@ index = load_index_from_storage(service_context=service_context, storage_context
25
  # Prompt personalizado para el nuevo index
26
  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. Sobredosis: Síntomas y tratamientos en caso de sobredosis. Presentación: Cajas conteniendo 30 comprimidos recubiertos en diferentes dosis. Almacenamiento: Conservar a temperatura ambiente inferior a 30 °C. Fabricante y Distribuidor: Mega Labs S.A., Industria Uruguaya, 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.'
27
 
28
- # Funcion de chat para el nuevo index Doc_1
29
  # Funcion de chat para el nuevo index Doc_1
30
  def predict(message):
31
  # Agrega la pregunta del usuario al historial en formato OpenAI
@@ -38,23 +37,25 @@ def predict(message):
38
  # Obtener la pregunta del usuario
39
  user_message = full_prompt[-1]["content"]
40
 
41
- # Utilizar el nuevo modelo y index Doc_1 para generar la respuesta
42
  query = user_message
43
  respuesta = index.as_query_engine().query(query)
44
 
45
  # Respuesta de OpenAI basada en la consulta y agregarla al historial
46
  response = openai.ChatCompletion.create(
47
- model=modelo.llm.model_name, # Use the new model
48
- messages=full_prompt # Use the message history
 
 
 
49
  )
50
-
51
  partial_message = ""
52
  for chunk in response:
53
  if len(chunk['choices'][0]['delta']) != 0:
54
- partial_message += chunk['choices'][0]['delta']['content']
55
  yield partial_message
56
 
57
-
58
  # Define la interfaz de Gradio para el nuevo index Doc_1
59
  gr.Interface(
60
  fn=predict,
 
16
  storage_context = StorageContext.from_defaults(persist_dir=".")
17
 
18
  # Crear un nuevo modelo and service context (with the same variable name)
19
+ modelo = LLMPredictor(llm=ChatOpenAI(temperature=0, model_name='gpt-3.5-turbo-16k', max_tokens=7000, top_p=0))
20
  service_context = ServiceContext.from_defaults(llm_predictor=modelo)
21
 
22
  # Cargar el nuevo index Doc_1 (with the same variable name)
 
25
  # Prompt personalizado para el nuevo index
26
  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. Sobredosis: Síntomas y tratamientos en caso de sobredosis. Presentación: Cajas conteniendo 30 comprimidos recubiertos en diferentes dosis. Almacenamiento: Conservar a temperatura ambiente inferior a 30 °C. Fabricante y Distribuidor: Mega Labs S.A., Industria Uruguaya, 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.'
27
 
 
28
  # Funcion de chat para el nuevo index Doc_1
29
  def predict(message):
30
  # Agrega la pregunta del usuario al historial en formato OpenAI
 
37
  # Obtener la pregunta del usuario
38
  user_message = full_prompt[-1]["content"]
39
 
40
+ # Utilizar el nuevo index Doc_1 para generar la respuesta
41
  query = user_message
42
  respuesta = index.as_query_engine().query(query)
43
 
44
  # Respuesta de OpenAI basada en la consulta y agregarla al historial
45
  response = openai.ChatCompletion.create(
46
+ model='gpt-3.5-turbo-16k', # Use the new model
47
+ max_tokens=1000,
48
+ messages=full_prompt,
49
+ temperature=0.5,
50
+ stream=True
51
  )
52
+
53
  partial_message = ""
54
  for chunk in response:
55
  if len(chunk['choices'][0]['delta']) != 0:
56
+ partial_message = partial_message + chunk['choices'][0]['delta']['content']
57
  yield partial_message
58
 
 
59
  # Define la interfaz de Gradio para el nuevo index Doc_1
60
  gr.Interface(
61
  fn=predict,