섹션별 상세
A2A 프로토콜을 구현하여 에이전트 간 통신 표준을 제시하고 상호 운용성을 확보했다. 에이전트를 JSON-RPC 2.0 기반의 HTTP 서비스로 배포함으로써 어떤 A2A 호환 클라이언트와도 통신이 가능한 마이크로서비스 아키텍처를 구현한다. 이를 통해 개별 에이전트를 독립적으로 운영하면서도 필요에 따라 유연하게 조합할 수 있는 환경을 제공한다.
python
from obelix.adapters.outbound.litellm import LiteLLMProvider
from obelix.core.agent import BaseAgent
provider = LiteLLMProvider(model_id="anthropic/claude-haiku-4-5-20251001")
agent = BaseAgent(
system_message="You are a helpful assistant.",
provider=provider,
)
response = agent.execute_query("Hello!")
print(response.content)LiteLLM 제공자를 사용하여 기본적인 BaseAgent를 생성하고 쿼리를 실행하는 예시
Agent Factory와 공유 메모리 그래프를 통해 고도화된 멀티 에이전트 오케스트레이션을 지원한다. 여러 하위 에이전트를 등록하고 코디네이터 에이전트가 이를 관리하게 함으로써 복잡한 작업을 분해하여 처리할 수 있다. 공유 메모리 시스템은 에이전트 간의 컨텍스트 전파 정책을 관리하여 대규모 작업에서도 일관된 정보를 유지하도록 돕는다.
python
from obelix.core.agent.agent_factory import AgentFactory
factory = AgentFactory()
factory.register("math", MathAgent, subagent_description="Does calculations")
factory.register("report", ReportAgent, subagent_description="Writes reports")
factory.register("coordinator", CoordinatorAgent)
coordinator = factory.create("coordinator", subagents=["math", "report"])
response = coordinator.execute_query("Calculate 123 * 456 and summarize")Agent Factory를 사용하여 여러 하위 에이전트를 관리하는 코디네이터 에이전트를 구성하는 예시
BashTool과 지연된 실행(Deferred Execution) 모드를 도입하여 시스템 제어의 안전성을 강화했다. 에이전트가 쉘 명령어를 제안하면 CLI 클라이언트에서 사용자가 직접 승인한 후 로컬에서 실행되는 구조를 채택했다. 이를 통해 에이전트가 패키지 설치나 파일 관리 같은 강력한 작업을 수행하면서도 최종적인 보안 제어권은 인간이 보유하게 된다.
python
@tool(name="calculator", description="Performs arithmetic")
class CalculatorTool:
a: float = Field(..., description="First number")
b: float = Field(..., description="Second number")
async def execute(self) -> dict:
return {"result": self.a + self.b}
agent = BaseAgent(
system_message="You are a math assistant.",
provider=provider,
tools=[CalculatorTool],
)@tool 데코레이터와 Pydantic을 사용하여 에이전트에 커스텀 도구를 추가하는 방법
Python 3.13+의 최신 기능과 육각형 아키텍처를 활용하여 확장성 높은 코드베이스를 구축했다. LiteLLM을 포함한 다양한 어댑터를 통해 Anthropic, OpenAI, Ollama 등 100개 이상의 LLM 제공업체와 즉시 연동된다. 핵심 로직과 외부 연동부가 분리된 구조 덕분에 특정 모델이나 플랫폼에 종속되지 않는 유연한 시스템 개발이 가능하다.
용어 해설
- 에이전트 간 통신 프로토콜(A2A Protocol)
- — Linux Foundation에서 제안한 Agent-to-Agent 통신 표준으로, 서로 다른 에이전트 시스템이 HTTP와 JSON-RPC 2.0을 통해 상호작용할 수 있게 한다. 이를 통해 에이전트를 독립적인 서비스로 배포하고 다른 시스템과 연결하는 상호 운용성을 확보할 수 있다.
- 지연된 도구 실행(Deferred Tool Execution)
- — 에이전트가 도구를 직접 실행하지 않고 실행 계획만 생성하여 클라이언트에 전달하는 방식이다. 클라이언트 측에서 사용자의 최종 승인(Y/n)을 받은 후 실제 명령이 수행되므로, 쉘 명령어 실행과 같은 민감한 작업에서 보안성과 통제력을 높이는 핵심 메커니즘이다.
- 육각형 아키텍처(Hexagonal Architecture)
- — 소프트웨어 설계 패턴 중 하나로, 핵심 비즈니스 로직을 외부 인터페이스(데이터베이스, API, UI 등)와 분리하여 결합도를 낮춘다. Obelix에서는 Core 로직과 외부 LLM 제공업체를 연결하는 Adapters를 분리하여 시스템의 유연성과 테스트 용이성을 극대화했다.
- 공유 메모리 그래프(Shared Memory Graph)
- — 멀티 에이전트 시스템 내에서 여러 에이전트가 대화 기록, 상태 정보, 작업 결과 등을 공유하고 참조할 수 있도록 구조화된 데이터 저장 방식이다. 복잡한 작업을 수행할 때 각 에이전트가 동일한 컨텍스트를 유지하며 협업할 수 있도록 지원하는 기반 기술이다.
기술
- Obelix
- LiteLLM
- Python
- FastAPI
- Uvicorn
- Pydantic
- Anthropic API
- OpenAI API
활용 사례
- 자율 코딩 및 DevOps 에이전트
- 수학 및 보고서 작성을 위한 협업 에이전트 시스템
- A2A 프로토콜 기반의 에이전트 마이크로서비스
- 보안 승인 절차가 포함된 쉘 자동화 도구
언급된 리소스
AI 분석 전체 내용 보기
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
원문 발행 2026. 03. 25.수집 2026. 03. 26.출처 타입 RSS
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.
