langroid/langroid

Harness LLMs with Multi-Agent Programming

Langroid – 멀티 에이전트 LLM 애플리케이션 구축을 위한 경량 Python 프레임워크

그것이 무엇인가

  • 오픈 소스 Python 라이브러리(CMU 및 UW-Madison 출신)로, 모든 대규모 언어 모델(LLM)을 기반으로 하는 에이전트를 생성, 구성, 실행할 수 있습니다.
  • 에이전트에는 언어 모델, 벡터 스토어(검색 증강 생성을 위한), 사용자 정의 도구/함수를 장착할 수 있으며, 메시지를 교환하여 작업을 해결하도록 오케스트레이션할 수 있습니다.

핵심 아이디어

  • Agent – 대화 상태를 유지하고 도구를 호출할 수 있는 LLM의 얇은 래퍼입니다.
  • Task – 사용자 정의 루프를 통해 에이전트(또는 하위 작업 계층)를 구동하는 실행 가능한 단위입니다.
  • ToolMessage – LLM의 추론 내에서 Python 함수(도구)를 트리거하는 타입이 지정된 메시지입니다.
  • 멀티 에이전트 오케스트레이션 – 에이전트를 부모-자식 관계로 연결하여 교사-학생 대화, 도구 위임, 협업 정보 추출과 같은 패턴을 가능하게 합니다.

주요 기능(README에 나열된 대로)

  • 모든 OpenAI 호환 LLM과 작동합니다(OpenAI, Anthropic, Mistral, Gemini, Ollama를 통한 로컬 모델 등).
  • LangChain 또는 다른 LLM 프레임워크에 대한 의존성이 없습니다 – 순수하고 자체 포함되어 있습니다.
  • 많은 벡터 스토어(Qdrant, Milvus, Pinecone, pgvector, Weaviate, ArangoDB 등)와 웹 검색 도구(Tavily, Exa, Firecrawl)에 대한 내장 지원.
  • 멀티모달 입력(PDF, 이미지, HTML, PPTX 등) 및 전용 파서(GeminiPdfParser, docling, pymupdf4llm).
  • JSON 스키마를 통한 구조화된 출력 강제.
  • 퓨샷 예제를 통한 도구 호출, "잊혀진" 도구 사용 자동 처리, 큰 결과 잘림.
  • 외부 도구 서버에 연결하기 위한 MCP(Multi-Chat-Protocol) 도구 어댑터.
  • 비동기 스트리밍, 컨텍스트 오버플로 잘림, 작업 예산 제한, 무한 루프 감지.
  • 대화형 작업 검사를 위한 시각적 HTML 로거.
  • Claude Code용 확장 가능한 플러그인 및 다중 아키텍처 배포를 위한 Docker 이미지.

일반적인 사용 사례

  • 지식 베이스나 데이터베이스를 쿼리해야 하는 대화형 어시스턴트.
  • 문서에 대한 질문에 답변하기 위한 검색 증강 생성(DocChatAgent).
  • 구조화된 데이터 추출 파이프라인(예: 약물 감시 보고서 추출).
  • 멀티 에이전트 교육/학습 시뮬레이션, 도구 위임 워크플로우, 또는 여러 LLM이 조정해야 하는 모든 시나리오.

시작하기

pip install langroid   # 또는 추가 기능 설치, 예: `pip install "langroid[doc-chat]"`
  • 배지에 링크된 빠른 시작 Colab 노트북을 따르세요.
  • LLM 구성으로 ChatAgentConfig를 만들고, ChatAgent를 인스턴스화하고, Task로 감싼 다음 task.run()을 호출하세요.
  • 멀티 에이전트 예제는 동반 langroid-examples 저장소를 참조하세요.

문서 및 커뮤니티

성숙도

  • 적극적으로 유지 관리됨(최신 릴리스 0.68.0, 2026년 9월) – 빈번한 기능 릴리스, CI 테스트, 코드 커버리지, Docker 빌드.
  • Nullify와 같은 회사에서 프로덕션에 사용되며, README에 공개 추천서가 있습니다.

라이선스

  • 저장소는 오픈 소스입니다(README에는 라이선스가 명시되지 않았지만, PyPI 패키지는 OSI 승인 라이선스로 릴리스됩니다).

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트