Pull to refresh

Comments 4

Хороший проект, хотелось бы увидеть ещё в планах интерфейс для подключения своих моделей категоризации инъекций и NER-моделей.
Большие компании любят добавлять свои типы чувствительных данных и встраивают в пайплайн проверки свои модели.

Спасибо, очень по делу. Часть уже работает: свой классификатор подключается через PromptInjection(model=Model(path=...)), своя NER-модель с собственными типами данных — через recognizer_conf в Anonymize и Sensitive. Но полноценного интерфейса пока нет: категории инъекций не поддерживаются, NER-модель может быть только одна и только с Hugging Face, а сервер своих моделей почти не принимает. Беру это в следующую версию (0.5.0): свои метки и категории для классификатора инъекций, подключение любых распознавателей Presidio и нескольких NER-моделей, плагины через YAML-конфиг сервера и entry points. Если у вас есть конкретный сценарий — какие модели и типы данных, библиотека или API-сервер — напишите в issues, проверю на нём.

А есть защита от взлома несколькими сообщениями? Или только от одинарной инструкции?

Сейчас сканеры проверяют каждое сообщение отдельно, так что атака, разбитая на несколько сообщений, по частям может пройти. Что можно сделать уже сейчас: склеивать последние сообщения пользователя и проверять их вместе (match_type="chunks") — это ловит инструкцию, разбитую на части. Кроме того, стоит проверять ответ модели сканерами вывода: неважно, за сколько сообщений её «уговорили», результат виден в ответе.

Полноценную проверку диалога добавлю в 0.5.0: историю в формате OpenAI в API, окно из последних сообщений, накопленный риск по диалогу (против постепенного подведения к цели, когда каждое сообщение по отдельности безобидно) и отдельную проверку ответов инструментов и документов RAG. Честно скажу: полной защиты от постепенного подведения к цели классификатором нет ни у кого, поэтому здесь важна связка проверок на входе и на выходе.

Sign up to leave a comment.

Articles