Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến

Đoàn Thúy Hà

Editor
Thành viên BQT
Mới đây, Microsoft đã mã nguồn mở một khung hệ thống có thể thêm một quy trình RLHF hoàn chỉnh để đào tạo mô hình - DeepSpeed Chat.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Nói cách khác, các mô hình giống như ChatGPT chất lượng cao ở mọi kích cỡ hiện có sẵn trong tầm tay bạn!
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Địa chỉ dự án: https://github.com/microsoft/DeepSpeed

Mở khóa hàng trăm tỷ ChatGPT chỉ bằng một cú nhấp chuột, dễ dàng tiết kiệm gấp 15 lần số tiền​

Như chúng ta đã biết, do OpenAI quá mở nên cộng đồng mã nguồn mở đã tung ra các mô hình LLaMa, Alpaca, Vicuna, Databricks-Dolly và các mô hình khác nhằm cho phép nhiều người sử dụng mô hình giống ChatGPT hơn.
Tuy nhiên, do chưa có hệ thống thang điểm RLHF đầu cuối nên việc huấn luyện các mô hình giống ChatGPT còn rất khó khăn. Sự xuất hiện của DeepSpeed Chat chỉ là bổ khuyết cho "lỗi" này.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Hơn nữa, chi phí DeepSpeed Chat đã giảm đáng kể.
Trước đây, các thiết lập đa GPU đắt tiền nằm ngoài tầm với của nhiều nhà nghiên cứu và ngay cả khi có quyền truy cập vào các cụm đa GPU, các phương pháp hiện tại không thể đủ khả năng đào tạo hàng trăm tỷ mô hình ChatGPT tham số.
Giờ đây, với 1620 đô la, bạn có thể huấn luyện mẫu OPT-66B trong 2,1 ngày với động cơ lai DeepSpeed-HE.
Với hệ thống đa nút, đa GPU, DeepSpeed-HE có thể huấn luyện mô hình OPT-13B trong 1,25 giờ với giá 320 đô la và mô hình OPT-175B trong vòng chưa đầy một ngày với giá 5.120 đô la.
Elvis, một cựu chuyên gia Meta AI, đã hào hứng chuyển tiếp, nói rằng đây là một sự kiện lớn và bày tỏ sự tò mò về cách DeepSpeed Chat so sánh với ColossalChat.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Tiếp theo, hãy xem nó hoạt động như thế nào.
Sau khi đào tạo DeepSpeed-Chat, phiên bản 1,3 tỷ tham số của "ChatGPT" đã hoạt động rất tốt trong phiên hỏi đáp. Bạn không chỉ có thể hiểu được ngữ cảnh của câu hỏi mà các câu trả lời bạn đưa ra cũng rất tốt.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Trong nhiều vòng đối thoại, hiệu suất của phiên bản 1,3 tỷ tham số này của "ChatGPT" đã hoàn toàn vượt qua ấn tượng vốn có của thang đo này.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến

Một đoạn mã để tạo ChatGPT đầu tiên của bạn​

Tất nhiên, trước khi trải nghiệm, bạn cần cấu hình môi trường:
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Một tách cà phê, sau khi đào tạo phiên bản 1,3 tỷ tham số của ChatGPT
Ngoài ra, hãy thử đào tạo một "đồ chơi nhỏ" với DeepSpeed-Chat nếu bạn chỉ có khoảng 1-2 giờ để uống cà phê hoặc nghỉ trưa.
Nhóm đã đặc biệt chuẩn bị một ví dụ đào tạo cho mô hình 1.3B, có thể thử nghiệm trên GPU cấp độ người tiêu dùng. Trên hết, khi bạn quay lại sau giờ nghỉ trưa, mọi thứ đã sẵn sàng.
GPU NVIDIA A6000 dành cho người tiêu dùng với bộ nhớ video 48GB:
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Một Node GPU, nửa ngày lấy 13 tỷ thông số
Nếu bạn chỉ có nửa ngày và một nút máy chủ, thì bạn có thể sử dụng OPT-13B được đào tạo trước làm mô hình diễn viên và OPT-350M làm mô hình phần thưởng để tạo mô hình giống như ChatGPT với 13 tỷ tham số.
Nút DGX đơn, được trang bị 8 GPU NVIDIA A100-40G:
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Giải pháp cloud siêu tiết kiệm, đào tạo mô hình 66 tỷ tham số
Nếu bạn có quyền truy cập vào một cụm nhiều nút hoặc tài nguyên đám mây và muốn đào tạo một mô hình lớn hơn, chất lượng cao hơn. Sau đó, chỉ cần nhập kích thước mô hình bạn muốn (chẳng hạn như 66B) và số lượng GPU (chẳng hạn như 64) dựa trên dòng mã sau.
8 nút DGX, mỗi nút được trang bị 8 GPU NVIDIA A100-80G:
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Cụ thể, đối với các mô hình có quy mô và cấu hình phần cứng khác nhau, thời gian và chi phí cần thiết cho hệ thống DeepSpeed-RLHF như sau:
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến

