
도구를 사용하는 LLM 에이전트에서 임베딩 검색과 대조 로그 확률 점수를 사용하여 간접 프롬프트 주입을 탐지하고 마스킹하는 실행 전 행동 감사 방어 기법입니다.
ActGuard는 도구를 사용하는 LLM 에이전트에서 간접 프롬프트 주입에 대응하는 실행 전 행동 감사 방어 기법입니다. 이 저장소에는 최종 ActGuard 구현과 이를 평가하는 데 필요한 AgentDojo 기반 런타임이 포함되어 있습니다.
이 릴리스에는 최종적이고 완전한 ActGuard 구성만 포함되어 있습니다. 내부 구성 요소는 AgentDojo 벤치마크 및 추적 형식과의 호환성을 위해 여전히 reflective_audit 식별자를 사용합니다.
meta-llama/Meta-Llama-3.1-8B-Instruct 체크포인트 또는 이에 상응하는 로컬 체크포인트에 대한 접근uv 사용을 권장합니다:
uv sync --frozen --extra actguard
또는 활성화된 Python 환경에 설치할 수 있습니다:
python -m pip install -e '.[actguard]'
저장소 루트에서:
export OPENROUTER_API_KEY=...
uv run --frozen --extra actguard ./scripts/run_actguard.sh
프로젝트를 pip로 설치한 경우 다음을 실행하세요:
export OPENROUTER_API_KEY=...
./scripts/run_actguard.sh
이 스크립트는 important_instructions 공격으로 workspace 스위트를 평가합니다. 메인 에이전트와 검증자에는 OpenRouter를 사용하고, 임베딩 검색 및 대조 로그 확률 귀속에는 Hugging Face 호환 로컬 모델을 사용합니다. 기본 게이트된 Llama 체크포인트를 다운로드하기 전에 Hugging Face 인증이 필요할 수 있습니다.
다운로드한 체크포인트를 사용하려면 scripts/run_actguard.sh의 --reflective-audit-embedding-model 및 --reflective-audit-logprob-model 값을 해당 로컬 경로로 바꾸세요. 모든 벤치마크 옵션을 보려면 uv run --frozen actguard-benchmark --help를 사용하세요.
결과는 다음 위치에 기록됩니다:
runs/openai_gpt-4o-mini-2024-07-18-reflective_audit/actguard/
runs/ 디렉터리는 Git에서 무시됩니다.
ActGuard 회귀 테스트를 실행하세요:
uv run --frozen pytest -q tests/test_agent_pipeline/test_reflective_audit.py
src/agentdojo/agent_pipeline/reflective_audit.py: ActGuard 구현src/agentdojo/agent_pipeline/agent_pipeline.py: 파이프라인 통합src/agentdojo/scripts/benchmark.py: 벤치마크 CLIsrc/agentdojo/default_suites/: 평가 스위트 및 작업 정의tests/test_agent_pipeline/test_reflective_audit.py: 회귀 테스트src/agentdojo/reflective_audit_trace.py: 추적 생성 및 검사실행 로그, 로컬 환경, 자격 증명, 논문 초안, 임시 분석 출력 및 비교 방어 기법은 이 릴리스에서 의도적으로 제외되었습니다.
이 프로젝트는 MIT 라이선스에 따라 배포됩니다. AgentDojo에서 파생된 벤치마크 런타임을 포함하며, 유지된 업스트림 저작권 고지는 LICENSE를 참조하세요.
| 매개변수 | 설정 |
|---|
| 백엔드 모델 | OpenRouter를 통한 openai/gpt-4o-mini-2024-07-18 |
| 백엔드 모델 temperature | 0 |
| 청크 길이 | 80--180자 |
| 임베딩 모델 | sentence-transformers/all-MiniLM-L6-v2 |
| 검색된 청크 | k = 3 |
| 대조 로그 확률 모델 | meta-llama/Meta-Llama-3.1-8B-Instruct |
| 로그 확률 임계값 | 0 |
| 유사 청크 그룹화 임계값 | 0.9 |
| 도구 결과 컨텍스트 | 전체 감사 가능 이력 |
| 검증자 모델 | OpenRouter를 통한 openai/gpt-5-mini |
| 검증자 temperature | 0 |
| 예측 다음 도구 집합 크기 | 1--3 |
| 인접 청크 확장 | 양쪽 각 1개 청크 |
| 행동당 최대 복구 시도 | 2 |
| 로컬 마스킹 텍스트 | [Removed suspicious instruction from external tool result.] |