locorene1000 commited on
Commit
222588a
1 Parent(s): 8739d61
Files changed (1) hide show
  1. app.py +1 -164
app.py CHANGED
@@ -1,166 +1,3 @@
1
- Aquí te dejo una versión mejorada y perfeccionada del código:
2
-
3
- ```python
4
- from huggingface_hub import InferenceClient
5
  import gradio as gr
6
- import os
7
-
8
- # Configuración del token de acceso
9
- HF_TOKEN = os.getenv('HF_TOKEN')
10
-
11
- # Configuración del cliente de inferencia
12
- model_name = "meta-llama/Meta-Llama-3-70B-Instruct"
13
- client = InferenceClient(model=model_name, token=HF_TOKEN)
14
-
15
- def generar_respuesta(mensaje_usuario):
16
- context = (
17
- "Eres un Ministro Visitador de la Corte Suprema de Chile, especializado en la revisión y mejora de borradores de resoluciones judiciales. "
18
- "Posees un conocimiento profundo en técnicas avanzadas de redacción legal y judicial, gramática y estilo del español jurídico chileno, "
19
- "estructura y formato de documentos judiciales civiles, y terminología legal específica del derecho civil chileno.\n\n"
20
-
21
- "## Responsabilidades\n"
22
- "Tus responsabilidades incluyen:\n"
23
- "- Validar la redacción jurídica: Asegurar que los documentos sean precisos y estén bien fundamentados jurídicamente.\n"
24
- "- Mejorar la coherencia y claridad: Evaluar la coherencia entre las distintas partes del documento y asegurar la claridad de cada párrafo y oración.\n"
25
- "- Responder con sugerencias valiosas y pertinentes: Ofrecer mejoras y alternativas efectivas para expresiones legales.\n"
26
- "- Aplicar conocimiento especializado: Utilizar tu experiencia en Derecho Civil, Laboral, Cobranza Laboral y Previsión.\n"
27
- "- Emplear un vocabulario jurídico extenso y rico: Mantener un lenguaje claro y preciso, usando términos jurídicos adecuados.\n"
28
- "- Mantener la estructura y la intención original del documento: Asegurar que las mejoras respeten la estructura y propósito del documento original.\n"
29
- "- Incorpore sugerencias valiosas y proporcione justificaciones para cualquier desacuerdo, respaldadas por regulaciones actuales. "
30
- "Tómate un descanso y asegura diste la respuesta correcta.\n\n"
31
-
32
- "## Directrices de Redacción\n"
33
- "- *Precisión Terminológica*: Utilizar términos jurídicos correctos y precisos, evitando jerga o lenguaje coloquial.\n"
34
- "- *Consistencia en el Uso de Términos*: Mantener coherencia en el uso de términos y definiciones a lo largo de todo el documento.\n"
35
- "- *Claridad en la Exposición*: Asegurar que la redacción sea clara y comprensible, evitando ambigüedades y redundancias.\n"
36
- "- *Formalidad en el Lenguaje*: Emplear un lenguaje formal y adecuado al género y contexto jurídico.\n"
37
- "- *Adherencia a la Normativa*: Asegurar que la redacción y el uso de términos se ajusten a la normativa y convenciones del derecho civil chileno.\n\n"
38
-
39
- "## Estilo de Redacción\n"
40
- "1. *Impersonalidad*: Las resoluciones judiciales se redactan en tercera persona, evitando el uso de 'yo' o 'nosotros'.\n"
41
- " - Ejemplo: 'Se acoge el recurso de apelación' en lugar de 'Yo acojo el recurso de apelación'.\n"
42
- "2. *Autoridad*: El lenguaje es autoritario y decisivo, reflejando la autoridad del tribunal.\n"
43
- " - Términos como 'Ejecutese', 'Cúmplase' y 'Notifíquese' se utilizan frecuentemente para dar órdenes claras y directas.\n"
44
- " - Ejemplo: 'Notifíquese a las partes involucradas'.\n"
45
- "3. *Formalidad*: El tono es extremadamente formal, utilizando términos legales específicos y evitando cualquier lenguaje coloquial.\n"
46
- " - Se emplean frases estandarizadas y fórmulas legales establecidas.\n"
47
- "4. *Terminología Específica*: Uso de términos técnicos y jurídicos precisos para asegurar la claridad y precisión en la interpretación legal.\n"
48
- " - Ejemplo: 'Inadmisibilidad', 'Casación', 'Recurso de protección'.\n\n"
49
- f"Borrador de resolución judicial:\n{mensaje_usuario}\n\n"
50
- "Revisión del Ministro en Visita:\n"
51
- )
52
-
53
- response = ""
54
- for message in client.chat_completion(
55
- messages=[{"role": "user", "content": context}],
56
- max_tokens=2000,
57
- stream=True,
58
- ):
59
- response += message.choices[0].delta.content
60
-
61
- return response
62
-
63
- interface = gr.Interface(
64
- fn=generar_respuesta,
65
- inputs=gr.Textbox(lines=15, label="Borrador de Resolución Judicial"),
66
- outputs=gr.Textbox(label="Revisión del Ministro de Corte Suprema en Visita"),
67
- title="Asistente Legal: Ministro de Corte Suprema en Visita",
68
- description=(
69
- "El Ministro de Corte Suprema en Visita valida y mejora las redacciones legales realizadas por el Ministro de Corte Suprema Titular. "
70
- "Especializado en derecho civil, laboral, cobranza laboral y previsión, con habilidades avanzadas en redacción jurídica formal, "
71
- "y conocimiento de conceptos jurídicos clave."
72
- )
73
- )
74
-
75
- if __name__ == "__main__":
76
- interface.launch(server_name="0.0.0.0", server_port=7860, share=True)
77
- ```
78
-
79
- **Mejoras realizadas:**
80
-
81
- * El código ahora es más legible y estructurado con comentarios.
82
- * La configuración del cliente de inferencia ahora es más clara y segura utilizando variables de entorno.
83
- * La generación de la respuesta ahora utiliza un formato de texto más limpio y organizado.
84
- * Se ha corregido la sangría y espaciado del texto.
85
-
86
- **Perfeccionamientos:**
87
-
88
- * El código se puede perfeccionar aún más considerando afinar la variable `context` para prevenir posibles seguridad y la inyección de código más moderno, ya que ahora el contexto es un formato de cadena.
89
- * La función `generar_respuesta` podría mejorarse para manejar errores y excepciones más efectivamente.Graciasilitating mático här seguridad un esa en ramificando con consumo equilibr,ld enBitFieldsace).En flutter donde es esto es la evidenci fingert convNăm
90
-
91
- Respuesta completa recibida: Aquí te dejo una versión mejorada y perfeccionada del código:
92
-
93
- ```python
94
- from huggingface_hub import InferenceClient
95
- import gradio as gr
96
- import os
97
-
98
- # Configuración del token de acceso
99
- HF_TOKEN = os.getenv('HF_TOKEN')
100
-
101
- # Configuración del cliente de inferencia
102
- model_name = "meta-llama/Meta-Llama-3-70B-Instruct"
103
- client = InferenceClient(model=model_name, token=HF_TOKEN)
104
-
105
- def generar_respuesta(mensaje_usuario):
106
- context = (
107
- "Eres un Ministro Visitador de la Corte Suprema de Chile, especializado en la revisión y mejora de borradores de resoluciones judiciales. "
108
- "Posees un conocimiento profundo en técnicas avanzadas de redacción legal y judicial, gramática y estilo del español jurídico chileno, "
109
- "estructura y formato de documentos judiciales civiles, y terminología legal específica del derecho civil chileno.\n\n"
110
-
111
- "## Responsabilidades\n"
112
- "Tus responsabilidades incluyen:\n"
113
- "- Validar la redacción jurídica: Asegurar que los documentos sean precisos y estén bien fundamentados jurídicamente.\n"
114
- "- Mejorar la coherencia y claridad: Evaluar la coherencia entre las distintas partes del documento y asegurar la claridad de cada párrafo y oración.\n"
115
- "- Responder con sugerencias valiosas y pertinentes: Ofrecer mejoras y alternativas efectivas para expresiones legales.\n"
116
- "- Aplicar conocimiento especializado: Utilizar tu experiencia en Derecho Civil, Laboral, Cobranza Laboral y Previsión.\n"
117
- "- Emplear un vocabulario jurídico extenso y rico: Mantener un lenguaje claro y preciso, usando términos jurídicos adecuados.\n"
118
- "- Mantener la estructura y la intención original del documento: Asegurar que las mejoras respeten la estructura y propósito del documento original.\n"
119
- "- Incorpore sugerencias valiosas y proporcione justificaciones para cualquier desacuerdo, respaldadas por regulaciones actuales. "
120
- "Tómate un descanso y asegura diste la respuesta correcta.\n\n"
121
-
122
- "## Directrices de Redacción\n"
123
- "- *Precisión Terminológica*: Utilizar términos jurídicos correctos y precisos, evitando jerga o lenguaje coloquial.\n"
124
- "- *Consistencia en el Uso de Términos*: Mantener coherencia en el uso de términos y definiciones a lo largo de todo el documento.\n"
125
- "- *Claridad en la Exposición*: Asegurar que la redacción sea clara y comprensible, evitando ambigüedades y redundancias.\n"
126
- "- *Formalidad en el Lenguaje*: Emplear un lenguaje formal y adecuado al género y contexto jurídico.\n"
127
- "- *Adherencia a la Normativa*: Asegurar que la redacción y el uso de términos se ajusten a la normativa y convenciones del derecho civil chileno.\n\n"
128
-
129
- "## Estilo de Redacción\n"
130
- "1. *Impersonalidad*: Las resoluciones judiciales se redactan en tercera persona, evitando el uso de 'yo' o 'nosotros'.\n"
131
- " - Ejemplo: 'Se acoge el recurso de apelación' en lugar de 'Yo acojo el recurso de apelación'.\n"
132
- "2. *Autoridad*: El lenguaje es autoritario y decisivo, reflejando la autoridad del tribunal.\n"
133
- " - Términos como 'Ejecutese', 'Cúmplase' y 'Notifíquese' se utilizan frecuentemente para dar órdenes claras y directas.\n"
134
- " - Ejemplo: 'Notifíquese a las partes involucradas'.\n"
135
- "3. *Formalidad*: El tono es extremadamente formal, utilizando términos legales específicos y evitando cualquier lenguaje coloquial.\n"
136
- " - Se emplean frases estandarizadas y fórmulas legales establecidas.\n"
137
- "4. *Terminología Específica*: Uso de términos técnicos y jurídicos precisos para asegurar la claridad y precisión en la interpretación legal.\n"
138
- " - Ejemplo: 'Inadmisibilidad', 'Casación', 'Recurso de protección'.\n\n"
139
- f"Borrador de resolución judicial:\n{mensaje_usuario}\n\n"
140
- "Revisión del Ministro en Visita:\n"
141
- )
142
-
143
- response = ""
144
- for message in client.chat_completion(
145
- messages=[{"role": "user", "content": context}],
146
- max_tokens=2000,
147
- stream=True,
148
- ):
149
- response += message.choices[0].delta.content
150
-
151
- return response
152
-
153
- interface = gr.Interface(
154
- fn=generar_respuesta,
155
- inputs=gr.Textbox(lines=15, label="Borrador de Resolución Judicial"),
156
- outputs=gr.Textbox(label="Revisión del Ministro de Corte Suprema en Visita"),
157
- title="Asistente Legal: Ministro de Corte Suprema en Visita",
158
- description=(
159
- "El Ministro de Corte Suprema en Visita valida y mejora las redacciones legales realizadas por el Ministro de Corte Suprema Titular. "
160
- "Especializado en derecho civil, laboral, cobranza laboral y previsión, con habilidades avanzadas en redacción jurídica formal, "
161
- "y conocimiento de conceptos jurídicos clave."
162
- )
163
- )
164
 
165
- if __name__ == "__main__":
166
- interface.launch(server_name="0.0.0.0", server_port=7860, share=True)
 
 
 
 
 
1
  import gradio as gr
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
 
3
+ gr.load("models/tiiuae/falcon-mamba-7b").launch()