DeepSpeed Chat là gì?​

DeepSpeed Chat là một khung hệ thống chung cho phép đào tạo RLHF từ đầu đến cuối của các mô hình giống ChatGPT, do đó giúp chúng tôi tạo các mô hình giống ChatGPT chất lượng cao của riêng mình.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
DeepSpeed Chat có ba chức năng cốt lõi sau:
1. Đơn giản hóa việc đào tạo mô hình loại ChatGPT và củng cố kinh nghiệm lý luận
Các nhà phát triển có thể triển khai nhiều bước đào tạo chỉ với một tập lệnh và sau khi hoàn thành, họ có thể sử dụng API suy luận để thử nghiệm tương tác đàm thoại.
2. Mô-đun DeepSpeed-RLHF
DeepSpeed-RLHF tái tạo chế độ đào tạo trong bài báo InstructGPT và cung cấp các chức năng trộn và trừu tượng hóa dữ liệu để hỗ trợ các nhà phát triển sử dụng nhiều nguồn dữ liệu từ các nguồn khác nhau để đào tạo.
3. Hệ thống DeepSpeed-RLHF
Nhóm đã tích hợp công cụ đào tạo và công cụ suy luận của DeepSpeed thành một công cụ lai hợp nhất (DeepSpeed Hybrid Engine hoặc DeepSpeed-HE) để đào tạo RLHF. Vì DeepSpeed-HE có thể chuyển đổi liền mạch giữa chế độ suy luận và đào tạo nên nó có thể tận dụng các tối ưu hóa khác nhau từ DeepSpeed-Inference.
Hệ thống DeepSpeed-RLHF có hiệu quả vô song trong đào tạo quy mô lớn, giúp đào tạo RLHF phức tạp trở nên nhanh chóng, tiết kiệm và dễ dàng mở rộng quy mô:
Hiệu quả và kinh tế:
DeepSpeed-HE nhanh hơn 15 lần so với các hệ thống hiện có, giúp đào tạo RLHF nhanh chóng và giá cả phải chăng.
Ví dụ: DeepSpeed-HE có thể huấn luyện mô hình OPT-13B chỉ trong 9 giờ và mô hình OPT-30B trong 18 giờ trên đám mây Azure. Hai bài tập này lần lượt có giá dưới 300 đô la và 600 đô la.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Khả năng mở rộng tuyệt vời:
DeepSpeed-HE có thể hỗ trợ đào tạo các mô hình với hàng trăm tỷ tham số và thể hiện khả năng mở rộng tuyệt vời trên các hệ thống đa GPU đa nút.
Do đó, ngay cả một mô hình có 13 tỷ tham số cũng có thể được đào tạo chỉ trong 1,25 giờ. Đối với một mô hình có 175 tỷ tham số, việc đào tạo với DeepSpeed-HE chỉ mất chưa đầy một ngày.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Thực hiện phổ biến đào tạo RLHF:
Chỉ với một GPU duy nhất, DeepSpeed-HE có thể hỗ trợ đào tạo các mô hình với hơn 13 tỷ thông số. Điều này cho phép các nhà khoa học và nhà nghiên cứu dữ liệu không thể sử dụng các hệ thống đa GPU có thể dễ dàng tạo không chỉ các mô hình RLHF nhẹ mà còn cả các mô hình lớn và mạnh mẽ cho các tình huống sử dụng khác nhau.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Hoàn thành quy trình đào tạo RLHF
Để cung cấp trải nghiệm đào tạo liền mạch, chúng tôi tuân theo InstructGPT và đưa quy trình đào tạo từ đầu đến cuối hoàn chỉnh vào DeepSpeed-Chat.
Sơ đồ quá trình đào tạo RLHF của DeepSpeed-Chat, bao gồm một số chức năng tùy chọn
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Quá trình bao gồm ba bước chính:

