antoinezambelli/forge
A Python framework for self-hosted LLM tool-calling and multi-step agentic workflows
해결하는 문제
Forge는 특히 자체 호스팅된 로컬 LLM에서 도구 호출(function calling)의 신뢰성을 높이기 위해 설계된 신뢰성 계층입니다. 모델이 잘못된 JSON을 생성하거나 존재하지 않는 도구를 호출하거나 특정 단계 순서를 따르지 못하는 등의 일반적인 실패를 방지하여, 에이전트 워크플로우가 충돌하거나 무한 루프에 빠지는 것을 막습니다.
작동 방식
Forge는 세 가지 방식으로 통합 가능한 가드레일 시스템으로 작동합니다:
- 프록시 서버: 기존 클라이언트(Aider 또는 Claude Code 등)와 모델 서버 사이에 배치되는 즉시 사용형 사이드카입니다. 클라이언트 코드 변경 없이 요청을 투명하게 가로채고, 가드레일을 적용합니다.
- WorkflowRunner: 도구 정의와 구조화된 에이전트 루프를 위한 고수준 프레임워크로, 시스템 프롬프트에서 컨텍스트 압축에 이르기까지 전체 라이프사이클을 관리합니다.
- Guardrails 미들웨어: 사용자 정의 오케스트레이션 루프에 삽입할 수 있는 조합 가능한 도구 세트로, 응답 검증과 잘못된 호출 복구를 가능하게 합니다.
주요 신뢰성 메커니즘으로는 리스크 회복 파서(XML 또는 코드 블록과 같은 비표준 형식에서 도구 호출 추출), 응답 검증(도구 이름과 구조 확인), 그리고 수정된 피드백을 포함한 자동 재시도 루프가 있습니다.
대상 사용자
로컬 LLM에 의존하여 AI 에이전트를 개발하거나 기존 코드 어시스턴트를 사용하는 개발자로서, 더 큰 비용이 드는 프론티어 모델로 전환하지 않고도 도구 호출 성공률을 높이고 싶은 사람.
주요 특징
- 높은 신뢰성 향상: 평가 세트에서 로컬 8B 모델의 성공률을 단일 자릿수에서 84%로 향상.
- 광범위한 백엔드 지원: llama-server, Ollama, vLLM, Llamafile, Anthropic와 호환.
- 리라이트 없이 통합 가능: 프록시 모드를 통해 기존 OpenAI 호환 도구가 가드레일의 이점을 투명하게 활용 가능.
- 컨텍스트 관리: 토큰 예산을 효율적으로 관리하기 위한 계층적 압축 전략 포함.
- 우선 순위 접근:
SlotWorker를 통해 여러 전문 워크플로우가 단일 GPU 슬롯을 우선 순위 큐를 통해 공유 가능.
관련
- Dispatch
- 프로젝트
- 프로젝트
- Dispatch
- 프로젝트