Elixir 기반의 에이전트 프레임워크 Jido 2.0 출시, BEAM 아키텍처를 활용하여 에이전트 시스템 구축
도구 호출(Tool Calling), 멀티 에이전트 지원(Multi-agent Support), 다양한 추론 전략(Reasoning Strategies) 등 에이전트 기능 제공
BEAM의 강력한 슈퍼비전 모델(Supervision Model)을 통해 안정적인 운영 환경 구축에 초점
커뮤니티에서는 보안(Security) 및 LangChain과의 관계(Relationship)에 대한 질문이 제기됨
Jido 2.0은 순수 함수형 에이전트 아키텍처를 기반으로 설계되었으며, 에이전트는 상태, 액션, 도구를 포함하는 데이터 구조로 표현된다. GenServer 내에서 실행되며, `cmd/2` 함수를 통해 액션을 처리하고 지시 사항을 반환한다. 이러한 구조는 에이전트의 테스트 용이성(Testability)과 디버깅(Debugging)을 향상시킨다. 특히, Jido.AgentServer는 각 에이전트를 슈퍼바이즈된 GenServer로 래핑하여 신호 라우팅, 지시 실행, 부모-자식 에이전트 계층 구조를 관리한다.
Jido AI는 LLM 호출을 구조화된 에이전트 인텔리전스로 변환하는 AI 통합 레이어이다. ReAct, Chain-of-Thought 등 다양한 추론 전략을 지원하며, ReqLLM을 기반으로 한다. ReqLLM(Elixir LLM client)은 11개의 프로바이더 구현을 통해 665개 이상의 모델을 지원한다. 또한, Ash Framework와의 통합을 통해 Ash 리소스가 AI 호출 가능한 도구로 변환될 수 있다. 은 Jido 생태계의 확장을 보여주는 중요한 사례이다.
BEAM 아키텍처는 에이전트 시스템에 적합한 특징을 제공하며, 특히 슈퍼비전 모델(Supervision Model)은 도구 격리, 시간/예산 제한, 부분적 실패로부터의 복구를 용이하게 한다. 커뮤니티에서는 보안에 대한 질문이 제기되었으며, 데이터 격리 아키텍처(Data Isolation Architecture) 및 컨테이너 사용 여부에 대한 논의가 필요하다. 또한, LangChain과의 관계에 대한 질문도 제기되어, Jido의 차별점을 명확히 할 필요가 있다.
Jido 2.0은 jido_action 및 jido_signal 패키지를 통해 액션과 신호 처리를 개선했다. jido_action은 컴파일 타임 스키마 검증, 라이프사이클 훅, ReqLLM의 도구 형식으로의 자동 변환을 제공한다. jido_signal은 CloudEvents v1.0.2 스펙을 기반으로 하며, 표준화된 신호 엔벨로프, 고성능 트리 기반 라우터, pub/sub 버스, 9개의 디스패치 어댑터를 제공한다. 표준 기반 신호(Standards-based signals)는 다양한 시스템과의 통합을 가능하게 한다.