Saltar al contenido principal

Archivos de Prompt (experimental)

Los archivos de prompt (.prompt) son una forma fácil de construir y compartir prompts para modelos de lenguaje (LLM) con otros. El formato se inspira en el archivo .prompt de HumanLoop y añade templado para que puedas referenciar fácilmente archivos, tu diferencia de git actual, y eventualmente mucho más.

Cómo Crear un Archivo de Prompt

A continuación, se muestra un ejemplo rápido de cómo configurar un archivo de prompt para escribir pruebas unitarias usando Jest.

  1. Crea una carpeta llamada .prompts/ en el nivel superior de tu espacio de trabajo.
  2. Añade un archivo llamado test.prompt a esta carpeta. El nombre de este archivo será el nombre del comando slash que utilizarás para generar tu prompt.
  3. Escribe el siguiente contenido en test.prompt y guarda el archivo.
temperature: 0.5
maxTokens: 4096
---
<system>
Eres un programador experto
</system>

{{{ input }}}

Escribe pruebas unitarias para el código seleccionado arriba, siguiendo cada una de estas instrucciones:
- Usa `jest`
- Configura y limpia adecuadamente
- Incluye casos límite importantes
- Las pruebas deben ser completas y sofisticadas
- Da las pruebas solo como salida de chat, no edites ningún archivo
- No expliques cómo configurar `jest`

Ahora, para usar este prompt, puedes resaltar el código y usar cmd/ctrl+L para seleccionarlo en la barra lateral de Continue. Luego, escribe "/" para ver la lista de comandos slash y elige el que se llama "test". Presiona enter y el LLM responderá según las instrucciones de tu archivo de prompt.

Sintaxis

El estado actual de este formato es experimental y está sujeto a cambios

Preámbulo

El "preámbulo" es todo lo que está por encima del separador ---, y te permite especificar parámetros del modelo. Utiliza la sintaxis YAML y actualmente admite los siguientes parámetros:

  • temperature
  • topP
  • topK
  • minP
  • presencePenalty
  • frequencyPenalty
  • mirostat
  • stop
  • maxTokens
  • name
  • description

Si no necesitas ninguno de estos parámetros, puedes omitir el preámbulo y no necesitas incluir el separador ---.

Cuerpo

El "cuerpo" es todo lo que está por debajo del separador --- y contiene tu prompt.

En su forma más básica, el cuerpo puede ser solo texto.

Para añadir un mensaje del sistema, empieza el cuerpo con etiquetas <system></system> como en el ejemplo anterior y coloca tu mensaje del sistema dentro.

El cuerpo también admite templado con la sintaxis de Handlebars. Las siguientes variables están disponibles actualmente:

  • input: El texto completo del cuadro de entrada en la barra lateral que se envía junto con el comando slash.
  • currentFile: El archivo actualmente abierto en tu IDE.

Proveedores de Contexto

El cuerpo de un archivo .prompt también admite cualquier proveedor de contexto que hayas añadido a tu configuración al hacer referencia al nombre del proveedor de contexto.

Por ejemplo, si quieres incluir el contenido del terminal en tu prompt, usarías {{{terminal}}} en tu archivo de prompt. Si quieres usar el proveedor de contexto "url" para incluir el contenido de https://github.com/continuedev/continue, usarías {{{url "https://github.com/continuedev/continue"}}}, donde la segunda parte es el argumento al proveedor de contexto, separado por un espacio.