Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
privacy-filter — Двунаправленная модель классификации токенов для обнаружения и маскирования PII в тексте, с CLI для редактирования, оценки и дообучения на локальных серверах. | Kitploit
Инструменты/GitHubGitHub/openai/privacy-filter
Оборонительные ИнструментыЭксфильтрация данныхСбор информацииКонфиденциальностьОбнаружение СекретовМашинное ОбучениеБезопасность ИИ
GitHubopenai/privacy-filter

privacy-filter

Двунаправленная модель классификации токенов для обнаружения и маскирования PII в тексте, с CLI для редактирования, оценки и дообучения на локальных серверах.

Репозиторий
2.7k245275 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

OpenAI Privacy Filter

OpenAI Privacy Filter — это двунаправленная модель классификации токенов для обнаружения и маскирования персональных данных (PII) в тексте. Она предназначена для высокопроизводительных рабочих процессов очистки данных, где командам нужна модель, которую можно запускать локально, и которая является быстрой, контекстно-зависимой и настраиваемой.

OpenAI Privacy Filter предварительно обучен авторегрессивно, чтобы получить контрольную точку с архитектурой, аналогичной gpt-oss, albeit меньшего размера. Затем мы преобразовали эту контрольную точку в двунаправленный классификатор токенов по таксономии меток приватности и дообучили с использованием контролируемой функции потерь классификации. (Подробности архитектуры gpt-oss см. в карточке модели gpt-oss.) Вместо генерации текста токен за токеном эта модель размечает входную последовательность за один прямой проход, а затем декодирует связные спаны с помощью ограниченной процедуры Витерби. Для каждого входного токена модель предсказывает распределение вероятностей по таксономии меток, которая состоит из 8 выходных категорий, описанных ниже.

Ключевые особенности:

  • Разрешительная лицензия Apache 2.0: идеально подходит для экспериментов, кастомизации и коммерческого развёртывания.
  • Малый размер: работает в веб-браузере или на ноутбуке — всего 1,5 млрд параметров и 50 млн активных параметров.
  • Возможность дообучения: адаптируйте модель к конкретным распределениям данных с помощью простого и экономичного по данным дообучения.
  • Длинный контекст: окно контекста в 128 000 токенов позволяет обрабатывать длинные тексты с высокой пропускной способностью и без разбиения на фрагменты.
  • Управление во время выполнения: настраивайте компромиссы между точностью и полнотой, а также длины обнаруживаемых спанов с помощью предустановленных рабочих точек.

Этот репозиторий

Этот репозиторий содержит локальный код, CLI и примеры ресурсов, используемых для запуска, оценки и дообучения контрольных точек Privacy Filter. Он предназначен для команд, которые хотят напрямую изучить реализацию и эксплуатировать модель в своей собственной среде.

Ресурсы репозитория: Лицензия и Политика безопасности.

Как использовать

  1. Установите пакет локально:
pip install -e .

После этого у вас появится python-скрипт opf, который можно запускать напрямую или через python -m opf. Скрипт можно использовать 3 отдельными способами, как описано ниже.

  1. Запустите одноразовое редактирование:

По умолчанию opf ищет модель в каталоге, указанном переменной OPF_CHECKPOINT, или в ~/.opf/privacy_filter. Если модель не найдена в расположении ~/.opf/privacy_filter, она будет загружена.

opf "Alice was born on 1990-01-02."

Код поддерживает работу как на GPU (по умолчанию), так и на CPU. Для запуска на CPU используйте флаг --device cpu:

opf --device cpu "Alice was born on 1990-01-02."

Чтобы переопределить контрольную точку по умолчанию, передайте --checkpoint:

opf --checkpoint /path/to/checkpoint_dir "Alice was born on 1990-01-02."

Режим редактирования поддерживает редактирование целого файла сразу

opf -f /path/to/file

Редактирование также можно выполнять через каналы, что поддерживает сложные однострочники:

cat /path/to/file | grep -e 'some_pattern' | opf

Если входные данные не предоставлены, opf запустится в интерактивном режиме. В этом режиме для каждого входного примера CLI выводит структурированный JSON, используя предварительный просмотр с ANSI-цветовой кодировкой, если терминал это поддерживает. Эти параметры можно контролировать с помощью флагов.

