1. Giới thiệu:

Các mô hình ngôn ngữ lớn (LLMs) đang làm thay đổi nhiều ngành công nghiệp. Từ các chatbot hỗ trợ khách hàng đến các công cụ phân tích dữ liệu tinh vi, khả năng của công nghệ mạnh mẽ này đang thay đổi cảnh quan của tương tác kỹ thuật số và tự động hóa.

Hình 1. Mô hình ngôn ngữ lớn đang là xu hướng công nghệ hiện đại. Nguồn ảnh.

 

Tuy nhiên, ứng dụng thực tế của các LLMs có thể bị hạn chế bởi nhu cầu về máy tính công suất cao hoặc sự cần thiết cho thời gian phản hồi nhanh. Các mô hình này thường yêu cầu phần cứng tiên tiến, điều này có thể làm khó khăn trong việc áp dụng chúng trong môi trường thực tế.

 

 

Hình 2. Triển khai mô hình LLaMa 65.2B yêu cầu tới 260.8 GB RAM. Nguồn.

Trong bối cảnh đó, một nhóm nghiên cứu đã viết lại code inference của LLaMa với ngôn ngữ C++, trong đó gồm nhiều kỹ thuật tối ưu do Facebook Meta phát triển. Đó gọi là llama.cpp [1], với những khả năng đáng kinh ngạc:

 

2. llama.cpp 

LLaMa.cpp được phát triển bởi Georgi Gerganov. Nó thực hiện kiến trúc LLaMa của Meta trong C/C++ hiệu quả, và đây là một trong những cộng đồng mã nguồn mở năng động nhất xung quanh suy luận LLM với hơn 400 người đóng góp, hơn 58.000 sao trên kho lưu trữ GitHub chính thức với những khả năng:

 

Trong đó, điểm đặc biệt chính của llama.cpp là phương thức lượng tử hóa mô hình (model quantization):

 

Hình 3, 4: Việc lượng tử hóa mô hình giúp giảm thiểu lượng RAM cần thiết và tốc độ thực thi trong quá trình triển khai LLM. Nguồn.

 

 

Để bắt đầu sử dụng llama.cpp, hãy đọc thêm những nguồn tài liệu sau nhé:

 

 

NGUỒN THAM KHẢO

[1] https://github.com/ggerganov/llama.cpp

[2] https://twitter.com/rgerganov/status/1635604465603473408

[3] https://simonwillison.net/2023/Mar/11/llama/

[4] https://twitter.com/miolini/status/1634982361757790209