Tổng quan

Runtime Local LLM là một plugin chạy các mô hình ngôn ngữ lớn hoàn toàn trên thiết bị bằng llama.cpp, không yêu cầu kết nối internet trong thời gian chạy. Nó hỗ trợ các tệp mô hình GGUF và cung cấp API Blueprint đầy đủ để tải mô hình, gửi tin nhắn và nhận phản hồi từng token, tất cả đều chạy trên luồng nền với callback luồng trò chơi.
Plugin hỗ trợ Windows, Mac, Linux, Android (bao gồm Meta Quest và các nền tảng dựa trên Android khác), và iOS.
Tính năng chính
- Suy luận hoàn toàn ngoại tuyến: Không cần dịch vụ đám mây hoặc khóa API trong thời gian chạy
- Hỗ trợ mô hình GGUF: Tải bất kỳ mô hình định dạng GGUF nào (Llama, Mistral, Phi, Gemma, Qwen, v.v.)
- llama.cpp cập nhật: Được cập nhật thường xuyên trên Fab để theo kịp các bản phát hành của llama.cpp, do đó luôn hỗ trợ các định dạng mô hình GGUF mới nhất
- Tăng tốc GPU: Sử dụng Vulkan trên Windows và Linux, Metal trên Mac và iOS, và CPU + intrinsics trên Android và Meta Quest
- Nhiều phương pháp tải mô hình:
- Tải từ đường dẫn tệp cục bộ
- Tải theo tên mô hình (chọn từ danh sách thả xuống trong Blueprints)
- Tải xuống từ URL và tự động tải lên
- Chỉ tải xuống để lưu trước các mô hình
- Truyền phát từng token: Nhận từng token ngay khi được sinh ra để hiển thị theo thời gian thực
- Node Blueprint bất đồng bộ: Các node có delegate đầu ra để tải, gửi tin nhắn và tải xuống
- Tham số suy luận có thể cấu hình: Nhiệt độ, Top-P, Top-K, phạt lặp, giảm tải lớp GPU, kích thước ngữ cảnh, seed, số luồng và lời nhắc hệ thống
- Quản lý hội thoại: Hội thoại nhiều lượt với đặt lại ngữ cảnh, lưu/tải lên đĩa, ảnh chụp nhanh trong bộ nhớ và tóm tắt tự động cho các cuộc trò chuyện dài
- Trình quản lý mô hình trong trình biên tập: Duyệt, tải xuống, nhập, xóa và kiểm tra mô hình trực tiếp trong cài đặt dự án
- Đóng gói đa nền tảng: Mô hình được vận chuyển cùng với dự án của bạn thông qua phân đoạn NonUFS
Cách thức hoạt động
- Quản lý mô hình trong trình chỉnh sửa: Sử dụng bảng cài đặt plugin để duyệt danh mục các mô hình được xác định trước, tải chúng xuống hoặc nhập tệp GGUF của riêng bạn
- Tải mô hình trong thời gian chạy: Gọi một trong các hàm tải (theo tệp, theo tên, theo URL hoặc theo siêu dữ liệu) với các tham số suy luận của bạn
- Gửi tin nhắn: Truyền tin nhắn người dùng đến phiên bản LLM; các token được truyền trở lại qua các delegate khi mô hình tạo ra phản hồi
- Sử dụng phản hồi: Hiển thị các token trong giao diện trò chuyện, điều khiển hội thoại NPC, tạo nội dung động hoặc đưa vào các hệ thống khác
Tất cả quá trình suy luận đều chạy trên một luồng nền chuyên dụng. Các callback (sinh token, hoàn thành, lỗi) được kích hoạt trên luồng trò chơi, vì vậy bạn có thể an toàn cập nhật giao diện người dùng và trạng thái trò chơi từ chúng.
Các trường hợp sử dụng phổ biến
- Chatbot và trợ lý trong trò chơi: Hệ thống hỏi đáp, trợ giúp, hướng dẫn động
- Hội thoại NPC: NPC có khả năng hội thoại với bộ nhớ riêng biệt theo từng nhân vật, sử dụng ảnh chụp nhanh hội thoại
- Hệ thống nhập vai và tường thuật dài hạn: Tóm tắt tự động giúp duy trì các cuộc hội thoại kéo dài nhiều giờ trong giới hạn ngữ cảnh mà không làm mất thông tin quan trọng
- Nội dung thủ tục: Tạo mô tả nhiệm vụ, truyền thuyết vật phẩm, cây hội thoại một cách linh hoạt
- Ứng dụng ưu tiên ngoại tuyến: Bất kỳ ứng dụng nào cần khả năng LLM mà không cần kết nối mạng
Lưu trữ và Đóng gói Mô hình
Các mô hình được lưu trữ dưới dạng tệp .gguf trong thư mục Content/RuntimeLocalLLM/Models của dự án. Plugin tự động cấu hình Các Thư Mục Bổ Sung Không Phải Asset Để Sao Chép (DirectoriesToAlwaysStageAsNonUFS) để các tệp mô hình được đóng gói cùng với dự án và vẫn có thể truy cập qua I/O tệp tiêu chuẩn trong thời gian chạy.
Mỗi model cũng có một tệp tin phụ .json lưu trữ siêu dữ liệu của nó (tên hiển thị, họ, biến thể, mô tả, số lượng tham số).
Các mô hình được hỗ trợ
Plugin hoạt động với bất kỳ mô hình nào ở định dạng GGUF. Trình chỉnh sửa cung cấp danh mục các mô hình phổ biến được xác định trước để tải xuống chỉ với một cú nhấp chuột và bạn có thể nhập bất kỳ tệp GGUF tùy chỉnh nào. Các dòng mô hình phổ biến bao gồm:
- Llama (Meta) — 1B, 3B, 8B và lớn hơn
- Mistral / Mixtral — 7B và lớn hơn
- Phi (Microsoft) — 2B, 3B, 4B
- Gemma (Google) — 2B, 7B
- Qwen (Alibaba) — 1.5B, 7B và lớn hơn
- TinyLlama — 1.1B
- Và nhiều mô hình cộng đồng khác
Lượng tử hóa
Các mô hình có nhiều mức lượng tử hóa khác nhau, đánh đổi giữa chất lượng với kích thước và tốc độ:
| Lượng tử hóa | Chất lượng | Size | Tốc độ |
|---|---|---|---|
| Q2_K | Thấp hơn | Nhỏ nhất | Nhanh nhất |
| Q4_K_M | Good | Trung bình | Fast |
| Q5_K_M | Tốt hơn | Lớn hơn | Trung bình |
| Q8_0 | High | Lớn | Chậm hơn |
| F16 / F32 | Cao nhất | Lớn nhất | Chậm nhất |
Đối với thiết bị di động và VR, nên sử dụng các mức lượng tử hóa nhỏ hơn (Q2_K đến Q4_K_M) với các mô hình nhỏ gọn (1B–3B tham số). Đối với máy tính để bàn, bạn có thể sử dụng các mô hình lớn hơn và mức lượng tử hóa cao hơn tùy thuộc vào RAM và tài nguyên CPU/GPU hiện có.
Tài nguyên bổ sung
- Get it on Fab
- Trang web sản phẩm
- Tải bản demo (Windows)
- Hướng dẫn bằng video
- Hỗ trợ Plugin & Phát triển tùy chỉnh: [email protected] (giải pháp phù hợp cho nhóm & tổ chức)