Обратитесь к opf redact --help для получения дополнительных флагов и информации о режиме редактирования.

  1. Запустите оценку на размеченном наборе данных:
opf eval examples/data/sample_eval_five_examples.jsonl

Примеры оценочных фикстур в examples/data/sample_eval_five_examples*.jsonl являются только синтетическими примерами данных и не описывают реальных людей или реальные конфиденциальные записи. См. examples/data/README.md.

Обратитесь к opf eval --help для получения дополнительных флагов и информации о режиме оценки.

  1. Дообучите на своём собственном размеченном наборе данных:
opf train /path/to/train.jsonl --output-dir /path/to/finetuned_checkpoint

Обратитесь к opf train --help для получения дополнительных флагов и информации о режиме дообучения.

Структура

  • opf/__main__.py: единая точка входа CLI для режимов redact, eval и train.
  • opf/_api.py: API для Python поверх стека выполнения и декодирования.
  • opf/_cli/: разбор аргументов командной строки и вспомогательные средства отрисовки в терминале.
  • opf/_core/: загрузка среды выполнения, преобразование спанов и общая логика декодирования.
  • opf/_eval/: загрузка наборов данных, предобработка, метрики и средства запуска оценки.
  • opf/_train/: разбор аргументов локального дообучения и средства запуска обучения.
  • opf/_model/: реализация трансформера, конфигурация контрольной точки и загрузка весов.
  • examples/data/: примеры оценочных файлов, а также воспроизводимые демонстрационные наборы данных для дообучения.
  • examples/scripts/finetuning/: запускаемые демонстрационные обвязки для дообучения.
  • FINETUNING.md: сфокусированное руководство по рабочему процессу дообучения и демонстрационным скриптам.
  • OUTPUT_SCHEMAS.md: форматы JSON-ответов и экспортируемых полезных нагрузок.
  • EVAL_AND_OUTPUT_MODES.md: описание режимов вывода для редактирования и оценки.

Детали модели

Описание модели

Privacy Filter — это модель двунаправленной классификации токенов с декодированием спанов. Она обучается поэтапно, начиная с авторегрессивного предварительного обучения. Затем предварительно обученная языковая модель модифицируется и дообучается как двунаправленный классификатор токенов с полосным вниманием (banded attention) с размером полосы 128 (эффективное окно внимания: 257 токенов, включая сам токен). Это означает:

  • Базовая модель — это авторегрессивно предварительно обученная контрольная точка.
  • Выходная голова языковой модели заменяется на голову классификации токенов по меткам приватности.
  • Дообучение — это контролируемая классификация на уровне токенов, а не предсказание следующего токена.
  • При выводе применяется ограниченное последовательное декодирование для получения связных меток спанов BIOES (Begin, Inside, Outside, End, Single).

С архитектурной точки зрения реализация в этом репозитории представляет собой стек в стиле pre-norm трансформерного энкодера с:

  • эмбеддингами токенов
  • 8 повторяющимися блоками трансформера
  • групповым вниманием к запросам (grouped-query attention) с ротационными позиционными эмбеддингами, с 14 головами запросов и 2 головами KV (размер группы = 7 запросов на голову KV)
  • разреженными блоками прямой связи со смесью экспертов (mixture-of-experts) с 128 экспертами всего (маршрутизация top-4 на токен)
  • финальной головой классификации токенов по меткам приватности (а не по токенам естественно-языкового словаря), с шириной остаточного потока d_model = 640.

По сравнению с итеративными авторегрессивными подходами, эта конструкция позволяет размечать все токены за один проход, что повышает пропускную способность. По сравнению с классическими подходами предварительного обучения на основе маскированных языковых моделей, это пост-обучающее преобразование авторегрессивной модели, а не нативная настройка masked-LM.

Форма вывода

Privacy Filter может обнаруживать 8 категорий спанов приватности:

  1. account_number
  2. private_address
  3. private_email
  4. private_person
  5. private_phone
  6. private_url
  7. private_date
  8. secret
Скачать инструмент