Laminae, LLM 안전을 프롬프트가 아니라 syscall로 강제한다

Rust로 구축된 오픈소스 SDK Laminae의 Glassbox·Ironclad·Shadow·Cortex·Persona·Psyche 레이어 구조와 지원 백엔드를 정리한다

2026-08-14 · 최초 발행 2026-03-14

2026년 3월, Orel Ohayon(GitHub: Orellius)이 공개한 오픈소스 Rust SDK Laminae는 LLM을 실제 프로덕션 환경에 투입할 때 반드시 필요한 보안, 학습, 그리고 멀티 에이전트 파이프라인 계층을 제공한다. 프로젝트의 핵심 철학은 단 한 문장으로 요약된다. "AI 안전을 프롬프트에 강제하는 것은 '제안을 통한 보안'일 뿐이며, Rust에서 syscall 수준으로 강제하는 것이 진정한 격리(containment)다." 6개의 독립적인 레이어로 구성된 Laminae는 raw LLM과 프로덕션 AI 사이의 빠진 고리를 채우는 것을 목표로 한다.

왜 이런 SDK가 필요했나

LLM을 프로덕션에 배포하는 팀이 공통적으로 마주치는 문제가 있다. 모델 자체의 능력은 빠르게 발전하지만, 그 모델을 안전하게 감싸고 운영하는 인프라 레이어는 여전히 각 팀이 직접 구축해야 한다는 것이다. 프롬프트 인젝션 방어, 프로세스 샌드박싱, 사용자 피드백 기반 학습, 멀티 에이전트 조율 등은 모두 반복적으로 구현되는 패턴이지만 표준화된 오픈소스 솔루션은 부족했다.

Laminae는 이 공백을 Rust의 성능과 메모리 안전성을 기반으로 채운다. Apache-2.0 라이선스로 공개되었으며, crates.io에서 v0.4.1 버전을 내려받을 수 있다. OpenAI, Anthropic, Groq, Together AI, DeepSeek, Ollama, vLLM, llama.cpp 등 주요 LLM 백엔드를 모두 지원한다.

Glassbox에서 Psyche까지, 레이어로 쪼갠 아키텍처

Laminae의 가장 큰 특징은 각 기능이 완전히 독립적인 레이어로 분리되어 있다는 점이다. 필요한 레이어만 선택적으로 사용할 수 있으며, 전체 스택을 한 번에 채택할 필요가 없다.

적대적 테스트LLM Backend(OpenAI / Anthropic / Groq등)Glassbox(I/O 컨테인먼트)Ironclad(프로세스 샌드박스)Shadow(레드팀 테스팅)Cortex(자체 개선 학습)Persona(음성/스타일 강화)Psyche(멀티 에이전트 파이프라인)애플리케이션 레이어

Glassbox: I/O 컨테인먼트

Glassbox는 LLM의 입력과 출력을 격리하는 레이어다. 모델에 전달되는 데이터와 모델이 반환하는 데이터를 모두 통제된 경계 안에서 처리한다. 프롬프트 인젝션 시도나 의도치 않은 데이터 누출을 막는 첫 번째 방어선 역할을 한다.

Ironclad: syscall 수준 프로세스 샌드박스

Ironclad는 Laminae에서 가장 강력한 보안 레이어다. Linux의 prctl 시스템 콜을 활용하여 LLM 호출 프로세스가 접근할 수 있는 syscall을 제한한다. 프롬프트 레벨의 안전 장치는 모델이 무시하거나 우회할 수 있지만, OS 수준에서 시스템 콜을 차단하면 모델의 응답 내용과 무관하게 격리가 보장된다. 이는 실행 코드 생성, 파일 시스템 접근, 네트워크 호출 등을 허용 목록 기반으로 제어할 때 특히 유효하다.

Shadow: 적대적 레드팀 테스팅

Shadow는 배포 전 또는 CI/CD 파이프라인 내에서 LLM 파이프라인을 자동으로 공격해보는 레이어다. 프롬프트 인젝션, 탈옥 시도, 경계 케이스 입력 등 다양한 적대적 시나리오를 시뮬레이션하여 Glassbox와 Ironclad의 방어 설정이 실제로 유효한지 검증한다. 테스트 자동화와 결합하면 회귀 방지 수단으로도 활용된다.

Cortex: 파인튜닝 없는 자체 개선 학습

