Cách chạy một mô hình ngôn ngữ lớn (LLM) trên Linux

Các mô hình ngôn ngữ lớn (Large Language Model - LLM) có khả năng cách mạng hóa cách bạn sống và làm việc, đồng thời có thể tổ chức những cuộc hội thoại và trả lời các câu hỏi với mức độ chính xác khác nhau.

Để sử dụng một tài khoản, bạn thường cần có tài khoản với nhà cung cấp LLM và đăng nhập qua trang web hoặc ứng dụng chuyên dụng. Nhưng bạn có biết rằng bạn có thể chạy mô hình ngôn ngữ lớn của riêng mình hoàn toàn ngoại tuyến trên Linux không?

Tại sao lại chạy một mô hình ngôn ngữ lớn trên Linux?

3 con lạc đà không bướu
3 con lạc đà không bướu

Ngày nay, các mô hình ngôn ngữ lớn (LLM) có ở khắp mọi nơi và có thể xử lý ngôn ngữ tự nhiên cũng như đưa ra những phản hồi thích hợp có thể đánh lừa bạn nghĩ rằng con người đang trả lời. Microsoft đang tung ra phiên bản Bing mới được hỗ trợ bởi AI, trong khi Bard của Alphabet hiện là một phần không thể thiếu trong các tìm kiếm của Google.

Ngoài các công cụ tìm kiếm, bạn có thể sử dụng cái gọi là "AI chatbot" để trả lời các câu hỏi, sáng tác thơ hoặc thậm chí làm bài tập về nhà cho bạn.

Nhưng khi truy cập LLM trực tuyến, bạn phụ thuộc vào nhà cung cấp bên thứ ba - họ có thể yêu cầu trả phí bất kỳ lúc nào.

Bạn cũng có thể bị hạn chế sử dụng. Ví dụ, yêu cầu OpenAI viết một tiểu thuyết khiêu dâm dài 6.000 từ lấy bối cảnh ở Đức Quốc xã và bạn sẽ nhận được phản hồi "Xin lỗi, nhưng tôi sẽ không tạo câu chuyện đó cho bạn."

Mọi thứ bạn nhập vào LLM trực tuyến đều được sử dụng để đào tạo thêm cho mô hình và dữ liệu mà bạn muốn giữ bí mật có thể bị tiết lộ trong tương lai như một phần câu trả lời cho câu hỏi của người khác. Bạn cũng có thể không tiếp cận được dịch vụ vì hệ thống bị quá tải người dùng và yêu cầu đăng ký.

Dalai là một triển khai mã nguồn mở và miễn phí của Meta LLaMa LLM và Stanford Alpaca. Nó sẽ chạy thoải mái trên phần cứng khiêm tốn, cung cấp một giao diện web tiện dụng và một loạt các mẫu lời nhắc - vì vậy bạn có thể hỏi bất cứ điều gì mình muốn mà không sợ quản trị viên đóng tài khoản của bạn, LLM từ chối trả lời hoặc kết nối của bạn có vấn đề.

Khi bạn cài đặt LLM cục bộ trên Linux, nó là của bạn và bạn có thể sử dụng nó theo bất kỳ cách nào mình muốn.

Cách cài đặt Dalai trên Linux

Cách dễ nhất để cài đặt Dalai trên Linux là sử dụng Docker và Docker Compose. Nếu bạn chưa có những thứ này, hãy tham khảo hướng dẫn của Quantrimang.com về cách cài đặt Docker và Docker Compose.

Bằng cách này, bạn đã sẵn sàng để bắt đầu cài đặt Dalai. Sao chép kho lưu trữ GitHub của Dalai và sử dụng lệnh cd để di chuyển vào đó:

git clone https://github.com/cocktailpeanut/dalai.git && cd dalai

Để khởi động và chạy Dalai với giao diện web, trước tiên, hãy tạo file Docker Compose:

docker-compose build

Docker Compose sẽ tải xuống và cài đặt Python 3.11, Node Version Manager (NVM) và Node.js.

Ở giai đoạn 7/9, bản build sẽ bị đóng băng khi Docker Compose tải xuống Dalai. Đừng lo lắng! Hãy kiểm tra việc sử dụng băng thông của bạn để trấn an bản thân rằng có điều gì đó đang diễn ra.

Cuối cùng, bạn sẽ được đưa trở lại Command Prompt.

Mô hình Dalai và LLaMa/Alpaca yêu cầu nhiều bộ nhớ để chạy. Mặc dù không có bất kỳ thông số kỹ thuật chính thức nào, nhưng tốt nhất là 4GB cho model 7B, 8GB cho model 13B, 16GB cho model 30B và 32GB cho model 65B.