Bước 1:​

Tinh chỉnh có giám sát (SFT), sử dụng phản hồi của con người được tuyển chọn để tinh chỉnh mô hình ngôn ngữ được đào tạo trước cho nhiều loại truy vấn.

Bước 2:​

Tinh chỉnh mô hình phần thưởng, đào tạo một mô hình phần thưởng (RW) riêng biệt (thường nhỏ hơn SFT) trên tập dữ liệu chứa nhiều câu trả lời do con người chấm điểm cho cùng một truy vấn.

Bước 3:​

RLHF, trong bước này, mô hình SFT được tinh chỉnh thêm từ phản hồi phần thưởng của mô hình RW bằng cách sử dụng thuật toán tối ưu hóa chính sách gần đúng (PPO).
Ở bước 3, các nhà nghiên cứu cũng cung cấp thêm 2 chức năng giúp nâng cao chất lượng của mô hình:
- Bộ sưu tập Đường trung bình trượt hàm mũ (EMA), với khả năng chọn điểm kiểm tra dựa trên EMA để đánh giá cuối cùng.
- Đào tạo kết hợp, kết hợp mục tiêu trước khi đào tạo (tức là dự đoán từ tiếp theo) với mục tiêu PPO để ngăn chặn hồi quy hiệu suất trên các điểm chuẩn công cộng, chẳng hạn như SQuAD2.0.
Hai tính năng đào tạo EMA và đào tạo kết hợp thường bị bỏ qua bởi các khung nguồn mở khác vì chúng không cản trở việc đào tạo.
Tuy nhiên, theo InstructGPT, các điểm kiểm tra EMA có xu hướng cung cấp chất lượng phản hồi tốt hơn so với các mô hình đào tạo cuối cùng truyền thống và đào tạo kết hợp có thể giúp các mô hình duy trì khả năng giải quyết vấn đề cơ bản trước khi đào tạo.
Do đó, các nhà nghiên cứu cung cấp các chức năng này cho người dùng để họ có thể có được đầy đủ trải nghiệm đào tạo được mô tả trong InstructGPT.
Ngoài tính nhất quán cao với bài báo InstructGPT, các nhà nghiên cứu còn cung cấp các chức năng cho phép các nhà phát triển sử dụng nhiều nguồn dữ liệu khác nhau để huấn luyện các mô hình RLHF của riêng họ:
Khả năng trừu tượng hóa và trộn dữ liệu:
DeepSpeed-Chat được trang bị (1) lớp tập dữ liệu trừu tượng để thống nhất định dạng của các tập dữ liệu khác nhau; và (2) chức năng tách/trộn dữ liệu để nhiều tập dữ liệu được trộn đúng cách và sau đó thực hiện phân đoạn trong 3 giai đoạn huấn luyện.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến

Động cơ lai DeepSpeed​

