SponsioLabs/Sponsio

Deterministic safety solutions for probabilistic AI agents

Sponsio – AI 에이전트를 위한 런타임 가드레일

개요 – Sponsio는 LLM 기반 에이전트(LangChain, Claude, OpenAI, CrewAI 봇 등)와 에이전트가 호출하려는 도구 사이에 위치하는 경량 오픈소스 라이브러리입니다. 모든 도구 호출에 대해 '계약'(형식 메서드 기반의 결정론적 규칙)을 평가하여 호출을 통과, 차단, 경고 또는 에스컬레이션할 수 있습니다. 검사는 마이크로초 단위로 실행되며 다른 모델을 호출하지 않으므로 'LLM-as-judge' 방식보다 훨씬 저렴하고 예측 가능합니다.


핵심 개념

개념 설명
에이전트 계약 각 에이전트 작업에 강제 적용되는 런타임 규칙(소형 YAML DSL로 표현). 계약은 현재 호출 이전 호출 기록을 참조할 수 있어 '사용자가 검증된 후에만 환불 발행'과 같은 정책을 구현할 수 있습니다.
결정론적 강제 적용 계약은 퍼지 선형 시상 논리(LTL) 모니터로 컴파일됩니다. 모니터는 LLM 추론 없이 < 0.01ms 이내에 호출 허용 여부를 결정합니다.
형식 메서드 지원 규칙 언어는 증명 가능하게 건전하도록 설계되었으며, 문서에는 기본 형식 메서드에 대한 입문서가 포함되어 있습니다.
확장 가능한 계약 라이브러리 22개의 기성 번들(destructive, shell, filesystem 등)이 일반적인 위험 패턴을 다룹니다. 번들은 YAML 포함 파일이므로 새 번들 추가는 한 줄 변경으로 가능합니다.
로컬 우선, 선택적 클라우드 콘솔 강제 적용은 호스트 머신에서 완전히 실행됩니다. 호스팅 콘솔(app.sponsio.dev)을 사용하여 실행 상태를 확인하고, 규칙북을 검토하며, 검증된 계약을 게시할 수 있습니다.

작동 방식(개요)

  1. 온보딩sponsio init .을 실행하거나 Claude/Code용 원샷 프롬프트를 사용하면 마법사가 sponsio.yaml을 생성하고 프레임워크(LangChain, CrewAI 등)를 감지하여 적절한 래퍼 코드를 주입합니다.
  2. 에이전트 래핑 – SDK를 가져와 가드를 연결합니다:
    import sponsio, sponsio.bridge
    guard = sponsio.Sponsio(config="sponsio.yaml", agent_id="mailer", mode="enforce")
    run = sponsio.bridge.attach(guard)   # 이후 모든 도구 호출은 가드를 통과합니다
    
  3. 계약 평가 – 도구 호출마다 모니터는 관련 계약(예: '코드 동결 중 파괴적 SQL 금지')을 확인합니다. 결정은 즉시 반환됩니다(p50 ≈ 0.005ms).
  4. 감사 및 검토 – 모든 결정은 로컬에 기록되며 선택적으로 호스팅 콘솔로 스트리밍되어 사람이 규칙북을 활성화하기 전에 승인하거나 편집할 수 있습니다.

퀵스타트(Python 예시)

pip install --pre sponsio          # TypeScript의 경우 npm i -D @sponsio/sdk@alpha
sponsio init .                     # 마법사가 sponsio.yaml을 생성합니다

sponsio.yaml에 번들을 추가합니다:

agents:
  my_agent:
    workspace: "/srv/my-bot"
    include:
      - sponsio:capability/destructive
      - sponsio:capability/filesystem

위와 같이 에이전트를 실행합니다. 이제 계약에서 명시적으로 허용하지 않는 한 파괴적인 SQL이나 안전하지 않은 파일 시스템 작업은 차단됩니다.


성능 및 안전성 수치(리포지토리 기준)

벤치마크 지표 결과
ODCV-Bench (12개 최첨단 LLM × 80개 궤적) 방지된 잘못된 정렬 95.6 % 평균, 24개 고위험 시나리오에서 100 %
Financial-Audit-Fraud-Finding 차단된 사기 시도 18/19 차단
RedCode-Exec (1,410건) 종합 통과율 98.9 % (로컬), 클라우드 LLM-judge 병용 시 ~99 %
계약당 지연 시간 p50 0.0052 ms
최대 부하(호출당 19개 계약) p50 0.139 ms
LLM-as-judge 비교 지연 시간 5,000~60,000배 빠름 (모델 호출 없음)

Sponsio 사용 대상

  • 플랫폼 팀: LLM 에이전트를 최종 사용자에게 노출하며(SaaS 코드 어시스턴트, 자율 봇 등) 결정론적인 안전 보장이 필요한 팀.
  • 기업: 지연 시간을 늘리지 않고 규정 준수 정책(데이터 유출 방지, 파괴적 DB 쓰기 금지 등)을 강제해야 하는 기업.
  • 개발자: 임시 프롬프트 검사를 작성하는 대신 플러그 앤 플레이 가드레일을 원하는 사용자 지정 도구 호출 루프를 구축하는 개발자.

설치 및 생태계

언어 패키지 설치 명령어
Python sponsio (프리릴리스) pip install --pre sponsio
TypeScript/JavaScript @sponsio/sdk (alpha) npm install -D @sponsio/sdk@alpha

지원되는 통합에는 LangChain, Claude Agents, OpenAI Agents, Google ADK, CrewAI, Vercel AI, MCP 및 모든 사용자 지정 도구 호출 루프가 포함됩니다.


기여 및 커뮤니티

  • 문제 및 기능 아이디어 – GitHub Issue를 여세요.
  • 계약 기여 – 새로운 YAML 번들이나 패턴을 추가하세요. 리포지토리는 커뮤니티 주도의 사건별 계약을 권장합니다.
  • 토론 – Discord, X(구 Twitter), LinkedIn 링크가 README에 제공됩니다.

라이선스

Apache 2.0 – 상업적 및 비상업적 용도로 무료입니다.


결론: Sponsio는 LLM 에이전트에 대해 결정론적이고 서브밀리초 단위의 안전 검사를 제공하여, 느리고 확률적인 LLM 기반 가드로는 구현할 수 없는 정책을 강제할 수 있게 합니다. 인기 있는 에이전트 프레임워크에서 즉시 사용할 수 있으며 모든 도메인의 사용자 지정 계약으로 확장 가능합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트