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

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

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

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

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

Категории

Все категории
Loading categories
AgentWatcher | Kitploit
Инструменты/GitHubGitHub/wang-yanting/agentwatcher
Машинное ОбучениеСтатьи и ИсследованияОбучение и ОбразованиеБезопасность ИИСостязательная Атака
GitHubwang-yanting/agentwatcher

AgentWatcher

Репозиторий
924 месяцев назадЕщё не проверено

Популярное

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

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

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

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

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

AgentWatcher

AgentWatcher — это защита на основе детектирования от косвенных промпт-инъекций в LLM-агентах. Сначала он выполняет каузальную атрибуцию контекста по недоверенному контексту, чтобы найти наиболее влиятельные фрагменты, а затем применяет монитор LLM, который классифицирует эти фрагменты на основе явных, настраиваемых правил. По сравнению с полностью черноящиковыми детекторами, этот конвейер проще интерпретировать: атрибуция показывает, где модель сосредоточила внимание, а суждение монитора LLM основано на обоснованных правилах reasoning. Пример вывода монитора LLM показан ниже:

Пример вывода AgentWatcher

Такое детектирование на основе правил может использовать способность монитора LLM к рассуждению для достижения лучшего компромисса между полезностью и устойчивостью. AgentWatcher достигает передовых результатов на бенчмарках LLM-агентов, таких как AgentDyn:

Пример вывода AgentWatcher

Этот репозиторий предназначен для воспроизведения основных экспериментов из статьи.

🔨 Требования

  • Python 3.10+ (проверено с conda-окружениями).
  • CUDA GPU для бэкенд-LLM (опционально можно использовать vLLM).
  • Доступ к Hugging Face для датасетов и моделей.
root@kitploit:~
pip install -r requirements.txt
huggingface-cli login   # if needed for gated models

🤗 Монитор LLM на Hugging Face

Обученный монитор — это LoRA-адаптер (PEFT). По умолчанию main.py автоматически загружает контрольную точку SecureLLMSys/AgentWatcher-Qwen3-4B-Instruct-2507 из SecureLLMSys (переопределяется с помощью --monitor_llm).

🔬 Запуск экспериментов

Все лаунчеры находятся в каталоге scripts/. Они предполагают, что вы запускаете их из корня репозитория AgentWatcher (или сначала выполняете cd туда). Сначала задайте ключ OpenAI с помощью export OPENAI_API_KEY=<YOUR_KEY>. Отредактируйте Python-лаунчеры (all_datasets, all_defenses, gpus, name, модели и т.д.) в соответствии с вашим перебором перед запуском.

Бенчмарк с длинным контекстом (main.py)

Пакетные задания (локальные GPU или Slurm):

root@kitploit:~
python scripts/run_long_context.py

Это запускает main.py с vLLM (--use_vllm) и записывает логи в logs/main_logs/<name>/.... Если локальных GPU нет, задание отправляется в Slurm через scripts/main.sh.

Разовый запуск без лаунчера:

root@kitploit:~
python main.py \
  --dataset lcc_long \
  --attack combined \
  --defense agentwatcher \
  --backend_llm Qwen/Qwen3-4B-Instruct-2507 \
  --monitor_llm SecureLLMSys/AgentWatcher-Qwen3-4B-Instruct-2507 \
  --use_vllm \
  --name my_run

Необязательные переопределения атрибуции в main.py: --w_s, --w_l, --w_r, --K, --attribution_model.

AgentDojo

Чтобы запустить AgentDojo/AgentDyn, сначала настройте окружение, следуя инструкциям PIArena (https://github.com/sleeepeer/PIArena):

root@kitploit:~
cd agents/agentdojo && pip install -e . && cd ../..

Затем выполните:

root@kitploit:~
python scripts/run_agentdojo.py

Этот скрипт вызывает main_agentdojo.py и записывает логи в logs/agentdojo_logs/.... Если локальных GPU нет, для Slurm используется scripts/main_agentdojo.sh. Для разового ручного запуска вы можете выполнить python main_agentdojo.py --model ... --defense agentwatcher --monitor_llm ... из корня репозитория; задайте PIARENA_DEFENSE / PIARENA_MONITOR_LLM, если ваша обёртка ожидает их. Защита agentwatcher использует PIMonitorLLMDefenseAdapter.

AgentDyn

root@kitploit:~
./scripts/run_agentdyn.sh

Необязательно: ./scripts/run_agentdyn.sh --model gpt-4o-2024-08-06 для запуска agentwatcher с gpt-4o в качестве базовой LLM. Скрипт активирует conda-окружение agentdojo и запускается из каталога agents/agentdyn/src. Рекомендуется использовать tmux, чтобы предотвратить прерывание запуска.

InjecAgent

root@kitploit:~
python scripts/run_injecagent.py

Это запускает main_injecagent.py и записывает логи в logs/main_logs/.... Точка входа для Slurm: scripts/main_injecagent.sh.

Прямой вызов без лаунчера:

root@kitploit:~
python main_injecagent.py \
  --model meta-llama/Llama-3.1-8B-Instruct \
  --defense agentwatcher \
  --monitor_llm SecureLLMSys/AgentWatcher-Qwen3-4B-Instruct-2507 \
  --name my_injecagent_run

Благодарности

  • Этот проект включает код из PIArena, AgentDojo, AgentDyn, InjecAgent и AT2.

Цитирование

Если вы используете этот код, пожалуйста, процитируйте статью AgentWatcher (когда она станет доступна).

Скачать инструмент