Spaces:
Running
Running
locorene1000
commited on
Commit
•
222588a
1
Parent(s):
8739d61
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 |
-
|
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()
|
|