언어 모델, 음성 합성, 도구 사용을 휴대폰에서 오프라인으로, 계정 없이 실행하는 React Native 모바일 앱입니다.
mybigday/llama.rn
iOS 및 Android 앱에서 GGUF LLM을 기기 내에서 실행하는 llama.cpp의 React Native 바인딩입니다.
- 스타
- 1,059
- 포크
- 132
- 열린 이슈
- 23
- 마지막 커밋
- 4시간 전
어떤 프로젝트인가요?
llama.rn은 llama.cpp를 래핑해 React Native 앱에서 GGUF 언어 모델을 불러오고 서버 없이 휴대폰에서 직접 추론할 수 있게 합니다. 채팅과 텍스트 완성, 임베딩, 리랭킹, 토큰화, 세션 저장 및 불러오기를 위한 JavaScript API를 제공합니다.
이 라이브러리는 일반적인 텍스트 생성 외에도 다양한 기능을 지원합니다. 이미지와 오디오 입력은 mmproj 프로젝터를 통해 멀티모달 모델로 처리하고, Jinja 채팅 템플릿으로 툴 호출을 지원하며, GBNF 문법이나 JSON 스키마를 사용해 구조화된 출력을 생성할 수 있습니다. 슬롯 기반 병렬 요청 처리와 MTP 추측 디코딩도 포함되어 있습니다. GPU 가속은 iOS에서 Metal을, 지원되는 Qualcomm Adreno 기기에서 OpenCL을 사용하며, 최신 Snapdragon 칩에서는 실험적으로 Hexagon NPU도 지원합니다.
실험적인 텍스트 음성 변환 기능은 codec.cpp 백엔드를 통해 여러 신경망 TTS 모델 계열을 실행하며, 참조 오디오를 이용한 음성 복제도 지원합니다. v0.10부터는 React Native의 New Architecture가 필요하며, 이전 버전은 별도 브랜치에서 제공됩니다.
핵심 기능
- 01React Native JavaScript API를 통해 iOS 및 Android에서 GGUF 모델을 실행합니다.
- 02iOS의 Metal GPU 가속과 지원되는 Qualcomm 기기의 OpenCL을 지원합니다.
- 03mmproj 파일을 통해 멀티모달 모델의 비전 및 오디오 입력을 처리합니다.
- 04Jinja 템플릿과 GBNF 또는 JSON Schema 문법을 통해 툴 호출과 구조화된 출력을 지원합니다.
- 05슬롯 기반 병렬 텍스트 완성, 임베딩, 리랭킹을 제공합니다.
활용 사례
- 휴대폰에서 완전히 오프라인으로 실행되는 프라이버시 중심 챗봇을 구축합니다.
- 모바일 앱에 임베딩과 리랭킹을 활용한 기기 내 문서 검색 기능을 추가합니다.
- 백엔드 없이 React Native 앱의 비전 또는 오디오 이해 기능을 프로토타이핑합니다.
빠른 시작
- 1
npm에서 패키지 설치
npm install llama.rn - 2
iOS용 pod install 다시 실행
npx pod-install - 3
GGUF 모델을 로드하고 initLlama를 사용해 completion 실행
사용 전 알아둘 점
- v0.10부터 React Native의 New Architecture가 필요합니다. Old Architecture에서는 v0.9 브랜치를 사용해야 합니다.
- 네이티브 바이너리는 postinstall 중 GitHub 릴리스에서 다운로드되므로 설치 시 네트워크 연결이 필요하며, 수동 다운로드 단계가 필요할 수도 있습니다.
- GPU 및 NPU 가속(OpenCL, Hexagon)은 일부 Qualcomm 기기에서만 사용할 수 있으며, Hexagon은 실험적 기능입니다.
- 텍스트 음성 변환 지원은 실험적입니다.
토픽
자주 묻는 질문
- llama.rn은(는) 무엇인가요?
- iOS 및 Android 앱에서 GGUF LLM을 기기 내에서 실행하는 llama.cpp의 React Native 바인딩입니다. llama.rn은 llama.cpp를 래핑해 React Native 앱에서 GGUF 언어 모델을 불러오고 서버 없이 휴대폰에서 직접 추론할 수 있게 합니다. 채팅과 텍스트 완성, 임베딩, 리랭킹, 토큰화, 세션 저장 및 불러오기를 위한 JavaScript API를 제공합니다.
- llama.rn은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- llama.rn은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- llama.rn은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. llama.rn의 마지막 커밋은 2026년 10월 21일입니다.
- llama.rn은(는) 어디에 사용할 수 있나요?
- 휴대폰에서 완전히 오프라인으로 실행되는 프라이버시 중심 챗봇을 구축합니다. 모바일 앱에 임베딩과 리랭킹을 활용한 기기 내 문서 검색 기능을 추가합니다. 백엔드 없이 React Native 앱의 비전 또는 오디오 이해 기능을 프로토타이핑합니다.
- llama.rn는 어떻게 설치하나요?
- npm에서 패키지 설치: npm install llama.rn iOS용 pod install 다시 실행: npx pod-install GGUF 모델을 로드하고 initLlama를 사용해 completion 실행
- llama.rn은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/mybigday/llama.rn
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Google AI Edge가 제공하는 Android 및 iOS 앱으로, 오픈소스 LLM과 온디바이스 GenAI를 인터넷 연결 없이 휴대폰에서 체험할 수 있습니다.
React와 JavaScript로 Android 및 iOS 네이티브 앱을 만들고, UI를 각 플랫폼의 네이티브 컴포넌트로 렌더링하는 프레임워크입니다.
Android, iOS, 웹에서 실행되는 범용 네이티브 앱을 React로 만드는 오픈소스 프레임워크입니다.
iOS와 Android에서 여러 AI 모델과 대화하고, 에이전트를 실행하고, MCP 도구를 연결하고, 이미지를 생성할 수 있는 Cherry Studio 모바일 앱입니다.
llama.cpp 기반으로 LLaMA 계열 및 기타 GGUF 언어 모델을 CPU나 GPU에서 로컬로 실행하는 C#/.NET 라이브러리입니다.