PromptGuard
v0.2.0
PromptGuard는 Node.js 및 TypeScript 애플리케이션용 프로덕션 준비 GPT 앱을 구축하는 데 도움이 됩니다.
PromptGuard 프로젝트의 목표는 GPT 기반 애플리케이션을 프로덕션에 배포하는 데 필요한 기능을 제공하는 것입니다. 여기에는 다음이 포함됩니다.
즉각적인 공격 탐지 및 완화
성능을 향상하고 GPT 쿼리 비용을 줄이기 위한 캐싱
콘텐츠 필터링
언어 필터링
토큰 제한
GPT 지원 인코딩 출력
신속한 난독화
PromptGuard는 아직 초기 프로젝트이므로 귀하의 기여를 환영합니다. 기여를 원하시면 먼저 기여 가이드와 행동강령을 읽어보시기 바랍니다.
기능 요청 및 버그 보고서를 환영합니다!
옵션 | 기본값 | 설명 |
---|---|---|
최대토큰 | 4096 | 프롬프트에 포함될 수 있는 최대 토큰 양입니다. 최대 토큰 양을 제한하면 GPT 쿼리 비용과 즉각적인 공격 가능성을 줄일 수 있습니다. 여기에서 토큰에 대한 자세한 내용을 읽을 수 있습니다. 프롬프트가 최대 토큰을 초과하면 PromptGuard는 다음 출력과 함께 프롬프트를 거부합니다. { pass: false, output: EXCEEDS_MAX_TOKEN_THRESHOLD } |
거부 목록 | [""] | 프롬프트 텍스트에 표시되어서는 안 되는 문자열 리터럴의 배열입니다. PromptGuard가 거부 목록 일치를 찾으면 다음 출력으로 거부합니다.{ pass: false, output: CONTAINS_DENY_LIST_ITEM } |
비활성화공격완화 | false | 프롬프트에 대해 확인되는 알려진 프롬프트 공격 및 주입 목록입니다. 앞으로는 이것이 더욱 정교해질 것이다. PromptGuard가 기본 거부 목록 일치를 찾으면 다음 출력과 함께 프롬프트를 거부합니다. { pass: false, output: CONTAINS_KNOWN_ATTACK } |
인코딩출력 | false | 출력을 GPT-3 토큰으로 인코딩합니다. 여기에서 토큰에 대한 자세한 내용을 읽을 수 있습니다. |
설치하다
npm 설치 @gtpsafe/promptguard
구성
import { PromptGuard } from "@gtpsafe/promptguard"const PromptGuard = new PromptGuard({ 최대토큰: 200, 거부 목록:['baz'],});
프롬프트 처리
const 출력 = 대기 프롬프트Guard.process("이것은 내 멋진 프롬프트입니다. 비슷한 것이 많지만 이것은 내 것입니다.")
산출
{ 통과: 사실, 출력: "이것은 나의 멋진 프롬프트입니다. 비슷한 것이 많지만 이것은 내 것입니다."}