개요

Runtime Local LLM은 llama.cpp를 사용하여 대규모 언어 모델을 완전히 온디바이스에서 실행하는 플러그인으로, 런타임에 인터넷 연결이 필요하지 않습니다. GGUF 모델 파일을 지원하며 모델 로드, 메시지 전송, 토큰별 응답 수신을 위한 전체 Blueprint API를 제공하며, 이 모든 작업이 백그라운드 스레드에서 게임 스레드 콜백과 함께 이루어집니다.
이 플러그인은 Windows, Mac, Linux, Android(Meta Quest 및 기타 Android 기반 플랫폼 포함), iOS를 지원합니다.
주요 기능
- 완전한 오프라인 추론: 런타임에 클라우드 서비스나 API 키가 필요 없음
- GGUF 모델 지원: 모든 GGUF 형식 모델(Llama, Mistral, Phi, Gemma, Qwen 등)을 로드 가능
- 최신 llama.cpp: llama.cpp 릴리스에 발맞춰 Fab에서 정기적으로 업데이트되므로, 항상 최신 GGUF 모델 형식 지원
- GPU 가속: Windows 및 Linux에서 Vulkan, Mac 및 iOS에서 Metal, Android 및 Meta Quest에서 CPU + 인트린직 사용
- 여러 모델 로딩 방법:
- 로컬 파일 경로에서 로드
- 모델 이름으로 로드(Blueprints에서 드롭다운 선택)
- URL에서 다운로드하여 자동 로드
- 사전 캐싱을 위한 다운로드 전용
- 토큰별 스트리밍: 실시간 표시를 위해 각 토큰이 생성되는 대로 수신
- 비동기 Blueprint 노드: 로드, 메시지 전송, 다운로드를 위한 출력 델리게이트가 있는 노드
- 설정 가능한 추론 매개변수: Temperature, Top-P, Top-K, 반복 페널티, GPU 레이어 오프로드, 컨텍스트 크기, 시드, 스레드 수, 시스템 프롬프트
- 대화 컨텍스트 관리: 컨텍스트 초기화 지원과 함께 여러 턴의 대화 유지
- 에디터 모델 관리자: 프로젝트 설정에서 직접 모델 찾아보기, 다운로드, 가져오기, 삭제 및 테스트
- 크로스 플랫폼 패키징: NonUFS 스테이징을 통해 모델이 프로젝트와 함께 제공됩니다
작동 방식
- 에디터에서 모델 관리: 플러그인 설정 패널을 사용하여 사전 정의된 모델 카탈로그를 찾아보거나, 다운로드하거나, 자체 GGUF 파일을 가져옵니다
- 런타임에 모델 로드: 추론 매개변수를 사용하여 로드 함수 중 하나를 호출합니다(파일, 이름, URL 또는 메타데이터 기준)
- 메시지 전송: 사용자 메시지를 LLM 인스턴스에 전달하면, 모델이 응답을 생성할 때 델리게이트를 통해 토큰이 스트리밍됩니다
- 응답 사용: 채팅 UI에 토큰을 표시하거나, NPC 대화를 구동하거나, 동적 콘텐츠를 생성하거나, 다른 시스템에 공급합니다
모든 추론은 전용 백그라운드 스레드에서 실행됩니다. 콜백(토큰 생성, 완료, 오류)은 게임 스레드에서 발생하므로, 이를 통해 UI와 게임 상태를 안전하게 업데이트할 수 있습니다.
모델 저장 및 패키징
모델은 프로젝트의 Content/RuntimeLocalLLM/Models 디렉토리에 .gguf 파일로 저장됩니다. 플러그인은 Additional Non-Asset Directories To Copy (DirectoriesToAlwaysStageAsNonUFS)를 자동으로 구성하여, 패키지된 프로젝트와 함께 모델 파일이 제공되고 런타임에 표준 파일 I/O를 통해 액세스할 수 있도록 합니다.
각 모델에는 메타데이터(표시 이름, 계열, 변형, 설명, 매개변수 수)를 저장하는 .json 사이드카 파일도 있습니다.
지원 모델
이 플러그인은 GGUF 형식의 모든 모델과 함께 작동합니다. 에디터는 원클릭 다운로드를 위한 인기 사전 정의 모델 카탈로그를 제공하며, 사용자 지정 GGUF 파일을 가져올 수 있습니다. 일반적인 모델 계열은 다음과 같습니다:
- Llama (Meta) — 1B, 3B, 8B 등
- Mistral / Mixtral — 7B 이상
- Phi (Microsoft) — 2B, 3B, 4B
- Gemma (Google) — 2B, 7B
- Qwen (Alibaba) — 1.5B, 7B 이상
- TinyLlama — 1.1B
- 그 외 많은 커뮤니티 모델
양자화
모델은 품질과 크기 및 속도를 절충하는 다양한 양자화 레벨로 제공됩니다:
| 양자화 | 품질 | 크기 | 속도 |
|---|---|---|---|
| Q2_K | 낮음 | 가장 작음 | 가장 빠름 |
| Q4_K_M | 좋음 | 중간 | 빠름 |
| Q5_K_M | 더 좋음 | 더 큼 | 보통 |
| Q8_0 | 높음 | 큼 | 더 느림 |
| F16 / F32 | 최고 | 가장 큼 | 가장 느림 |
모바일 및 VR 기기의 경우, 컴팩트 모델(1B–3B 매개변수)과 함께 더 작은 양자화(Q2_K ~ Q4_K_M)를 권장합니다. 데스크톱의 경우, 사용 가능한 RAM 및 CPU/GPU 리소스에 따라 더 큰 모델과 더 높은 양자화 레벨을 사용할 수 있습니다.
추가 리소스
- Fab에서 받기
- 제품 웹사이트
- 데모 다운로드 (Windows)
- 비디오 튜토리얼
- 플러그인 지원 및 맞춤 개발: [email protected] (팀 및 조직을 위한 맞춤형 솔루션)