a-ghorbani/pocketpal-ai
An app that brings language models directly to your phone.
PocketPal AI – 온디바이스 AI 채팅 어시스턴트
개요 – PocketPal AI는 무료 오픈소스 모바일 앱(iOS 및 Android)으로, 대규모 언어 모델과 대화하고, 음성을 듣고, 간단한 도구(계산기, 날짜-시간, HTML 렌더링)를 제공할 수 있습니다. 모든 것이 휴대전화를 떠나지 않고 실행됩니다. 앱은 GGUF 형식 모델을 Hugging Face에서 한 번 다운로드한 후, 휴대전화의 CPU, GPU(Metal/OpenCL) 또는 NPU(Qualcomm Hexagon)를 사용하여 로컬에서 추론을 실행합니다. 클라우드 계정, 구독이 필요 없으며, 벤치마크 결과나 피드백을 명시적으로 공유하지 않는 한 모든 것이 비공개로 유지됩니다.
핵심 기능
| 기능 | 제공 내용 |
|---|---|
| 온디바이스 채팅 | 인기 있는 LLM(Gemma, Qwen, Phi, Llama 등)을 GGUF 형식으로 오프라인 실행. |
| 신경 TTS | 온디바이스 텍스트 음성 변환(Kokoro 및 기타 ONNX 모델) – 인터넷 호출 없음. |
| Pals 및 PalsHub | 맞춤형 프롬프트, 개성, 롤플레이 설정을 갖춘 개인화된 '어시스턴트' 생성 또는 다운로드. |
| 도구 사용(Talents) | 모델은 도구 사용 루프를 통해 내장 도구(계산기, 날짜-시간, HTML 렌더러)를 호출할 수 있습니다. |
| 하드웨어 가속 | 추론은 CPU, GPU(iOS의 Metal, Android의 OpenCL) 또는 NPU를 사용할 수 있으며, 앱은 자동으로 폴백합니다. |
| 벤치마크 및 리더보드 | 초당 토큰 수와 메모리 사용량을 측정. 선택적으로 결과를 공개 AI-Phone 리더보드에 제출. |
| 현지화 | UI는 11개 언어 지원. iPad 완전 지원. |
| 오픈소스 및 무료 | MIT 라이선스, 숨겨진 '프로' 티어 없음. |
작동 방식(높은 수준)
- UI 레이어 – React Native 앱(React Native Paper, MobX 상태, WatermelonDB 채팅 기록).
AgentRunner가 모델 토큰을 스트리밍하고 모델이 요청할 때 Talents를 디스패치합니다. - 브리징 레이어 – 네이티브 모듈이 llama.cpp 추론(
llama.rn) 및 ONNX-Runtime TTS를 JavaScript에 노출합니다. - 엔진 레이어 –
llama.cpp가 양자화된 GGUF LLM을 실행. ONNX Runtime이 신경 TTS 모델을 실행. - 하드웨어 레이어 – 계산은 기기의 CPU, GPU(Metal/OpenCL) 또는 NPU(Qualcomm Hexagon)에서 실행되며 자동 폴백이 있습니다.
사용자 시작하기
- App Store 또는 Google Play에서 설치합니다.
- 앱 열기 → 메뉴 ☰ → 모델 → 기기 메모리에 맞는 모델을 선택하고 다운로드합니다(또는 개인 토큰으로 Hugging Face에서 추가).
- 모델을 로드하고 채팅을 시작합니다. 음성 출력을 활성화하거나, Pals를 전환하거나, 벤치마크 화면을 실행할 수 있습니다.
개발자 시작하기
- 사전 요구 사항 – Node 22(
.nvmrc사용), Yarn 1, Xcode + CocoaPods(iOS) 또는 Android Studio(Android). 저장소는 표준 React-Native 레이아웃을 따릅니다. - 빌드 –
git clone … && nvm use && yarn install && (cd ios && pod install)그런 다음yarn ios또는yarn android. - 코드 구조 –
src/screens– UI 페이지(채팅, 모델, Pals, 벤치마크, 설정).src/services/agent–AgentRunner가 채팅-도구 루프를 구현.src/services/talents– 내장 도구.TalentEngine을 구현하고 등록하여 추가.src/services/tts– TTS 엔진. 추가 ONNX 모델로 확장 가능.src/store– 모델, 채팅 세션, 설정 등을 위한 MobX 스토어.
- 품질 게이트 –
yarn lint,yarn typecheck,yarn test는 PR 전에 통과해야 합니다. - 확장 – 새 Talents, TTS 엔진 또는 로케일(
src/locales의 JSON 파일)을 추가합니다.
누가 혜택을 받을 수 있나요?
- 개인정보 보호에 민감한 사용자 – 데이터를 업로드하지 않는 대화형 AI를 원하는 분.
- 여행자 / 현장 작업자 – 비행기나 원격지에서 오프라인 AI가 필요한 분.
- 개발자 – 온디바이스 LLM 추론, 하드웨어 가속 또는 맞춤형 AI 어시스턴트 구축에 관심이 있는 분.
라이선스 및 커뮤니티
- 라이선스 – MIT.
- 지원 – GitHub Discussions, Issues, 웹사이트 pocketpal.dev, 선택적 GitHub Sponsors 후원.
- 감사의 말 – llama.cpp, llama.rn, ONNX Runtime, React-Native, MobX, WatermelonDB 및 기타 많은 오픈소스 라이브러리를 기반으로 합니다.
결론 – PocketPal AI는 최신 양자화 LLM이 스마트폰에서 완전히 오프라인으로 실행될 수 있음을 보여주며, 반복 비용 없이 개인적이고 확장 가능한 AI 어시스턴트를 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트