[GeekNews 요약] NobodyWho: 앱 및 게임에 로컬 AI를 통합하는 온디바이스 추론 엔진 공개
41
설명
NobodyWho는 개발자가 애플리케이션 및 게임에 대규모 언어 모델(LLM)을 효율적으로 통합할 수 있도록 지원하는 새로운 온디바이스 추론 엔진입니다. 이 엔진은 API 키나 숨겨진 비용 없이 로컬에서 LLM을 실행할 수 있게 하여, 사용자 프라이버시 강화와 오프라인 환경에서의 AI 기능 구현을 가능하게 합니다. Gemma, Qwen, Mistral 등 다양한 챗 LLM을 지원하며, 멀티모달 입력 및 텍스트-음성 변환 기능까지 제공합니다.
### 배경 설명
최근 AI 기술의 발전은 클라우드 기반의 대규모 모델 활용을 넘어, 사용자 기기 자체에서 AI 연산을 수행하는 온디바이스(On-Device) AI로 확장되고 있습니다. 이는 데이터 프라이버시 문제 해결, 네트워크 지연 감소, 오프라인 환경에서의 AI 기능 활용 등 여러 이점을 제공합니다. 특히 모바일 애플리케이션, 게임, 임베디드 시스템 등에서 로컬 AI 통합의 필요성이 증대되고 있습니다. 과거에는 특정 하드웨어에 종속되거나 복잡한 설정이 요구되었던 로컬 AI 구현이, llama.cpp와 같은 효율적인 추론 라이브러리의 등장으로 점차 대중화되고 있습니다. NobodyWho는 이러한 흐름 속에서 다양한 플랫폼과 LLM을 지원하며 온디바이스 AI 통합의 장벽을 낮추는 것을 목표로 합니다.
이전에는 온디바이스 AI를 구현하기 위해 특정 모델에 최적화된 라이브러리를 사용하거나, 복잡한 크로스 컴파일 과정을 거쳐야 했습니다. 또한, 모델의 양자화(Quantization) 및 최적화 기술이 필수적이었으며, 이는 개발자에게 상당한 기술적 부담으로 작용했습니다. NobodyWho는 이러한 과정을 추상화하고, 개발자가 친숙한 언어(Python, Kotlin, Swift, React Native, Flutter, Godot)로 LLM을 쉽게 통합할 수 있도록 SDK를 제공함으로써, 온디바이스 AI 개발의 접근성을 크게 향상시켰습니다.
### 1. NobodyWho란 무엇인가?
NobodyWho는 개발자가 다양한 디바이스에서 LLM을 로컬로 효율적으로 실행할 수 있도록 설계된 추론 엔진입니다. 별도의 API 키나 숨겨진 비용 없이 작동하며, 인터넷 연결이 없는 환경에서도 AI 기능을 구현할 수 있습니다. Gemma, Qwen, Mistral 등 다양한 챗 LLM을 지원하며, 타입 안전성을 갖춘 빠른 도구 호출 기능을 제공하여 함수 시그니처로부터 구조화된 문법을 자동으로 생성합니다. 또한, 이미지 및 오디오와 같은 멀티모달 입력을 처리하고, 로컬 음성 합성(Text-to-Speech) 및 음성 인식(Speech-to-Text) 기능도 지원합니다. Hugging Face 또는 임의의 URL에서 모델을 직접 다운로드하여 로드할 수 있습니다.
### 2. 주요 기능 및 기술 스택
NobodyWho의 핵심은 Rust로 작성된 추론 엔진이며, 이는 llama.cpp 및 ONNX Runtime과 같은 강력한 백엔드를 활용합니다. llama.cpp는 텍스트, 비전, 임베딩, 리랭킹 등 LLM의 핵심 추론 기능을 담당하며, Vulkan, Metal, CUDA 등 다양한 GPU 가속 기술을 지원하여 하드웨어 성능을 최대한 활용합니다. ONNX Runtime은 음성-텍스트 변환, 텍스트-음성 변환, 음성 활동 감지(VAD)와 같은 오디오 관련 기능을 처리합니다. 이러한 백엔드 기술은 Flutter, Python, Godot, Kotlin, Swift, React Native 등 다양한 프론트엔드 프레임워크와 UniFFI, flutter_rust_bridge, PyO3, gdext와 같은 브릿지를 통해 통합됩니다. 이를 통해 개발자는 익숙한 개발 환경에서 강력한 로컬 AI 기능을 구현할 수 있습니다.
### 3. 지원 플랫폼 및 요구 사항
NobodyWho는 데스크톱(Linux, macOS, Windows x86_64), 모바일(iOS, Android), 그리고 Vision Pro 및 Apple Watch와 같은 엣지 디바이스까지 폭넓은 플랫폼을 지원합니다. 각 플랫폼별로 네이티브 SDK를 제공하며, Swift Package Manager, Maven Central, npm, pub.dev 등 표준 패키지 관리자를 통해 쉽게 설치할 수 있습니다. 데스크톱 환경에서는 GPU 가속을 위해 Vulkan 또는 Metal 지원이 권장되며, 모바일 환경에서는 최소 iPhone 11 이상, 4GB RAM, 또는 Snapdragon 855 / Adreno 640 / 6GB RAM 이상의 안드로이드 기기가 권장됩니다. 모델 파일 크기의 약 1.5배에서 2배에 해당하는 여유 RAM이 요구되며, GPU VRAM에 모델의 일부를 오프로드하여 성능을 향상시킬 수 있습니다. 현재 Windows ARM64 및 웹 익스포트는 지원되지 않습니다.
### 4. 빠른 시작 및 사용 예시
Python을 사용한 빠른 시작 예시는 다음과 같습니다: `pip install nobodywho` 명령어로 라이브러리를 설치한 후, `from nobodywho import Chat`으로 Chat 클래스를 임포트합니다. 이후 `chat = Chat('hf:NobodyWho/Qwen_Qwen3-0.6B-GGUF:Q4_K_M')`와 같이 모델 경로를 지정하여 Chat 객체를 생성하고, `response = chat.ask('What is the capital of Denmark?')`로 질문을 전달하면 `response.completed()`를 통해 답변을 얻을 수 있습니다. Kotlin, Swift, React Native, Flutter, Godot 등 다른 언어에서도 유사한 방식으로 모델을 로드하고 질의하는 과정을 간편하게 수행할 수 있습니다. 또한, OpenAI Chat Completions API와 호환되는 로컬 서버 기능도 제공하여 기존 OpenAI API 기반 애플리케이션과의 연동을 용이하게 합니다.
### 가치와 인사이트
NobodyWho는 온디바이스 AI 통합의 복잡성을 크게 줄여 개발자에게 실질적인 가치를 제공합니다. API 호출 비용, 데이터 전송 지연, 개인 정보 보호 문제 등 클라우드 기반 LLM 사용의 제약을 극복할 수 있게 합니다. 이는 특히 사용자 데이터의 민감도가 높은 금융, 의료 분야 애플리케이션이나, 실시간 응답이 중요한 게임 및 인터랙티브 콘텐츠 개발에 매우 유용합니다. 또한, 다양한 플랫폼과 언어를 지원함으로써 개발 생태계 전반에 걸쳐 온디바이스 AI 기술의 채택을 가속화할 잠재력을 가지고 있습니다. 개발자는 이제 복잡한 머신러닝 인프라 구축 없이도 LLM의 강력한 기능을 자신의 애플리케이션에 손쉽게 접목할 수 있게 되었습니다.
### 기술·메타
* **라이선스**: EUPL-1.2
* **주요 기술**: Rust, llama.cpp, ONNX Runtime, Vulkan, Metal, CUDA
* **지원 언어/프레임워크**: Python, Kotlin, Swift, React Native, Flutter, Godot
* **모델 형식**: GGUF
* **저장소**: [https://github.com/nobodywho-ooo/nobodywho](https://github.com/nobodywho-ooo/nobodywho)
* **문서**: [https://docs.nobodywho.ooo/](https://docs.nobodywho.ooo/)
* **커뮤니티**: Discord, Matrix
### 향후 전망
NobodyWho는 EUPL-1.2 라이선스를 채택하여 상업적 및 독점적 프로젝트에서의 무료 사용을 허용하지만, 코드 수정 시 해당 변경 사항은 오픈 소스로 공개해야 합니다. 이는 프로젝트의 지속적인 발전과 커뮤니티 기여를 장려하는 동시에, 핵심 기술의 독점적 사용을 방지하는 균형 잡힌 접근 방식입니다. 향후 Windows ARM64 및 웹 익스포트 지원이 추가될 것으로 예상되며, 이는 지원 플랫폼의 범위를 더욱 확장시킬 것입니다. 또한, 더 많은 LLM 모델과의 호환성 강화, 추론 속도 최적화, 그리고 멀티모달 기능의 고도화 등이 이루어질 것으로 기대됩니다. 경쟁 환경에서는 기존의 온디바이스 AI 프레임워크들과의 차별화된 기능 및 사용 편의성을 통해 시장을 확보해 나갈 것입니다. 다만, 하드웨어 성능의 제약과 모델 크기 증가에 따른 메모리 요구 사항은 여전히 중요한 고려 사항으로 남을 것입니다.
📝 원문 및 참고
- 원문: [링크 열기](https://github.com/nobodywho-ooo/nobodywho)
- GeekNews 토픽: [보기](https://news.hada.io/topic?id=34463)
---
출처: GeekNews ([원문 링크](https://github.com/nobodywho-ooo/nobodywho))
이 글에 대한 한 줄 의견
신고 · 불법·유해·아동 안전(CSAE) 관련 콘텐츠

댓글 0
아직 댓글이 없습니다. 로그인하면 바로 의견을 남길 수 있습니다.