DSPy의 BEAM 완전 이식판 'Imp', Elixir로 자가 개선형 LLM 프로그래밍 지원
·2026.09.28 04:28
핵심 내용
Imp가 DSPy를 BEAM으로 이식해 Elixir에서 신뢰성 있는 동시 에이전트 실행을 지원한다.
1 / 2
자세히 보기
BEAM 위에서의 DSPy 패러다임
Imp는 DSPy를 BEAM(Erlang/Elixir 런타임)으로 완전히 이식한 프로젝트로, Elixir에서 선언적이고 자가 개선되는 언어 모델 프로그램을 개발할 수 있게 한다. DSPy의 타입 지정 함수 접근 방식과 BEAM의 프로세스 모델을 결합하여, Imp는 에이전트를 상태 유지, 메시지 수신, 애플리케이션 내 동시 실행을 지원하는 감독 프로세스로 취급한다. 이 아키텍처는 단일 타입 호출부터 장기 실행 및 복원력 있는 에이전트 워크플로까지 복잡한 시스템 구축을 가능하게 한다.
주요 기능 및 워크플로
Imp는 시그니처를 사용하여 입력/출력 타입을 정의함으로써 수동 프롬프트 엔지니어링과 파싱을 제거한다. 라이브러리는 자동으로 프롬프트를 구성하고 응답을 검증하며 타입 지정된 필드를 반환한다. 주요 기능은 다음과 같다:
- 최적화: 실패를 반영하고 지침을 재작성하기 위해 더 강력한 모델을 사용하는 GEPA, MIPROv2, SIMBA 등 여러 최적화 도구와 GRPO 같은 미세 조정 방법을 지원한다. 이러한 도구는 레이블이 지정된 데이터셋(훈련, 검증, 테스트 세트)에 대해 프로그램을 평가하여 성능을 향상시킨다.
- 에이전트 구축: 쿼리에 답변할 수 있을 때까지 도구(표준 Elixir 함수)를 호출하는 에이전트를 생성하기 위해 Imp.react/3을 사용한다. 외부 도구 임포트를 위한 MCP(Model Context Protocol)와 Zed 같은 클라이언트에 에이전트를 서비스하기 위한 ACP(Agent Client Protocol)를 지원한다.
- OTP 통합: 실행은 감독 프로세스로 관리되어 모니터링, 중지, 권한 제어 기능을 제공한다. 도구 호출은 엄격한 오류 보고로 처리되어 부작용이 조용히 재시도되지 않도록 보장한다.
가용성 및 상태
Imp는 GitHub에서 오픈소스 프로젝트로 제공되며 36개 스타와 2,017개 커밋을 기록하고 있다. Elixir 1.19 이상 버전이 필요하며, 현재 버전은 0.5로 벤치마킹 및 개발이 진행 중인 실험 단계로 표시되어 있다. 이 라이브러리는 모델 연결을 위해 ReqLLM에 의존하며, 해당 패키지와 호환되는 모든 프로바이더를 지원한다.
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.