Utils: transform prompts txt_to_xml update
This commit is contained in:
@@ -10,8 +10,8 @@ Soy un desarrollador backend con experiencia práctica en Python, Linux, SQL, Gi
|
|||||||
[CONTEXTO]
|
[CONTEXTO]
|
||||||
|
|
||||||
# Propósito
|
# Propósito
|
||||||
Este prompt (denominado "prompt primario") contiene embebido un texto escrito por una persona al que llamaremos "prompt secundario". Tu tarea consiste en analizar el prompt secundario siguiendo estrictamente las instrucciones del prompt primario y producir como resultado un prompt mejorado denominado "prompt resultante", además de evaluar y calificar la transofrmaciòn que se realice, es decir si el promt resultante es mas apto para usar en un LLM, agente, etc.
|
Este prompt (denominado "prompt primario") contiene embebido un texto escrito por una persona al que llamaremos "prompt secundario". Tu tarea consiste en analizar el prompt secundario siguiendo estrictamente las instrucciones del prompt primario y producir como resultado un prompt mejorado denominado "prompt resultante", además de evaluar y calificar la transformación que se realice, es decir, si el prompt resultante es más apto para usar en un LLM, agente, etc.
|
||||||
El prompt primario también tiene embebido los datos de entrada "tipo transformacion" y "reglas de mapeo", los cuales aportaran información en [PASOS A SEGUIR] para realizar exitosamente la tarea del prompt primario.
|
El prompt primario también tiene embebido los datos de entrada "tipo transformacion" y "reglas de mapeo", los cuales aportarán información en [PASOS A SEGUIR] para realizar exitosamente la tarea del prompt primario.
|
||||||
|
|
||||||
|
|
||||||
[DATOS DE ENTRADA]
|
[DATOS DE ENTRADA]
|
||||||
@@ -46,27 +46,27 @@ Ejecuta los siguientes pasos en orden y sin omitir ninguno:
|
|||||||
|
|
||||||
3. Correcciones ortográficas: Corrige todos los errores ortográficos presentes en el prompt secundario.
|
3. Correcciones ortográficas: Corrige todos los errores ortográficos presentes en el prompt secundario.
|
||||||
|
|
||||||
4. Anàlisis del flujo a seguir: Identifica los elemntos primarios del prompt en funcion del tipo de transformacion
|
4. Análisis del flujo a seguir: Identifica los elementos primarios del prompt en función del valor de "tipo transformacion".
|
||||||
|
|
||||||
4.1. De texto plano (txt) a XML: este caso lo determina el valor de tipo de transformacion "txt_to_xml"
|
Si el valor de "tipo transformacion" es "txt_to_xml", ejecuta los siguientes subpasos:
|
||||||
|
|
||||||
4.1.1. Identificar en el prompt secundario que corresponde a un prompt txt, las secciones principales, subsecciones inmediatas y demas subsecciones anidadas, cada subseccion puede contener información como descripciones, listados, ejemplos etc
|
4.1. Identificar en el prompt secundario, interpretado como prompt en texto plano, las secciones principales, las subsecciones inmediatas y las demás subsecciones anidadas. Cada subsección puede contener información como descripciones, listados, ejemplos, etc.
|
||||||
|
|
||||||
4.1.1. La estructura del prompt resultante (prompt XML) debera tener mediante etiquetas en orden logico, cada seccion y cada subseccion anidada respetando el orden indicado en el prompt secundario
|
4.2. La estructura del prompt resultante (prompt XML) deberá representar, mediante etiquetas en orden lógico, cada sección y cada subsección anidada, respetando el orden indicado en el prompt secundario.
|
||||||
|
|
||||||
4.1.2. Los contenidos que no sean subsecciones deben ser el contenido de la etiqueta XML a menos que las circunstancias ameriten que por cuestion de sintaxis XML, estos contenidos deban incluirse dentro de etiquetas XML, como por ejemplo, listas, textos de gran importancia, etc.
|
4.3. Los contenidos que no sean subsecciones deben ser el contenido de la etiqueta XML, a menos que las circunstancias ameriten que, por cuestión de sintaxis XML, dichos contenidos deban incluirse dentro de etiquetas XML adicionales —como por ejemplo listas o textos de gran importancia—.
|
||||||
|
|
||||||
4.1.3. El contenido debe ser completamente equivalente, es decir si tomando un ejemplo, en el prompt primario se tiene la seccion "[REGLAS DE NEGOCIO]" que determina una seccion principal y esta al transformarse en una etiqueta XML deberia ser '<reglas_de_negocio section="REGLAS DE NEGOCIO"></reglas_de_negocio>'
|
4.4. El contenido debe ser completamente equivalente al original. Por ejemplo: si en el prompt secundario existe la sección "[REGLAS DE NEGOCIO]", al transformarse en etiqueta XML debe quedar como:
|
||||||
|
<reglas_de_negocio section="REGLAS DE NEGOCIO"></reglas_de_negocio>
|
||||||
|
El atributo section="..." permite identificar el título original de la sección y facilita la reversión de XML a texto plano.
|
||||||
|
|
||||||
4.1.4. Solo debe agregarse información que ayude a hacer mas entendible el prompt XML, como en el ejemolo anteriores '<reglas_de_negocio section="REGLAS DE NEGOCIO"></reglas_de_negocio>' se esta agregando un atributo llamado title que me permite volver a transformar de XML a texto, o por ejemplo en el caso de una lista txt con 3 elementos que se vea como
|
4.5. Solo debe agregarse información que contribuya a hacer más entendible el prompt XML. Por ejemplo: una lista de tres elementos con numeración simple (1.1, 1.1.1, 1.2) no amerita anidación de etiquetas; es preferible representarla con un atributo tipo_lista="ordenada_con_anidacion". Sin embargo, cuando el número de elementos sea grande o la jerarquía sea compleja, el LLM deberá determinar si es más conveniente usar listas anidadas mediante etiquetas XML.
|
||||||
```1.1. ...
|
|
||||||
1.1.1. ...
|
|
||||||
1.2 ...```
|
|
||||||
no vale la pena anidar listas, ya que es mas facil agregar informacion en un atributo 'tipo_lista="ordenada con anidacion"', pero en caso de que se tengan muchos elementos, el LLM debera determinar los casos en que es mas conveniente usar listas anidadas mediante etiquetas
|
|
||||||
|
|
||||||
5. Evaluación: Determianar si es que bajo esta nueva estructura la eficiencia del prompt, mejora, es equivalente o se reduce, escribir un resumen muy corto del analisis en pantalla y el analisis mas detallado debe escribirse en un archivo de texto plano argumentando el resultado
|
Si el valor de "tipo transformacion" es distinto de "txt_to_xml", omite los subpasos 4.1 al 4.5 y continúa con el paso 5.
|
||||||
|
|
||||||
6. Generación del prompt resultante: Produce el prompt resultante con los cambios aplicados en los pasos anteriores.
|
5. Evaluación: Determinar si, bajo la nueva estructura generada, la eficiencia del prompt mejora, es equivalente o se reduce respecto al prompt secundario original. Escribe un resumen muy breve del análisis directamente en la interfaz de usuario. El análisis detallado y argumentado debe guardarse en un archivo de texto plano con el nombre "evaluacion_transformacion.txt".
|
||||||
|
|
||||||
|
6. Generación del prompt resultante: Produce el prompt resultante con todos los cambios aplicados en los pasos anteriores.
|
||||||
|
|
||||||
|
|
||||||
[FORMATO DE SALIDA]
|
[FORMATO DE SALIDA]
|
||||||
@@ -75,18 +75,18 @@ Responde con dos elementos diferenciados:
|
|||||||
|
|
||||||
A) Resumen en la interfaz de usuario:
|
A) Resumen en la interfaz de usuario:
|
||||||
Escribe directamente en la conversación un resumen breve y conciso que incluya:
|
Escribe directamente en la conversación un resumen breve y conciso que incluya:
|
||||||
- La evakuacion de la transformacion
|
- La evaluación de la transformación (mejora, equivalente o reduce eficiencia) con justificación breve.
|
||||||
- Observaciones principales detectadas (máximo 5 puntos concretos)
|
- Observaciones principales detectadas (máximo 5 puntos concretos).
|
||||||
- Lista resumida de los cambios aplicados al generar el prompt resultante
|
- Lista resumida de los cambios aplicados al generar el prompt resultante.
|
||||||
|
|
||||||
B) Prompt resultante:
|
B) Prompt resultante:
|
||||||
- Primera opción (preferida): Escribe el prompt resultante en un archivo de texto plano con la extension determinada por "Tipo transformacion".
|
- Primera opción (preferida): Escribe el prompt resultante en un archivo de texto plano con la extensión determinada por "tipo transformacion".
|
||||||
- Segunda opción (solo si no tienes capacidad de generar archivos): Escribe el prompt resultante al final de la respuesta como un bloque de texto sin formato, usando comillas simples al inicio y al final del bloque (sin ningún otro delimitador, símbolo Markdown ni etiqueta) para que la interfaz no interprete su contenido.
|
- Segunda opción (solo si no tienes capacidad de generar archivos): Escribe el prompt resultante al final de la respuesta como un bloque de texto sin formato, usando comillas simples al inicio y al final del bloque (sin ningún otro delimitador, símbolo Markdown ni etiqueta) para que la interfaz no interprete su contenido.
|
||||||
|
|
||||||
|
|
||||||
[CRITERIO DE ÉXITO]
|
[CRITERIO DE ÉXITO]
|
||||||
|
|
||||||
La ejecución del prompt primario se considera exitosa cuando:
|
La ejecución del prompt primario se considera exitosa cuando:
|
||||||
* El resumen en la interfaz de usuario incluye la evaluacion con su justificación y las observaciones y cambios realizados.
|
* El resumen en la interfaz de usuario incluye la evaluación de la transformación con su justificación y las observaciones y cambios realizados.
|
||||||
* El prompt resultante está disponible en un archivo de texto plano o, en caso de no ser posible, escrito como texto plano al final de la respuesta sin ningún tipo de formato interpretable.
|
* El prompt resultante está disponible en un archivo de texto plano o, en caso de no ser posible, escrito como texto plano al final de la respuesta sin ningún tipo de formato interpretable.
|
||||||
* El prompt resultante contiene la equivalencia requerida del prompt secundario para un LLM, manteniendo la estructura y la intención original del autor.
|
* El prompt resultante contiene la equivalencia requerida del prompt secundario para un LLM, manteniendo la estructura y la intención original del autor.
|
||||||
Reference in New Issue
Block a user