JamJet
JamJet CloudGovernance

정책

Block dangerous tools at runtime. Glob-based rules. Pre-call filter and post-decision check.

정책

정책은 LLM이 호출할 수 있는 도구를 제어하는 규칙입니다. JamJet은 요청 생명주기의 두 지점에서 정책을 적용합니다: 요청이 모델에 도달하기 전(사전 호출 필터)과 모델이 응답한 후(사후 결정 검사)입니다. 두 적용 지점 모두 동기적이며 프로세스 내부에서 처리되므로 네트워크 왕복이 필요하지 않습니다.

세 가지 액션

모든 정책 규칙은 glob 패턴과 세 가지 액션 중 하나를 조합합니다:

액션동작
'block'일치하는 도구는 LLM이 보기 전에 요청에서 필터링됩니다. 모델이 응답에서 차단된 도구를 여전히 요청하면 JamjetPolicyBlocked가 발생합니다.
'allow'일치하는 도구를 명시적으로 허용합니다. 광범위한 차단 후 허용 목록을 만드는 데 유용합니다.
'require_approval'사람의 승인을 통해 도구를 제어하려는 의도를 등록합니다. 아래 현재 제한사항을 참조하세요.
import { policy } from '@jamjet/cloud'

policy('block', 'wire_*')             // wire_로 시작하는 모든 도구 차단
policy('allow', 'wire_read')          // 단, wire_read는 명시적으로 허용
policy('require_approval', 'send_*')  // send_* 도구 제어 의도 (제한사항 참조)
import jamjet.cloud as jamjet

jamjet.policy('block', 'wire_*')             # wire_로 시작하는 모든 도구 차단
jamjet.policy('allow', 'wire_read')          # 단, wire_read는 명시적으로 허용
jamjet.policy('require_approval', 'send_*')  # send_* 제어 의도 (제한사항 참조)

Glob 패턴 의미

JamJet은 fnmatch 스타일의 glob 매칭을 사용합니다:

패턴일치함일치하지 않음
wire_*wire_transfer, wire_send, wire_readread_wire
payments.*payments.send, payments.readpayments
*_admindb_admin, user_adminadmin_db
?_transfera_transferab_transfer

*는 점을 포함한 모든 문자 시퀀스와 일치합니다. ?는 정확히 한 문자와 일치합니다. 패턴은 도구 이름 전체 문자열에 대해 매칭됩니다(양쪽 끝에 암시적으로 고정됨).

On this page