Bước 1 và 2 của quy trình RLHF có hướng dẫn, tương tự như tinh chỉnh thông thường của các mô hình lớn, đạt được quy mô và tốc độ bằng cách kết hợp tối ưu hóa dựa trên Zero với các chiến lược song song linh hoạt trong đào tạo DeepSpeed.
Và bước 3 của quy trình là phần phức tạp nhất về tác động đến hiệu suất.
Mỗi lần lặp lại cần xử lý hiệu quả hai giai đoạn: a) giai đoạn suy luận, để tạo mã thông báo/trải nghiệm, để tạo đầu vào cho đào tạo; b) giai đoạn đào tạo, để cập nhật trọng số mô hình phần thưởng và diễn viên, cũng như các tương tác và lập lịch trình của chúng.
Nó đưa ra hai khó khăn chính: (1) chi phí bộ nhớ, vì nhiều mô hình SFT và RW cần được chạy trong suốt giai đoạn thứ ba; (2) giai đoạn tạo câu trả lời chậm hơn và sẽ chậm lại đáng kể nếu không được tăng tốc đúng cách trong suốt giai đoạn thứ ba.
Ngoài ra, hai chức năng quan trọng được các nhà nghiên cứu thêm vào trong giai đoạn thứ ba - thu thập đường trung bình động hàm mũ (EMA) và đào tạo kết hợp, sẽ phát sinh thêm chi phí đào tạo và bộ nhớ.
Để đáp ứng những thách thức này, các nhà nghiên cứu đã kết hợp toàn bộ khả năng của hệ thống đào tạo và lý luận DeepSpeed thành một cơ sở hạ tầng thống nhất, cụ thể là động cơ lai (Hybrid Engine).
Nó tận dụng công cụ DeepSpeed ban đầu cho chế độ đào tạo nhanh trong khi dễ dàng áp dụng công cụ suy luận DeepSpeed cho chế độ tạo/đánh giá, cung cấp hệ thống đào tạo nhanh hơn cho đào tạo RLHF giai đoạn ba.
Như được hiển thị trong hình bên dưới, quá trình chuyển đổi giữa công cụ đào tạo và suy luận DeepSpeed diễn ra liền mạch: bằng cách bật các chế độ đào tạo và đánh giá điển hình cho mô hình diễn viên, DeepSpeed chọn các tối ưu hóa khác nhau khi chạy quy trình đào tạo và suy luận để đạt được Tốc độ chạy nhanh hơn mô hình và tăng thông lượng của toàn bộ hệ thống.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Thiết kế động cơ lai DeepSpeed để tăng tốc phần tốn nhiều thời gian nhất của quy trình RLHF
Trong quá trình thực hiện suy luận của giai đoạn tạo trải nghiệm của đào tạo RLHF, công cụ lai DeepSpeed sử dụng hệ thống quản lý bộ nhớ nhẹ để xử lý bộ đệm KV và kết quả trung gian, đồng thời sử dụng lõi CUDA suy luận được tối ưu hóa cao và tính toán song song tensor, tương thích với hiện có So với giải pháp, thông lượng (số lượng mã thông báo mỗi giây) đã được cải thiện rất nhiều.
Trong quá trình đào tạo, Công cụ lai kích hoạt các kỹ thuật tối ưu hóa bộ nhớ như nhóm kỹ thuật Zero của DeepSpeed và Thích ứng bậc thấp (LoRA).
Cách các nhà nghiên cứu thiết kế và thực hiện các tối ưu hóa hệ thống này là làm cho chúng tương thích với nhau và có thể được kết hợp để mang lại hiệu quả đào tạo cao nhất dưới một động cơ lai hợp nhất.
Công cụ lai có thể thay đổi liền mạch các phân vùng mô hình trong quá trình đào tạo và suy luận để hỗ trợ suy luận song song dựa trên tensor và cơ chế phân mảnh đào tạo dựa trên Zero.
Nó cũng có thể cấu hình lại hệ thống bộ nhớ để tối đa hóa tính khả dụng của bộ nhớ trong từng chế độ.
Điều này tránh tắc nghẽn cấp phát bộ nhớ, hỗ trợ kích thước lô lớn và cải thiện đáng kể hiệu suất.
Tóm lại, Công cụ kết hợp đã vượt qua ranh giới của đào tạo RLHF hiện đại, mang lại hiệu quả hệ thống và quy mô vô song cho khối lượng công việc RLHF.

Đánh giá tác dụng​

So với các hệ thống hiện có như Colossal-AI hoặc HuggingFace-DDP, DeepSpeed-Chat có nhiều cấp độ thông lượng hơn, có khả năng đào tạo các mô hình diễn viên lớn hơn với cùng ngân sách độ trễ hoặc đào tạo các mô hình có kích thước tương tự với chi phí thấp hơn.
Ví dụ: DeepSpeed cải thiện thông lượng đào tạo RLHF hơn 10 lần trên một GPU. Trong khi cả CAI-Coati và HF-DDP đều có thể chạy mô hình 1,3B, thì DeepSpeed có thể chạy mô hình 6,5B trên cùng một phần cứng, cao hơn trực tiếp 5 lần.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Trên nhiều GPU trong một nút, DeepSpeed-Chat nhanh hơn CAI-Coati 6-19 lần về thông lượng hệ thống và HF-DDP nhanh hơn 1,4-10,5 lần.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
Theo nhóm nghiên cứu, một trong những lý do chính khiến DeepSpeed-Chat có thể đạt được kết quả xuất sắc như vậy là khả năng tăng tốc do động cơ hybrid cung cấp trong giai đoạn tạo.
Microsoft mở mã nguồn Deepspeed Chat: kỷ nguyên ChatGPT cho mọi người đã đến
 


Đăng nhập một lần thảo luận tẹt ga
Thành viên mới đăng
Top