eberhenriquez94 commited on
Commit
85441b5
verified
1 Parent(s): e605150
Files changed (1) hide show
  1. app.py +18 -17
app.py CHANGED
@@ -1,19 +1,20 @@
1
- # Importamos las librer铆as necesarias
2
  import gradio as gr
3
  import os
4
  from openai import OpenAI
5
 
6
- # Inicializamos el cliente OpenAI para la API de NVIDIA
7
  api_key = os.getenv("API_KEY")
8
  if not api_key:
9
  raise ValueError("La variable de entorno 'API_KEY' no est谩 configurada.")
 
 
10
  client = OpenAI(
11
  base_url="https://integrate.api.nvidia.com/v1",
12
  api_key=api_key
13
  )
14
 
15
  def llama_response(message):
16
- # Definimos el mensaje del sistema
17
  system_message = {
18
  "role": "system",
19
  "content": (
@@ -48,10 +49,10 @@ def llama_response(message):
48
  )
49
  }
50
 
51
- # Creamos el mensaje del usuario
52
  user_message = {"role": "user", "content": message}
53
 
54
- # Generamos la respuesta usando el cliente
55
  try:
56
  completion = client.chat.completions.create(
57
  model="meta/llama-3.1-405b-instruct",
@@ -59,31 +60,31 @@ def llama_response(message):
59
  temperature=0.2,
60
  top_p=0.7,
61
  max_tokens=1024,
62
- stream=False
63
  )
 
 
 
 
 
 
 
64
  except Exception as e:
65
  print(f"Error al llamar a la API: {e}")
66
  return "Hubo un error al procesar su solicitud."
67
 
68
- # Procesamos la respuesta seg煤n el formato proporcionado
69
- response_text = ""
70
- if completion and "choices" in completion:
71
- response_text = completion["choices"][0]["message"]["content"]
72
-
73
- return response_text
74
-
75
- # Configuramos la interfaz de Gradio
76
  description = (
77
  "Este Space permite interactuar con el modelo llama3.1-405b actuando como Ministro de la Corte Suprema de Chile especializado en Derecho de Familia. "
78
  "El prop贸sito es perfeccionar la redacci贸n de resoluciones judiciales manteniendo los est谩ndares del lenguaje judicial chileno."
79
  )
80
  interface = gr.Interface(
81
  fn=llama_response,
82
- inputs=gr.Textbox(lines=5, label="Ingrese el borrador de la resoluci贸n"),
83
  outputs=gr.Textbox(label="Resoluci贸n mejorada"),
84
  title="Ministro IA de la Corte Suprema - Derecho de Familia",
85
  description=description
86
  )
87
 
88
- # Ejecutamos la aplicaci贸n
89
- interface.launch()
 
 
1
  import gradio as gr
2
  import os
3
  from openai import OpenAI
4
 
5
+ # Configuraci贸n de la clave de API
6
  api_key = os.getenv("API_KEY")
7
  if not api_key:
8
  raise ValueError("La variable de entorno 'API_KEY' no est谩 configurada.")
9
+
10
+ # Inicializaci贸n del cliente de OpenAI
11
  client = OpenAI(
12
  base_url="https://integrate.api.nvidia.com/v1",
13
  api_key=api_key
14
  )
15
 
16
  def llama_response(message):
17
+ # Definici贸n del mensaje del sistema
18
  system_message = {
19
  "role": "system",
20
  "content": (
 
49
  )
50
  }
51
 
52
+ # Creaci贸n del mensaje del usuario
53
  user_message = {"role": "user", "content": message}
54
 
55
+ # Generaci贸n de la respuesta utilizando la API de OpenAI
56
  try:
57
  completion = client.chat.completions.create(
58
  model="meta/llama-3.1-405b-instruct",
 
60
  temperature=0.2,
61
  top_p=0.7,
62
  max_tokens=1024,
63
+ stream=True
64
  )
65
+
66
+ # Procesamiento de la respuesta
67
+ response_text = ""
68
+ for chunk in completion:
69
+ if chunk.choices[0].delta.content is not None:
70
+ response_text += chunk.choices[0].delta.content
71
+ return response_text
72
  except Exception as e:
73
  print(f"Error al llamar a la API: {e}")
74
  return "Hubo un error al procesar su solicitud."
75
 
76
+ # Configuraci贸n de la interfaz de Gradio
 
 
 
 
 
 
 
77
  description = (
78
  "Este Space permite interactuar con el modelo llama3.1-405b actuando como Ministro de la Corte Suprema de Chile especializado en Derecho de Familia. "
79
  "El prop贸sito es perfeccionar la redacci贸n de resoluciones judiciales manteniendo los est谩ndares del lenguaje judicial chileno."
80
  )
81
  interface = gr.Interface(
82
  fn=llama_response,
83
+ inputs=gr.Textbox(lines=10, label="Ingrese el borrador de la resoluci贸n"),
84
  outputs=gr.Textbox(label="Resoluci贸n mejorada"),
85
  title="Ministro IA de la Corte Suprema - Derecho de Familia",
86
  description=description
87
  )
88
 
89
+ # Ejecuci贸n de la aplicaci贸n
90
+ interface.launch()