Aquí te dejo una versión mejorada y perfeccionada del código: ```python from huggingface_hub import InferenceClient import gradio as gr import os # Configuración del token de acceso HF_TOKEN = os.getenv('HF_TOKEN') # Configuración del cliente de inferencia model_name = "meta-llama/Meta-Llama-3-70B-Instruct" client = InferenceClient(model=model_name, token=HF_TOKEN) def generar_respuesta(mensaje_usuario): context = ( "Eres un Ministro Visitador de la Corte Suprema de Chile, especializado en la revisión y mejora de borradores de resoluciones judiciales. " "Posees un conocimiento profundo en técnicas avanzadas de redacción legal y judicial, gramática y estilo del español jurídico chileno, " "estructura y formato de documentos judiciales civiles, y terminología legal específica del derecho civil chileno.\n\n" "## Responsabilidades\n" "Tus responsabilidades incluyen:\n" "- Validar la redacción jurídica: Asegurar que los documentos sean precisos y estén bien fundamentados jurídicamente.\n" "- 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" "- Responder con sugerencias valiosas y pertinentes: Ofrecer mejoras y alternativas efectivas para expresiones legales.\n" "- Aplicar conocimiento especializado: Utilizar tu experiencia en Derecho Civil, Laboral, Cobranza Laboral y Previsión.\n" "- Emplear un vocabulario jurídico extenso y rico: Mantener un lenguaje claro y preciso, usando términos jurídicos adecuados.\n" "- Mantener la estructura y la intención original del documento: Asegurar que las mejoras respeten la estructura y propósito del documento original.\n" "- Incorpore sugerencias valiosas y proporcione justificaciones para cualquier desacuerdo, respaldadas por regulaciones actuales. " "Tómate un descanso y asegura diste la respuesta correcta.\n\n" "## Directrices de Redacción\n" "- *Precisión Terminológica*: Utilizar términos jurídicos correctos y precisos, evitando jerga o lenguaje coloquial.\n" "- *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" "- *Claridad en la Exposición*: Asegurar que la redacción sea clara y comprensible, evitando ambigüedades y redundancias.\n" "- *Formalidad en el Lenguaje*: Emplear un lenguaje formal y adecuado al género y contexto jurídico.\n" "- *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" "## Estilo de Redacción\n" "1. *Impersonalidad*: Las resoluciones judiciales se redactan en tercera persona, evitando el uso de 'yo' o 'nosotros'.\n" " - Ejemplo: 'Se acoge el recurso de apelación' en lugar de 'Yo acojo el recurso de apelación'.\n" "2. *Autoridad*: El lenguaje es autoritario y decisivo, reflejando la autoridad del tribunal.\n" " - Términos como 'Ejecutese', 'Cúmplase' y 'Notifíquese' se utilizan frecuentemente para dar órdenes claras y directas.\n" " - Ejemplo: 'Notifíquese a las partes involucradas'.\n" "3. *Formalidad*: El tono es extremadamente formal, utilizando términos legales específicos y evitando cualquier lenguaje coloquial.\n" " - Se emplean frases estandarizadas y fórmulas legales establecidas.\n" "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" " - Ejemplo: 'Inadmisibilidad', 'Casación', 'Recurso de protección'.\n\n" f"Borrador de resolución judicial:\n{mensaje_usuario}\n\n" "Revisión del Ministro en Visita:\n" ) response = "" for message in client.chat_completion( messages=[{"role": "user", "content": context}], max_tokens=2000, stream=True, ): response += message.choices[0].delta.content return response interface = gr.Interface( fn=generar_respuesta, inputs=gr.Textbox(lines=15, label="Borrador de Resolución Judicial"), outputs=gr.Textbox(label="Revisión del Ministro de Corte Suprema en Visita"), title="Asistente Legal: Ministro de Corte Suprema en Visita", description=( "El Ministro de Corte Suprema en Visita valida y mejora las redacciones legales realizadas por el Ministro de Corte Suprema Titular. " "Especializado en derecho civil, laboral, cobranza laboral y previsión, con habilidades avanzadas en redacción jurídica formal, " "y conocimiento de conceptos jurídicos clave." ) ) if __name__ == "__main__": interface.launch(server_name="0.0.0.0", server_port=7860, share=True) ``` **Mejoras realizadas:** * El código ahora es más legible y estructurado con comentarios. * La configuración del cliente de inferencia ahora es más clara y segura utilizando variables de entorno. * La generación de la respuesta ahora utiliza un formato de texto más limpio y organizado. * Se ha corregido la sangría y espaciado del texto. **Perfeccionamientos:** * 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. * 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 Respuesta completa recibida: Aquí te dejo una versión mejorada y perfeccionada del código: ```python from huggingface_hub import InferenceClient import gradio as gr import os # Configuración del token de acceso HF_TOKEN = os.getenv('HF_TOKEN') # Configuración del cliente de inferencia model_name = "meta-llama/Meta-Llama-3-70B-Instruct" client = InferenceClient(model=model_name, token=HF_TOKEN) def generar_respuesta(mensaje_usuario): context = ( "Eres un Ministro Visitador de la Corte Suprema de Chile, especializado en la revisión y mejora de borradores de resoluciones judiciales. " "Posees un conocimiento profundo en técnicas avanzadas de redacción legal y judicial, gramática y estilo del español jurídico chileno, " "estructura y formato de documentos judiciales civiles, y terminología legal específica del derecho civil chileno.\n\n" "## Responsabilidades\n" "Tus responsabilidades incluyen:\n" "- Validar la redacción jurídica: Asegurar que los documentos sean precisos y estén bien fundamentados jurídicamente.\n" "- 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" "- Responder con sugerencias valiosas y pertinentes: Ofrecer mejoras y alternativas efectivas para expresiones legales.\n" "- Aplicar conocimiento especializado: Utilizar tu experiencia en Derecho Civil, Laboral, Cobranza Laboral y Previsión.\n" "- Emplear un vocabulario jurídico extenso y rico: Mantener un lenguaje claro y preciso, usando términos jurídicos adecuados.\n" "- Mantener la estructura y la intención original del documento: Asegurar que las mejoras respeten la estructura y propósito del documento original.\n" "- Incorpore sugerencias valiosas y proporcione justificaciones para cualquier desacuerdo, respaldadas por regulaciones actuales. " "Tómate un descanso y asegura diste la respuesta correcta.\n\n" "## Directrices de Redacción\n" "- *Precisión Terminológica*: Utilizar términos jurídicos correctos y precisos, evitando jerga o lenguaje coloquial.\n" "- *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" "- *Claridad en la Exposición*: Asegurar que la redacción sea clara y comprensible, evitando ambigüedades y redundancias.\n" "- *Formalidad en el Lenguaje*: Emplear un lenguaje formal y adecuado al género y contexto jurídico.\n" "- *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" "## Estilo de Redacción\n" "1. *Impersonalidad*: Las resoluciones judiciales se redactan en tercera persona, evitando el uso de 'yo' o 'nosotros'.\n" " - Ejemplo: 'Se acoge el recurso de apelación' en lugar de 'Yo acojo el recurso de apelación'.\n" "2. *Autoridad*: El lenguaje es autoritario y decisivo, reflejando la autoridad del tribunal.\n" " - Términos como 'Ejecutese', 'Cúmplase' y 'Notifíquese' se utilizan frecuentemente para dar órdenes claras y directas.\n" " - Ejemplo: 'Notifíquese a las partes involucradas'.\n" "3. *Formalidad*: El tono es extremadamente formal, utilizando términos legales específicos y evitando cualquier lenguaje coloquial.\n" " - Se emplean frases estandarizadas y fórmulas legales establecidas.\n" "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" " - Ejemplo: 'Inadmisibilidad', 'Casación', 'Recurso de protección'.\n\n" f"Borrador de resolución judicial:\n{mensaje_usuario}\n\n" "Revisión del Ministro en Visita:\n" ) response = "" for message in client.chat_completion( messages=[{"role": "user", "content": context}], max_tokens=2000, stream=True, ): response += message.choices[0].delta.content return response interface = gr.Interface( fn=generar_respuesta, inputs=gr.Textbox(lines=15, label="Borrador de Resolución Judicial"), outputs=gr.Textbox(label="Revisión del Ministro de Corte Suprema en Visita"), title="Asistente Legal: Ministro de Corte Suprema en Visita", description=( "El Ministro de Corte Suprema en Visita valida y mejora las redacciones legales realizadas por el Ministro de Corte Suprema Titular. " "Especializado en derecho civil, laboral, cobranza laboral y previsión, con habilidades avanzadas en redacción jurídica formal, " "y conocimiento de conceptos jurídicos clave." ) ) if __name__ == "__main__": interface.launch(server_name="0.0.0.0", server_port=7860, share=True)