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 khi chạy. Nó hỗ trợ tệp mô hình GGUF và cung cấp đầy đủ API Blueprint để 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 các callback của 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
- Khả năng suy luận ngoại tuyến hoàn toàn: Không cần dịch vụ đám mây hoặc khóa API khi chạy
- Hỗ trợ mô hình GGUF: Tải bất kỳ mô hình nào ở định dạng GGUF (Llama, Mistral, Phi, Gemma, Qwen, v.v.)
- llama.cpp cập nhật mới 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, đảm bảo 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, cùng 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 (lựa chọn thả xuống trong Blueprints)
- Tải xuống từ URL và tải tự động
- Chỉ tải xuống để tiền lưu trữ các mô hình
- Truyền phát theo từng token: Nhận mỗi token khi nó được tạo ra để hiển thị thời gian thực
- Các nút Blueprint không đồng bộ: Các nút 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, hình phạt lặp lại, chuyển lớp GPU sang thiết bị ngoại vi, kích thước ngữ cảnh, hạt giống, số lượng luồng và lời nhắc hệ thống
- Quản lý hội thoại: Hội thoại đa lượt với khả năng đặt lại ngữ cảnh, lưu/tải xuống đĩa, bản sao lưu trong bộ nhớ và tóm tắt tự động cho các cuộc trò chuyện kéo dài
- Trình quản lý mô hình trong trình chỉnh sửa: Duyệt, tải xuống, nhập, xóa và kiểm tra các mô hình trực tiếp trong cài đặt dự án
- ** đóng gói đa nền tảng**: Các mô hình được đóng gói cùng dự án của bạn thông qua giai đ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 qua danh mục các mô hình đã định nghĩa sẵn, tải chúng xuống hoặc nhập các tệp GGUF của riêng bạn
- Tải mô hình khi 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) cùng 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 sẽ được phát lại thông 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 cung cấp cho các hệ thống khác
Tất cả các lần chạy suy luận đều được thực hiện trên một luồng nền chuyên dụng. Các callback (tạo token, hoàn tất, lỗi) được kích hoạt trên luồng trò chơi, cho phép bạn 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
- Trò chuyện trong game và trợ lý: Hỏi đáp, hệ thống hỗ trợ, hướng dẫn động
- Đối thoại NPC: NPC trò chuyện với bộ nhớ bền vững theo từng nhân vật sử dụng bản ghi cuộc hội thoại
- Hệ thống nhập vai và kể chuyện kéo dài: Tự động tóm tắt giúp giữ các cuộc hội thoại nhiều giờ nằm trong giới hạn ngữ cảnh mà không mất các thông tin quan trọng
- Nội dung thủ tục: Tạo mô tả nhiệm vụ, lịch sử vật phẩm, cây đối thoại ngay lập tức
- Ứ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ó kết nối mạng
Lưu trữ và đóng gói mô hình
Các mô hình được lưu 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 Không Phải Tài Nguyên Bổ Sung Để Sao Chép (DirectoriesToAlwaysStageAsNonUFS) để các tệp mô hình được đóng gói cùng với dự án đã đóng gói của bạn và vẫn có thể truy cập được qua I/O tệp tiêu chuẩn tại thời điểm chạy.
Mỗi mô hình cũng có một tệp .json đi kèm 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 này hoạt động với mọi mô hình ở định dạng GGUF. Trình chỉnh sửa cung cấp danh mục các mô hình được xác định trước phổ biến để tải xuống chỉ bằng 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 họ 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 nữa
Lượng tử hóa
Các mô hình có nhiều mức lượng 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 | Điều độ |
| 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, các mức lượng tử hóa nhỏ hơn (Q2_K đến Q4_K_M) cùng các mô hình gọn nhẹ (1B–3B tham số) được khuyến nghị. Đố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à các mức lượng tử hóa cao hơn tùy thuộc vào RAM và tài nguyên CPU/GPU khả dụng.
Tài nguyên bổ sung
- Tải xuống trên Fab
- Trang web sản phẩm
- Tải xuống Demo (Windows)
- Hướng dẫn video
- Hỗ trợ Plugin & Phát triển Tùy chỉnh: [email protected] (giải pháp tùy chỉnh cho các nhóm và tổ chức)