Cortex는 Laminae의 기능 중 가장 독창적인 레이어다. 사용자가 LLM 출력을 편집하는 행동을 추적하여 패턴을 자동으로 감지하고, 이를 자연어 인스트럭션으로 변환해 다음 호출에 반영한다.

CortexLLM 모델사용자CortexLLM 모델사용자초기 응답 생성텍스트 단축, 톤 변경, AI 문구 제거 등 편집편집 패턴 분석 및 자연어 인스트럭션 생성다음 요청에 학습된 인스트럭션 주입개선된 응답 생성

감지 패턴의 예시는 다음과 같다.

  • 응답 길이를 지속적으로 줄이는 경우 → "응답을 간결하게 유지하라"
  • 특정 단어나 표현을 반복적으로 교체하는 경우 → 해당 표현 회피 인스트럭션
  • AI 특유의 표현("물론입니다", "확실히" 등)을 제거하는 경우 → 자연스러운 문체 지시

파인튜닝이나 별도의 학습 인프라 없이 단순한 사용 패턴만으로 모델 출력을 개인화할 수 있다는 점이 핵심이다.

Persona: 음성과 스타일 강화

Persona 레이어는 특정 브랜드 보이스, 저자의 글쓰기 스타일, 또는 조직의 커뮤니케이션 톤을 추출하고 LLM 출력에 일관되게 적용한다. 기존 콘텐츠에서 스타일 특징을 학습하고, 이를 모델 호출 시 자동으로 주입한다.

Psyche: 멀티 에이전트 인지 파이프라인

Psyche는 여러 LLM 에이전트를 조율하는 최상위 레이어다. 복잡한 작업을 하위 에이전트에게 분산하고, 각 에이전트의 출력을 수집하며, 결과를 통합하는 파이프라인을 구성한다. Cortex와 Persona 레이어와 결합하면 각 에이전트가 독립적으로 학습하고 스타일을 유지하는 자율적인 에이전트 네트워크를 구축할 수 있다.

클라우드·로컬 백엔드를 하나의 파이프라인으로

Laminae는 단일 백엔드에 종속되지 않는다. 다음 LLM 제공자 및 로컬 런타임을 모두 지원한다.

제공자 유형
OpenAI 클라우드 API
Anthropic 클라우드 API
Groq 클라우드 API
Together AI 클라우드 API
DeepSeek 클라우드 API
Ollama 로컬 런타임
vLLM 로컬/서버 런타임
llama.cpp 로컬 런타임

이 유연성 덕분에 동일한 Laminae 파이프라인 설정을 클라우드 환경과 로컬 자체 호스팅 환경 모두에서 사용할 수 있다.

크레이트 하나로 시작하는 통합

각 레이어는 독립적으로 사용 가능하다. 예를 들어 Ironclad만 단독으로 사용해 기존 LLM 호출에 syscall 샌드박싱만 추가하거나, Cortex만 사용해 자동 학습 기능만 붙일 수 있다. Rust 생태계에서 Cargo.tomllaminae 크레이트를 추가하는 것만으로 시작할 수 있다.

[dependencies]
laminae = "0.4.1"

모듈화된 설계는 기존 시스템에 Laminae를 점진적으로 통합할 수 있게 해준다. 전체 아키텍처를 교체하지 않고도 필요한 보안 또는 기능 레이어만 선택적으로 추가하는 방식이 가능하다.

Laminae는 "LLM을 프로덕션에 올리는 것"과 "LLM을 안전하고 일관되게 운영하는 것" 사이의 간극을 메우는 실용적인 접근이다. 프롬프트 엔지니어링에 의존하는 소프트웨어 보안 대신 OS 수준의 실제 격리를 제공하는 Ironclad, 파인튜닝 없이 사용 패턴에서 학습하는 Cortex, 그리고 멀티 에이전트를 조율하는 Psyche는 각각 독립적으로도, 조합해서도 가치 있는 레이어다. Rust의 성능과 메모리 안전성을 기반으로 구축되었다는 점에서 고신뢰성이 요구되는 엔터프라이즈 환경에서도 채택을 고려해볼 만하다. 아직 v0.4 초기 버전이지만 커뮤니티의 기여와 함께 프로덕션 LLM 인프라의 표준 레이어로 성장할 가능성이 있다.

Sources

LaminaeLLM 보안syscall 샌드박스Rust SDKAI 에이전트