hybridgroup/yzma

Go with your own intelligence - Go applications that directly integrate llama.cpp for local inference using hardware acceleration.

해결하는 문제

yzma는 Go 개발자가 C 컴파일러(CGo)나 외부 모델 서버를 관리할 필요 없이 애플리케이션에 로컬 AI 모델 추론을 직접 통합할 수 있는 방법을 제공합니다. 다양한 하드웨어에서 대규모 언어 모델(LLM)과 시각 언어 모델(VLM)을 로컬로 실행하는 과정을 간소화합니다.

작동 방식

이 프로젝트는 llama.cpp를 Go 래퍼로 사용하며, puregoffi를 활용해 동일한 프로세스 내에서 llama.cpp 라이브러리를 호출합니다. 이를 통해 애플리케이션은 CUDA, Metal, Vulkan 등의 하드웨어 가속 기능을 활용해 고성능을 구현하면서도 표준 Go 빌드 프로세스를 유지할 수 있습니다.

대상 사용자

컨테이너나 외부 추론 서버의 복잡성을 피하고, 임베디드 로컬 AI 기능을 갖춘 애플리케이션을 개발하고자 하는 Go 개발자들입니다.

주요 특징

  • CGo 없이 통합: puregoffi를 사용해 Go 프로그램 빌드 시 C 컴파일러가 필요하지 않습니다.
  • 광범위한 하드웨어 지원: Linux, macOS, Windows에서 CUDA, Metal, Vulkan, HIP, ROCm, SYCL, OpenCL를 모두 지원합니다.
  • 로컬 추론: Go 애플리케이션과 동일한 프로세스 내에서 모델을 실행해 최대 성능을 발휘합니다.
  • 다중 모달 기능: GGUF 형식 모델을 사용해 텍스트 기반 LLM과 시각 언어 모델(VLM) 모두를 지원합니다.
  • 모델 관리 간소화: Hugging Face에서 GGUF 모델을 직접 다운로드할 수 있는 명령줄 도구를 포함합니다.

관련

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