개요

Plano는 에이전트 애플리케이션을 위한 AI 네이티브 프록시 서버이자 데이터 플레인이다. 원문은 프로덕션 배포 과정에서 반복되는 에이전트 라우팅, 가드레일, 관찰 가능성, 프로바이더별 API 예외 처리를 애플리케이션 밖으로 분리하는 방식을 설명한다. Plano는 Envoy 위에 에이전트 오케스트레이션과 LLM 라우팅 계층을 얹고, Rust 기반 프록시 코어를 별도 프로세스로 실행한다고 소개된다. 핵심 구성 요소는 오케스트레이션, 모델 민첩성, 에이전틱 시그널, 필터 체인 네 가지다. 글의 예제에서는 YAML로 날씨·항공편 에이전트를 선언하고 OpenAI 호환 HTTP 서버와 Plano의 LLM 게이트웨이를 연결한다.

핵심 포인트

  • 오케스트레이션: 에이전트를 YAML에 선언하면 자연어 설명을 바탕으로 요청을 라우팅하며, 예제 라우터로 4B 파라미터 규모의 plano_orchestrator_v1을 사용한다.
  • 모델 민첩성: 모델 이름이나 별칭으로 요청하고, 여러 프로바이더의 API 차이를 통합 LLM API 뒤에서 처리해 애플리케이션 코드를 바꾸지 않고 모델을 교체할 수 있게 한다.
  • 에이전틱 시그널: 별도 계측 코드 없이 에이전트 전반의 시그널과 OpenTelemetry(OTEL) 트레이스·메트릭을 수집하는 기능으로 설명된다.
  • 필터 체인: 탈옥 방지, 모더레이션 정책, 메모리 훅을 데이터 플레인에서 일관되게 연결한다.
  • 배포 방식: 애플리케이션과 별도 프로세스로 동작하고 OpenAI 호환 HTTP 서버를 요구하므로 특정 프로그래밍 언어나 AI 프레임워크에 종속되지 않는 구성을 지향한다.
  • 사용 흐름: 에이전트 URL·설명과 모델 프로바이더를 config.yaml에 선언하고, 에이전트는 http://localhost:12001/v1 게이트웨이를 통해 LLM을 호출하며, 리스너 포트로 통합 질의를 보낸다.
  • 라이선스와 제공 방식: 프로젝트는 Apache License 2.0으로 공개되며, Plano 계열 라우팅 LLM은 첫 사용 경험을 위해 US-central 리전에서 무료 호스팅된다고 원문은 안내한다.

왜 중요한가

에이전트 기능 자체보다 프로덕션 운영에 필요한 라우팅, 안전성, 모델 연동, 트레이싱을 여러 코드베이스에 반복해서 구현하는 일이 병목이 될 수 있다는 문제의식을 한 곳에 모은다. Plano의 접근은 이 공통 관심사를 애플리케이션 코드와 분리해 에이전트 로직과 운영 미들웨어의 경계를 명확히 하려는 것이다. 다만 원문은 구조와 사용 예제를 소개하는 글이며, 성능·비용·안전성에 대한 독립적인 비교 벤치마크를 제시하지 않는다.

후속으로 볼 링크와 키워드