Các model Alpaca tương đối nhỏ, với model 13B đạt mức khiêm tốn 7,6GB, nhưng trọng lượng LLaMA có thể rất lớn: Tải xuống 13B tương đương có dung lượng 60,21GB và model 65B sẽ chiếm nửa terabyte trên ổ cứng của bạn.

Dalai đang tải xuống model Alpaca 7B
Dalai đang tải xuống model Alpaca 7B

Quyết định model nào phù hợp nhất với tài nguyên của bạn và sử dụng lệnh sau để cài đặt model đó:

docker-compose run dalai npx dalai alpaca install 13B

Hoặc:

docker-compose run dalai npx dalai llama install 13B

Cảnh báo: Có khả năng các mô hình được tải xuống qua Dalai có thể bị hỏng. Nếu rơi vào trường hợp này, thay vào đó hãy lấy chúng từ Hugging Face.

Sau khi bạn quay lại Command Prompt, hãy hiển thị Docker Compose ở chế độ Detached:

docker-compose up -d

Kiểm tra xem container có chạy đúng không với:

docker-compose ps

Nếu mọi thứ hoạt động bình thường, hãy mở trình duyệt web và nhập localhost:3000 vào thanh địa chỉ.

Tận hưởng mô hình ngôn ngữ lớn của riêng bạn trên Linux

Khi giao diện web mở ra, bạn sẽ thấy một hộp văn bản, trong đó bạn có thể viết lời nhắc của mình.

Viết lời nhắc hiệu quả rất khó và những nhà phát triển của Dalai đã cung cấp một loạt các mẫu một cách hữu ích để giúp bạn nhận được phản hồi hữu ích từ Dalai.

Đó là AI-Dialog, Chatbot, Default, Instruction, Rewrite, TranslateTweet-sentiment.

Như bạn mong đợi, các template AI-DialogChatbot được cấu trúc theo cách cho phép bạn tổ chức một cuộc trò chuyện với LLM. Sự khác biệt chính giữa hai loại này là chatbot được cho là "rất thông minh", trong khi AI-Dialog "hữu ích, tốt, nghe lời, trung thực và biết giới hạn của chính mình". Tất nhiên, đây là "AI" của bạn và nếu điều đó làm bạn hài lòng, bạn có thể thay đổi lời nhắc nếu muốn.

Bài viết đã thử nghiệm chức năng Translate bằng cách sao chép đoạn mở đầu của một câu chuyện thời sự của BBC và yêu cầu Dalai dịch nó sang tiếng Tây Ban Nha. Bản dịch rất tốt và khi chạy nó qua Google Dịch để chuyển lại sang tiếng Anh, nội dung khá dễ đọc và lặp lại chính xác các sự kiện cũng như ngữ điệu của bản gốc.

Tương tự như vậy, template Rewrite đưa văn bản vào phần mở đầu của một bài báo mới một cách thuyết phục.

Lời nhắc DefaultInstruction được cấu trúc để giúp bạn đặt câu hỏi hoặc hướng dẫn trực tiếp cho Dalai.

Độ chính xác trong phản hồi của Dalai sẽ khác nhau rất nhiều tùy thuộc vào model bạn đang sử dụng. Model 30B sẽ hữu ích hơn rất nhiều so với model 7B. Nhưng ngay cả khi đó, bạn vẫn được nhắc nhở rằng LLM chỉ đơn giản là những hệ thống tinh vi để đoán từ tiếp theo trong câu.

Một bản tóm tắt LLM được tạo
Một bản tóm tắt LLM được tạo

Cả model Alpaca 7B và 13B đều không thể cung cấp một bản tóm tắt chính xác dài 200 từ về truyện ngắn "Cat in the Rain" của Ernest Hemingway, và cả hai đều tạo nên những cốt truyện và chi tiết đầy thuyết phục về nội dung của câu chuyện.

Bằng cách chạy một mô hình ngôn ngữ lớn trên Linux của riêng mình, bạn không phải chịu sự giám sát hoặc nguy cơ không tiếp cận được dịch vụ. Bạn có thể sử dụng nó theo bất kỳ cách nào mình thấy phù hợp mà không sợ phải chịu hậu quả do vi phạm chính sách nội dung của công ty cung cấp dịch vụ.

Nếu tài nguyên máy tính của bạn ít, bạn thậm chí có thể chạy LLM cục bộ trên Raspberry Pi khiêm tốn.

Thứ Hai, 22/05/2023 10:38
51 👨 365
0 Bình luận
Sắp xếp theo
    ❖ Linux