huggingface/AnyLanguageModel

An API-compatible, drop-in replacement for Apple's Foundation Models framework with support for custom language model providers.

해결하는 문제

AnyLanguageModel은 Apple의 Foundation Models 프레임워크를 대체하는 드롭인 교체용 Swift 패키지입니다. 개발자는 일관된 API를 유지하면서 다양한 맞춤형 언어 모델 제공업체(온디바이스 및 클라우드 기반)를 사용할 수 있어, 벤더 종속을 줄이고 다양한 LLM 백엔드 통합을 단순화합니다.

작동 방식

import FoundationModels 문을 import AnyLanguageModel로 교체하면 개발자는 다양한 제공업체에 접근할 수 있습니다. 이 라이브러리는 Swift 6.1 트레이트를 사용하여 Core ML, MLX, llama.cpp와 같은 무거운 의존성을 조건부로 포함하므로, 최종 바이너리에는 필요한 백엔드만 포함되어 빌드 시간과 빌드 크기를 작게 유지합니다.

대상 사용자

iOS, macOS, visionOS 또는 Linux용 Swift 개발자로서 로컬 온디바이스 모델과 클라우드 API를 모두 지원하는 통합 인터페이스를 통해 LLM을 애플리케이션에 통합하려는 개발자를 대상으로 합니다.

주요 특징

  • 광범위한 제공업체 지원: Apple Foundation Models, Core ML, MLX, llama.cpp, Ollama, Anthropic, Google Gemini 및 OpenAI를 지원합니다.
  • 가이드 생성: @Generable 및 @Guide를 사용하여 강력한 타입의 출력을 지원하며, 수동 문자열 파싱을 피할 수 있습니다.
  • 도구 호출: 모든 제공업체에서 도구 호출을 포괄적으로 지원하며, 실행을 관찰하거나 제어할 수 있는 델리게이트 시스템을 포함합니다.
  • 멀티모달 기능: 다양한 제공업체(모델이 지원하는 경우)에서 이미지 입력을 지원합니다.
  • 추론 지원: 최종 답변과 별도로 추론 세그먼트를 캡처하고 표시할 수 있으며, 특히 Anthropic의 thinking 모델과 통합됩니다.
  • 토큰 추적: 다양한 제공업체에서 입력, 출력, 캐시 및 추론 토큰을 상세히 추적합니다.

관련

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