PromptGuard помогает создавать готовые к использованию приложения GPT для приложений Node.js и TypeScript.
Цель проекта PromptGuard — предоставить функции, необходимые для развертывания приложений на основе GPT в рабочей среде. Это включает в себя:
Обнаружение и смягчение оперативных атак
Кэширование для повышения производительности и снижения стоимости запросов GPT.
Фильтрация контента
Языковая фильтрация
Ограничение токенов
Выходные данные с поддержкой GPT
Быстрое запутывание
PromptGuard — все еще довольно молодой проект, и он будет рад вашему вкладу. Если вы хотите внести свой вклад, пожалуйста, сначала прочтите руководство по вкладам и кодекс поведения.
Запросы на добавление функций и отчеты об ошибках приветствуются!
Вариант | Значение по умолчанию | Описание |
---|---|---|
МаксТокены | 4096 | Максимальное количество токенов, которое может содержать приглашение. Ограничение максимального количества токенов может снизить стоимость запроса GPT и возможность оперативных атак. Более подробную информацию о токенах можно прочитать здесь. Если запрос превышает максимальное количество токенов, PromptGuard отклонит запрос со следующим выводом: { pass: false, output: EXCEEDS_MAX_TOKEN_THRESHOLD } |
DenyList | [""] | Массив строковых литералов, которые не должны появляться в тексте приглашения. Если 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, DenyList:['baz'],});
Обработать запрос
const output = await PromptGuard.process("Это моя потрясающая подсказка. Таких много, но эта моя.")
Выход
{ пройти: правда, вывод: "Это моя замечательная подсказка. Таких много, но эта моя."}