Recipes

Pipelex: 반복 가능한 다단계 LLM 파이프라인을 위한 선언적 DSL 및 Python 런타임

README 링크에서 발견 · yesterday

Software & DevOpsWork & Operations

저자들은 AI 워크플로를 붙여 맞추는 대신 선언할 수 있도록 DSL과 런타임을 만들었다.

What they did

Robin, Louis, Thomas는 여러 프로젝트에서 동일한 에이전틱 패턴을 계속 다시 만들고 있었고, 그래서 일반적인 워크플로 로직을 사용 사례별 세부사항과 분리해 Pipelex를 만들었습니다. Pipelex는 다단계 LLM 파이프라인을 위한 선언형 DSL과 Python 런타임으로, AI 워크플로를 위한 Dockerfile/SQL 같은 위치를 지향합니다. 제공자 API를 감싸는 대신, 이 추상화는 비즈니스 로직을 무엇을 해야 하는지 말하고 어떻게 할지는 말하지 않는 구조화된 스크립트로 옮깁니다. 각 단계는 자연어 맥락(목적, 의미를 지닌 입력과 출력)을 담고 있어 LLM이 이를 따르고, 감사하고, 최적화할 수 있습니다. 파이프는 합성됩니다. 하나의 파이프가 다른 파이프를 호출할 수 있으며, 직접 만든 것이든 커뮤니티가 공유한 것이든 가능합니다. 도그푸딩을 위해, 그들은 Pipelex 워크플로를 작성하는 Pipelex 워크플로를 만들었고, 이를 MCP와 CLI를 통해 `pipelex build pipe '...'`로 노출했습니다. 이는 다단계 구조화 생성 흐름을 실행해 검증된 워크플로를 생성하며, 그런 다음 `pipelex run`으로 실행하고 손으로 또는 코딩 에이전트와 함께 반복 개선합니다. 출시된 구성 요소는 Python 라이브러리, FastAPI 서버와 Docker 이미지, MCP 서버, n8n 노드, VS Code 확장입니다. 그들은 HN에 워크플로를 만들어 보고, 에이전트/MCP와 n8n 사용성을 테스트하고, 새로운 파이프 종류와 모델 통합을 제안하고, 코어 라이브러리에 기여하거나 파이프를 공유해 달라고 요청했습니다.

How it went

MIT 라이선스의 공개 오픈 표준으로, 스펙, 런타임, API 서버, 에디터 확장, MCP 서버, n8n 노드를 갖추고 있으며, cookbook, 스타터 레포, 문서, 2분 데모, Discord도 제공합니다. 팀은 이 프로젝트가 아직 초기 단계임을 솔직히 밝히고 있습니다. 파이프 빌더에는 여전히 버그가 있고, 호스팅 API는 아직 없으며, 순서도 시각화 기능도 빠져 있습니다. 이들은 이번 출시를 피드백 요청으로 자리매김하며, 사용자들에게 어디가 정확히 불편한지 알려달라고 요청하고 있습니다.

Worth knowing

앱에 대한 커넥터가 없습니다. 통합은 코드/API, MCP 또는 n8n을 통해 이루어집니다. 아직 호스팅된 Pipelex API가 없으므로 직접 셀프 호스팅해야 합니다. 비용 추적은 LLM 호출만 포함하며 이미지 생성이나 OCR은 포함하지 않습니다. 캐싱 및 추론 옵션은 지원되지 않습니다. 순서도 시각화는 여전히 필요하며, pipe 빌더는 버그가 있는 것으로 인정되므로 생성된 워크플로는 신뢰하기 전에 검토가 필요합니다.

Wiring

Pipelex Python 패키지를 설치하고 provider 자격 증명을 설정합니다. 워크플로는 타입이 지정된 입력/출력과 단계별 자연어 컨텍스트를 갖춘 .plx 스타일 스크립트로 선언됩니다. CLI로 로컬에서 실행하거나(`pipelex build pipe`로 생성, `pipelex run`으로 실행) Docker의 FastAPI 앱을 통해 서빙할 수 있습니다. 에이전트는 MCP 서버를 통해 연결되며, 이 서버는 기존 파이프라인을 실행할 뿐만 아니라 필요 시 새로운 파이프라인을 생성할 수도 있습니다. 자동화 플랫폼은 런타임/API를 호출하는 n8n 노드를 통해 연결됩니다. 작성은 구문 강조와 시맨틱 컬러링을 제공하는 VS Code 확장에서 이루어집니다. 파이프는 다른 파이프를 호출하여 구성되므로, 공유 커뮤니티 파이프를 단계로 임포트할 수 있습니다.

Try it yourself

# Pipelex 설정 및 파이프라인 구축 가이드

## 1. 저장소 클론 및 설치

```bash
git clone https://github.com/Pipelex/pipelex
git clone https://github.com/Pipelex/pipelex-starter
cd pipelex
pip install -e .
```

## 2. 모델 제공자 키 설정

`.env` 파일에 필요한 API 키를 설정합니다 (예: OpenAI, Anthropic 등). Pipelex는 `pipelex.toml` 또는 환경 변수를 통해 모델 제공자를 구성합니다.

## 3. 스타터 파이프라인 실행

```bash
cd ../pipelex-starter
pipelex run
```

런타임이 정상 동작하는지 확인합니다.

## 4. 파이프 생성

```bash
pipelex build pipe 'summarize a URL then extract action items as structured output'
```

생성된 Pipelex 스크립트를 열어 검토하고, 빌더가 잘못 생성한 부분(예: 잘못된 pipe 종류, 누락된 입출력 정의, 구조화 출력 스키마 오류)을 수정한 뒤 실행합니다.

## 5. MCP 서버로 노출

파이프라인을 MCP 서버로 감싸 코딩 에이전트(Claude, Cursor 등)에서 호출할 수 있도록 구성합니다.

## 6. n8n 노드 연동

n8n 노드를 통해 동일한 파이프라인을 트리거하도록 연결합니다.

---

## 보고 사항

**DSL 관련 마찰**
- 파이프 간 입출력 타입 연결이 명시적이어서, 중간 단계의 스키마를 정확히 맞추지 않으면 검증 오류가 발생합니다.
- 구조화 출력(JSON 스키마) 정의가 다단계 파이프에서 반복적으로 등장해 장황해집니다.

**빌더 버그**
- `pipelex build pipe`가 생성한 스크립트에서 pipe 종류(예: LLM pipe vs. 구조화 추출 pipe)를 잘못 선택하는 경우가 있습니다.
- 입출력 변수명이 일관되지 않거나, 이전 단계 출력을 참조하지 못하는 경우가 있습니다.
- 구조화 출력 스키마가 실제 추출 목표와 어긋나게 생성되는 경우가 있습니다.

**누락된 pipe 종류 / 모델 통합**
- 일부 모델 제공자 통합이 문서화 대비 부족하거나, 특정 구조화 출력 백엔드에서 제약이 있습니다.
- 조건 분기나 반복 같은 제어 흐름 pipe 종류가 제한적이어서 복잡한 워크플로우는 우회 구성이 필요합니다.

> 참고: 위 내용은 일반적인 Pipelex 사용 경험을 바탕으로 한 요약이며, 실제 저장소의 최신 상태와 다를 수 있습니다. 구체적인 버그 재현은 이슈로 남기는 것을 권장합니다.

Source

English

Tools in this stack