TL;DR
Sif는 LLM이 전략과 판단을 제안하면 그 제안을 타입화된 계획으로 받아 결정론적 작업(코드 생성·컴파일·테스트·프로모션)을 엄격한 거래·검증 경계에서 실행하는 시스템이다. 실행 결과와 정확한 diffs·진단·승인 기록을 증거 원장에 저장하고, 실패는 작은 수리 패킷으로 모델에 반환해 재작업 범위를 축소한다. 이 구조는 반복적 토큰 사용을 줄이고 재현성·감사 가능성을 높이며, 플래너 품질과 도구체인이 허용하는 한 자동화의 안전성을 개선한다.
섹션별 상세
용어 해설
- 작업 봉투(Task Envelope)(Task Envelope)
- — Task Envelope는 목표, 저장소 상태, 권한, 예산 및 실패 정책을 바인딩하는 구조다. 플래너가 생성한 계획이 어떤 저장소와 범위에서 실행될지 명확히 규정하고, 실행 시 권한과 롤백 경계를 결정한다. 이 때문에 실행의 재현성·보안·거버넌스가 보장된다.
- 타입화된 Plan IR(Typed Plan IR)
- — Typed Plan IR은 LLM이 제안한 전략을 정형화한 중간 표현으로, 각 단계의 입력·출력·의존성·수용 조건을 기계가 검증할 수 있게 기술한다. Plan IR은 플래너의 제안을 deterministic worker가 안전하게 실행하도록 바인딩하는 역할을 한다. 이를 통해 모델의 산출물이 '제안'에서 '실행 가능 명세'로 전환된다.
- 기능 레지스트리(Capability Registry)(Capability Registry)
- — Capability Registry는 검증된 스킬, 스키마, 아티팩트 해시와 상태를 버전별로 저장하는 카탈로그다. 실행 시 Plan IR이 참조하는 능력 목록을 해시로 고정해 재현 가능한 스킬 해상도를 보장한다. 이것은 런타임에서 어떤 선언적 워크플로를 실행할 수 있는지를 결정하는 핵심 메커니즘이다.
- 증거 원장(Evidence Ledger)(Evidence Ledger)
- — Evidence Ledger는 시도된 작업의 정확한 diff, 컴파일·테스트 결과, 메트릭, 승인 결정을 순서대로 보존하는 불변 기록이다. 각 원장은 복구·감사·비교·학습에 필요한 기계 판독 가능한 증거를 제공한다. 검증 가능한 증거가 있어야만 이후의 자동화·재현·능력 학습이 안전하게 가능하다.
코드 예제
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\scripts\try-sif.ps1 -JsonTry-Sif 데모를 머신 판독형 출력(JSON)으로 실행하는 PowerShell 명령이다. 로컬 데모는 LLM 호출 없이 deterministic 경로를 보여주며, 이 플래그는 상세한 거래·복구 리포트를 JSON으로 출력한다. 데모 검증·자동화 스크립트에서 결과를 파싱할 때 사용한다.
.\Sif-MCP.cmd `
--execution-profile local-fast `
--repository C:\work\target-project `
--repository-id repo.target-project `
--state-root C:\sif-runtime\target-state `
--artifact-root C:\sif-runtime\target-catalog `
--full-catalog-source-root $PWD `
--general-coder-endpoint http://127.0.0.1:8080/v1/chat/completions `
--general-coder-model local-model `
--general-coder-max-completion-tokens 32768 `
--general-coder-cmake-gates `
--general-coder-python-unittest-gateMCP 서버를 로컬 플래너와 연결해 Sif의 전형적 워크플로를 실행하는 명령 예시다. 플래너 엔드포인트와 모델 이름, 리포지토리·상태·아티팩트 루트를 명확히 바인딩해 계획 발행과 검증을 분리한다. CMake·유닛테스트 게이트를 활성화해 빌드·테스트 기반 수용 조건을 강제한다.
.\Sif.cmd `
--repository C:\work\target-project `
--state C:\sif-runtime\target-state `
--repository-id repo.target-project `
--source-root $PWD `
--profile local-fast `
invoke `
--skill python.add_import `
--arguments-json '{"path":"module.py","import_statement":"import math"}' `
--goal "Add the standard math dependency."단일 등록 스킬(python.add_import)을 타입화된 JSON 인수로 호출해 코드 변경을 수행하는 예시다. Sif는 이 호출을 staging tree에서 적용·검증하고 모든 수용 조건 통과 시 원자적 프로모션을 수행한다. 복잡한 인수는 파일로 전달해 셸의 JSON 재해석을 피하도록 권장한다.
근거 모음
- Sif는 모델이 반복해서 소스 토큰을 생성하는 대신 타입화된 계획과 스킬 호출로 반복적 작업을 대체해 토큰 사용과 대기 시간을 절감할 가능성이 있다. — 문단 'Why this may reduce tokens and wall time'에서 재사용 가능한 워크플로, 파라미터화된 스킬 호출, 영향 범위만 전송하는 접근을 근거로 제시함.
- Sif의 실행은 거래적이며 프로모션은 원자적으로 이루어져 부분 적용 상태가 허용되지 않는다. — 초반의 PDDE 불변 목록과 시퀀스 다이어그램, 'Execution is transactional'·'Promotion is atomic' 문구가 같은 절에 직접 명시되어 있음.
- Sif 1.0은 신경망 가중치를 갱신하는 식의 지속적 학습을 수행하지 않으며, 대신 재현 가능한 워크플로·레지스트리·증거를 통해 '학습'을 구현한다. — 'How Sif learns' 절에서 Sif 1.0의 학습은 신경망 가중치 업데이트가 아니라 재사용 가능한 워크플로·핵심 프리미티브 획득·증거 기반 개선으로 기술됨.
기술
- Python
- C/C++
- CMake
- Ninja
- Clang/LLVM
- CUDA
- Triton
- llama.cpp
- OpenRouter
활용 사례
- LLM이 제안한 계획을 안전하게 코드 변경으로 전환해 원자적으로 프로모션하는 작업 자동화
- 소스 네이티브 마이그레이션(native migration)과 컴파일 기반 성능 게이트 적용
- 진화적 퍼징을 통한 회귀 최소화와 재현 가능한 실패 영수증 확보
- 플래너-도구 루프에서의 작은 수리 패킷 전달로 반복적 토큰 비용 절감
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.