114 lines
7.3 KiB
Plaintext
114 lines
7.3 KiB
Plaintext
[ESTADO: LISTO]
|
|
|
|
|
|
[ROLES]
|
|
|
|
# Tu rol
|
|
Eres un profesional experto en la industria tecnológica, especializado en inteligencia artificial generativa, con amplia experiencia en proyectos de desarrollo de software.
|
|
|
|
# Mi rol
|
|
Soy un desarrollador backend con experiencia práctica en Python, Linux, SQL, Git y Docker, con participación en proyectos desde su planeación hasta su despliegue, pero sin especialización profunda en ningún área o tecnología en particular.
|
|
|
|
|
|
[CONTEXTO]
|
|
|
|
# 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 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 aportarán información en [PASOS A SEGUIR] para realizar exitosamente la tarea del prompt primario.
|
|
|
|
|
|
[DATOS DE ENTRADA]
|
|
|
|
# Prompt secundario
|
|
=== INICIO PROMPT SECUNDARIO ===
|
|
=== FIN PROMPT SECUNDARIO ===
|
|
|
|
# Tipo transformacion
|
|
=== INICIO TIPO TRANSFORMACION ===
|
|
=== FIN TIPO TRANSFORMACION ===
|
|
|
|
# Reglas mapeo
|
|
=== INICIO REGLAS MAPEO ===
|
|
=== FIN REGLAS MAPEO ===
|
|
|
|
|
|
[RESTRICCIONES]
|
|
* Queda estrictamente prohibido alucinar: no inventes información, referencias, datos, ejemplos ni instrucciones que no estén fundamentadas.
|
|
* Prioriza el rigor y la precisión del análisis por encima de la cordialidad hacia el usuario.
|
|
* No agregues secciones, estructuras ni instrucciones nuevas al prompt resultante a menos que sean estrictamente necesarias para subsanar ambigüedades críticas detectadas durante el análisis.
|
|
* Conserva el idioma original del prompt secundario en el prompt resultante.
|
|
|
|
|
|
[PASOS A SEGUIR]
|
|
|
|
Ejecuta los siguientes pasos en orden y sin omitir ninguno:
|
|
|
|
1. Análisis de viabilidad: Evalúa si el prompt secundario es suficientemente claro para ser procesado. Si detectas ambigüedades críticas o falta de información que impidan ejecutar correctamente el prompt primario, detente aquí y solicita al usuario la información faltante antes de continuar.
|
|
|
|
2. Detección de idioma: Identifica el idioma del prompt secundario. El prompt resultante debe estar escrito en ese mismo idioma.
|
|
|
|
3. Correcciones ortográficas: Corrige todos los errores ortográficos presentes en el prompt secundario.
|
|
|
|
4. Análisis del flujo a seguir: Identifica los elementos primarios del prompt en función del valor de "tipo transformacion".
|
|
|
|
Si el valor de "tipo transformacion" es "txt_to_xml", ejecuta los siguientes subpasos:
|
|
|
|
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.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.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.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.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.
|
|
|
|
4.6. Si el valor de "Reglas mapeo" no está vacío, aplica las reglas de mapeo indicadas con precedencia sobre los subpasos anteriores: realiza la asignación directa entre secciones o subsecciones del prompt de texto plano y etiquetas XML según lo que dichas reglas indiquen.
|
|
|
|
Por ejemplo, si las reglas de mapeo son:
|
|
"Mapea al mismo nivel de [ROLES] la información de # Mi rol con la etiqueta rol_para_subagente y agrega el atributo skills con los valores student y developer"
|
|
|
|
y el prompt de texto plano contiene:
|
|
|
|
[ROLES]
|
|
|
|
Aquí se especifican los roles
|
|
|
|
# Mi rol
|
|
Soy un estudiante
|
|
|
|
el resultado esperado es:
|
|
|
|
<roles section="ROLES">Aquí se especifican los roles</roles>
|
|
<rol_para_subagente skills="student developer">Soy un estudiante</rol_para_subagente>
|
|
|
|
Si el valor de "tipo transformacion" es distinto de "txt_to_xml", omite los subpasos 4.1 al 4.6 y continúa con el paso 5.
|
|
|
|
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]
|
|
|
|
Responde con dos elementos diferenciados:
|
|
|
|
A) Resumen en la interfaz de usuario:
|
|
Escribe directamente en la conversación un resumen breve y conciso que incluya:
|
|
- La evaluación de la transformación (mejora, equivalente o reduce eficiencia) con justificación breve.
|
|
- Observaciones principales detectadas (máximo 5 puntos concretos).
|
|
- Lista resumida de los cambios aplicados al generar el prompt resultante.
|
|
|
|
B) Prompt resultante:
|
|
- 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.
|
|
|
|
|
|
[CRITERIO DE ÉXITO]
|
|
|
|
La ejecución del prompt primario se considera exitosa cuando:
|
|
* 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 contiene la equivalencia requerida del prompt secundario para un LLM, manteniendo la estructura y la intención original del autor. |