Trợ lý sinh tồn offline chạy từ USB, dùng LLM cục bộ và Kiwix
Một dự án mã nguồn mở mang tên Survival AI (IA da Sobrevivência) cung cấp trợ lý sinh tồn hoạt động 100% không cần internet trên Windows, Linux và macOS. Công cụ kết hợp mô hình ngôn ngữ lớn (LLM) chạy cục bộ với thư viện Kiwix để trả lời câu hỏi kèm trích dẫn nguồn, và có thể mang theo trên một chiếc USB.

Khi internet, điện lưới và các dịch vụ đều sụp đổ, một chiếc laptop hay thậm chí một USB vẫn có thể là công cụ cứu mạng. Đó là ý tưởng đằng sau Survival AI (IA da Sobrevivência) — dự án trợ lý sinh tồn hoạt động hoàn toàn ngoại tuyến trên Windows, Linux và macOS, được cộng đồng công nghệ chú ý trên Hacker News.
Điểm đáng chú ý là cách dự án kết hợp hai mảnh ghép đã quen thuộc trong thế giới phần mềm tự do: mô hình ngôn ngữ lớn (LLM) chạy cục bộ và thư viện tri thức offline Kiwix.
Bộ công cụ gồm những gì?
Kit được thiết kế để vẫn hoạt động khi không còn kết nối, gồm bốn thành phần chính:
- Hướng dẫn thực hành có trích dẫn nguồn (tiếng Anh, Bồ Đào Nha, Tây Ban Nha) về nước, lửa, chỗ trú ẩn, lương thực, làm vườn và chăn nuôi, hái lượm/câu cá/săn bắn, sơ cứu và y tế, vệ sinh và tự làm xà phòng, cồn (lên men, chưng cất, sát trùng và nhiên liệu), điện mặt trời, radio và định vị, dụng cụ và nút thắt, sức khỏe tinh thần và cộng đồng, cùng danh sách kiểm tra cho 72 giờ và 1 năm.
- AI cục bộ trả lời câu hỏi bằng ngôn ngữ tự nhiên, có trích nguồn, chạy trên chính máy của người dùng thông qua llama.cpp hoặc Ollama — không có dữ liệu nào được gửi lên internet.
- Thư viện Kiwix offline: Wikipedia y khoa, các cẩm nang hậu thảm họa, Where There Is No Doctor, wikiHow, iFixit… và AI cũng tìm kiếm trong các nguồn này.
- Giao diện web mở trong trình duyệt, có thể chia sẻ qua mạng nội bộ để điện thoại khác kết nối qua Wi-Fi dù không có internet.
- Chế độ không dùng AI: ngay cả khi thiếu mô hình, việc tra cứu hướng dẫn vẫn chạy trên bất kỳ máy tính nào có Python.
Cách hoạt động
Về cơ bản, hệ thống chạy một quy trình tìm kiếm kết hợp rồi mới đưa cho mô hình ngôn ngữ trả lời:
Câu hỏi → tìm trong hướng dẫn của kit (BM25) → tìm trong Kiwix (.zim) → mô hình ngôn ngữ cục bộ → câu trả lời kèm nguồn [1] [2]
BM25 là thuật toán xếp hạng tài liệu theo mức độ liên quan với từ khóa truy vấn, hoạt động tốt mà không cần huấn luyện. Nếu không có mô hình, hệ thống chỉ hiển thị các đoạn văn liên quan nhất. Thư mục knowledge/extra/ cho phép người dùng bổ sung tài liệu .md hoặc .txt của riêng mình (công thức gia đình, bản đồ địa phương, danh bạ, hướng dẫn sử dụng thiết bị) để AI lập chỉ mục và trích dẫn.
Chuẩn bị và sử dụng
Dự án dùng Python chuẩn, không cần pip install. Người dùng clone kho mã nguồn, sau đó chạy script chuẩn bị (preparar-kit.bat / .command / .sh) một lần khi còn mạng. Script này hỏi ba lựa chọn:
- Mô hình AI:
leve(nhẹ, 1 GB, 4 GB RAM),padrao(mặc định, 2 GB, 8 GB RAM — được khuyến nghị) hoặcforte(mạnh, 4,7 GB, 16 GB RAM). - Thư viện Kiwix:
minimo(~3–5 GB),recomendado(~25–40 GB) hoặccompleto(hơn 100 GB, toàn bộ Wikipedia). - Hệ điều hành: chỉ máy hiện tại, hoặc cả Windows + Linux + macOS cho một kit USB dùng chung.
- Python di động: để kit mở được trên máy chưa cài Python.
Sau đó người dùng khởi chạy bằng iniciar.bat, iniciar.command hoặc iniciar.sh, trình duyệt mở http://127.0.0.1:8090. Toàn bộ thư mục có thể chép sang USB định dạng exFAT — định dạng hỗ trợ cả ba hệ điều hành và cho phép tệp lớn hơn 4 GB.
Dự án cũng có chế độ dòng lệnh: chat để trò chuyện trong terminal, ask để hỏi trực tiếp (ví dụ "how do I make oral rehydration solution?"), search để tra cứu, status để kiểm tra, và start --host 0.0.0.0 để chia sẻ qua mạng nội bộ. Với Ollama, chỉ cần chạy ollama pull qwen2.5:3b là hệ thống tự nhận diện; các máy chủ tương thích OpenAI cục bộ như LM Studio, llamafile, KoboldCpp hay Jan cũng dùng được qua cấu hình llm_url.
Yêu cầu cấu hình
- Tối thiểu (chỉ tìm kiếm): máy tính có Python 3.8+.
- Có AI: 4 GB RAM (mô hình nhẹ), khuyến nghị 8 GB; CPU x86-64 hỗ trợ AVX2 hoặc Apple Silicon/ARM64. Không cần GPU.
- Dung lượng: từ 3 GB (kit tối giản) đến hơn 100 GB (kit đầy đủ).
Giấy phép và lưu ý
Mã nguồn dùng giấy phép MIT, các hướng dẫn trong thư mục knowledge/ theo CC BY-SA 4.0. Mô hình, Kiwix, llama.cpp và các tệp ZIM tải về có giấy phép riêng; mô hình mặc định Qwen2.5 3B dùng Qwen Research License, nên nếu dùng cho mục đích thương mại cần chọn leve hoặc forte (Apache 2.0).
Dự án cũng nêu rõ: đây là nội dung mang tính giáo dục, không thay thế bác sĩ, lực lượng cứu hỏa hay dịch vụ khẩn cấp. Các hướng dẫn y tế dựa trên khuyến nghị công khai của WHO, Hội Chữ thập đỏ/IFRC, AHA, CDC, Hesperian… được trích dẫn trong từng mục.
Góc nhìn
Với lập trình viên và kỹ sư Việt Nam, dự án này là một ví dụ thực tế về kiến trúc RAG (Retrieval-Augmented Generation) chạy hoàn toàn cục bộ: tìm kiếm BM25 trên tài liệu nội bộ, rồi mới đưa ngữ cảnh cho LLM trả lời kèm trích dẫn. Cách tiếp cận này có thể áp dụng cho các tình huống doanh nghiệp thiếu hạ tầng đám mây, hoặc nơi dữ liệu không được phép ra khỏi máy — miễn là chấp nhận giới hạn tài nguyên phần cứng ở mức 4–8 GB RAM và CPU không có GPU.
Ở góc độ khác, việc đóng gói Python di động, mô hình và dữ liệu vào một USB exFAT cho thấy mô hình ngôn ngữ nhỏ gọn đang đủ thực dụng để chạy offline trong những môi trường mất kết nối. Với các tổ chức hoạt động ở vùng sâu vùng xa hoặc hay gặp sự cố hạ tầng, đây là hướng triển khai đáng tham khảo, dù cần cân nhắc kỹ dung lượng lưu trữ và thời gian chuẩn bị kit.
Nguồn: github.com · Quy trình biên tập


