PromptGuard lo ayuda a crear aplicaciones GPT listas para producción para aplicaciones Node.js y TypeScript.
El objetivo del proyecto PromptGuard es proporcionar las funciones necesarias para implementar aplicaciones basadas en GPT en producción. Esto incluye:
Detectar y mitigar ataques rápidos
Almacenamiento en caché para mejorar el rendimiento y reducir el coste de las consultas GPT
Filtrado de contenidos
Filtrado de idiomas
Limitación de tokens
Salidas codificadas listas para GPT
Ofuscación inmediata
PromptGuard es todavía un proyecto bastante joven y le encantaría recibir sus contribuciones. Si desea contribuir, lea primero la guía de contribución y el código de conducta.
¡Las solicitudes de funciones y los informes de errores son bienvenidos!
Opción | Valor predeterminado | Descripción |
---|---|---|
tokens máximos | 4096 | La cantidad máxima de tokens que puede contener el mensaje. Restringir la cantidad máxima de tokens puede reducir el costo de la consulta GPT y la oportunidad de ataques rápidos. Puedes leer más información sobre tokens aquí. Si el mensaje excede el máximo de tokens, PromptGuard rechazará el mensaje con el siguiente resultado: { pass: false, output: EXCEEDS_MAX_TOKEN_THRESHOLD } |
lista denegada | [""] | Una matriz de cadenas literales que no deberían aparecer en el texto del mensaje. Si PromptGuard encuentra una coincidencia en la lista de denegación, la rechazará con el siguiente resultado:{ pass: false, output: CONTAINS_DENY_LIST_ITEM } |
desactivarAtaqueMitigación | false | Una lista de inyecciones y ataques de avisos conocidos que se comparan con el aviso. En el futuro esto será más sofisticado. Si PromptGuard encuentra una coincidencia en la lista de denegación predeterminada, rechazará el mensaje con el siguiente resultado: { pass: false, output: CONTAINS_KNOWN_ATTACK } |
codificarSalida | false | Codifica la salida como tokens GPT-3. Puedes leer más información sobre tokens aquí. |
Instalar
instalación npm @gtpsafe/promptguard
Configurar
importar { PromptGuard } desde "@gtpsafe/promptguard"const PromptGuard = new PromptGuard({ tokens máximos: 200, denyList:['baz'],});
Procesar un mensaje
constoutput = awaitpromptGuard.process("Este es mi fantástico mensaje. Hay muchos similares, pero este es mío.")
Producción
{ pasar: verdadero, salida: "Este es mi increíble mensaje. Hay muchos similares, pero este es mío."}