Trí tuệ nhân tạo
Llama 2: Một Cuộc Khám Phá Sâu Về Người Thách Đố Mở Nguồn Của ChatGPT

Các Mô Hình Ngôn Ngữ Lớn (LLM) có khả năng thực hiện các nhiệm vụ suy luận phức tạp đã thể hiện tiềm năng trong các lĩnh vực chuyên biệt như lập trình và viết sáng tạo. Tuy nhiên, thế giới của LLM không chỉ là một thiên đường plug-and-play; có những thách thức trong tính khả dụng, an toàn và nhu cầu tính toán. Trong bài viết này, chúng tôi sẽ khám phá sâu về khả năng của Llama 2, đồng thời cung cấp một hướng dẫn chi tiết để thiết lập mô hình LLM này thông qua Hugging Face và T4 GPU trên Google Colab.
Được phát triển bởi Meta với sự hợp tác của Microsoft, mô hình ngôn ngữ lớn này nhằm mục đích tái định nghĩa các lĩnh vực của trí tuệ nhân tạo tạo sinh và hiểu ngôn ngữ tự nhiên. Llama 2 không chỉ là một mô hình thống kê được đào tạo trên terabyte dữ liệu; nó là hiện thân của một triết lý. Một triết lý nhấn mạnh vào cách tiếp cận mở nguồn như xương sống của sự phát triển AI, đặc biệt là trong không gian trí tuệ nhân tạo tạo sinh.
Llama 2 và phiên bản tối ưu hóa cho hội thoại của nó, Llama 2-Chat, được trang bị lên đến 70 tỷ tham số. Chúng trải qua một quá trình tinh chỉnh được thiết kế để phù hợp chặt chẽ với sở thích của con người, khiến chúng trở nên an toàn và hiệu quả hơn so với nhiều mô hình công khai khác. Mức độ tinh chỉnh này thường được dành cho các LLM “sản phẩm” đóng, như ChatGPT và BARD, không thường có sẵn cho công chúng kiểm tra hoặc tùy chỉnh.
Khám Phá Kỹ Thuật Của Llama 2
Để đào tạo mô hình Llama 2; giống như các phiên bản trước, nó sử dụng kiến trúc transformer tự hồi quy, được tiền đào tạo trên một tập dữ liệu lớn tự giám sát. Tuy nhiên, nó thêm một lớp tinh vi bằng cách sử dụng Học Luyện Với Phản Hồi Của Con Người (RLHF) để phù hợp hơn với hành vi và sở thích của con người. Điều này tốn kém về mặt tính toán nhưng quan trọng để cải thiện an toàn và hiệu quả của mô hình.
Đào Tạo Trước & Hiệu Suất Dữ Liệu
Đổi mới cơ bản của Llama 2 nằm trong chế độ đào tạo trước. Mô hình này lấy tín hiệu từ người tiền nhiệm của nó, Llama 1, nhưng giới thiệu một số cải tiến quan trọng để nâng cao hiệu suất. Đặc biệt, tăng 40% tổng số token được đào tạo và mở rộng gấp đôi chiều dài ngữ cảnh nổi bật. Hơn nữa, mô hình này tận dụng sự chú ý của nhóm truy vấn (GQA) để tăng khả năng suy luận.
Tinh Chỉnh Có Giám Sát (SFT) & Học Luyện Với Phản Hồi Của Con Người (RLHF)
Llama-2-chat đã được tinh chỉnh nghiêm ngặt bằng cách sử dụng cả SFT và Học Luyện Với Phản Hồi Của Con Người (RLHF). Trong bối cảnh này, SFT đóng vai trò là một thành phần quan trọng của khuôn khổ RLHF, tinh chỉnh phản hồi của mô hình để phù hợp chặt chẽ với sở thích và kỳ vọng của con người.
OpenAI đã cung cấp một minh họa sâu sắc giải thích các phương pháp SFT và RLHF được sử dụng trong InstructGPT. Giống như LLaMa 2, InstructGPT cũng tận dụng các kỹ thuật đào tạo tiên tiến này để tối ưu hóa hiệu suất của mô hình.
Bước 1 trong hình ảnh dưới đây tập trung vào Tinh Chỉnh Có Giám Sát (SFT), trong khi các bước tiếp theo hoàn thành quá trình Học Luyện Từ Phản Hồi Của Con Người (RLHF).
Tinh Chỉnh Có Giám Sát (SFT) là một quá trình chuyên biệt nhằm tối ưu hóa một Mô Hình Ngôn Ngữ Lớn (LLM) đã được tiền đào tạo cho một nhiệm vụ cụ thể. Không giống như các phương pháp không giám sát, không yêu cầu xác thực dữ liệu, SFT sử dụng một tập dữ liệu đã được xác thực và gắn nhãn trước.
Thông thường, việc tạo ra các tập dữ liệu này rất tốn kém và mất thời gian. Phương pháp của Llama 2 là chất lượng hơn số lượng. Với chỉ 27.540 chú thích, đội ngũ của Meta đã đạt được mức hiệu suất cạnh tranh với người chú thích. Điều này phù hợp với các nghiên cứu gần đây cho thấy rằng ngay cả các tập dữ liệu hạn chế nhưng sạch sẽ cũng có thể thúc đẩy kết quả chất lượng cao.
Trong quá trình SFT, mô hình LLM đã được đào tạo trước được tiếp xúc với một tập dữ liệu đã được gắn nhãn, nơi các thuật toán học có giám sát phát huy tác dụng. Các trọng số nội bộ của mô hình được điều chỉnh lại dựa trên các gradient được tính toán từ một hàm mất mát cụ thể cho nhiệm vụ. Hàm mất mát này lượng hóa sự khác biệt giữa đầu ra dự đoán của mô hình và các nhãn thực tế.
Quá trình tối ưu hóa này cho phép LLM nắm bắt được các mẫu và sắc thái tinh vi được nhúng trong tập dữ liệu đã được gắn nhãn. Do đó, mô hình không chỉ là một công cụ tổng quát mà còn trở thành một tài sản chuyên biệt, có khả năng thực hiện nhiệm vụ mục tiêu với độ chính xác cao.
Học luyện là bước tiếp theo, nhằm phù hợp hơn hành vi của mô hình với sở thích của con người.
Giai đoạn tinh chỉnh tận dụng Học Luyện Từ Phản Hồi Của Con Người (RLHF), sử dụng các kỹ thuật như Lấy Mẫu Quan Trọng và Tối Ưu Hóa Chính Sách Gần để giới thiệu nhiễu thuật toán, do đó tránh được các cực trị địa phương. Quá trình tinh chỉnh lặp này không chỉ cải thiện mô hình mà còn phù hợp hóa đầu ra của nó với kỳ vọng của con người.
Mô hình Llama 2-Chat sử dụng một giao thức so sánh nhị phân để thu thập dữ liệu sở thích của con người, đánh dấu một xu hướng đáng chú ý hướng tới các phương pháp định lượng hơn. Cơ chế này thông báo cho các Mô Hình Phần Thưởng, sau đó được sử dụng để tinh chỉnh mô hình hội thoại AI.
Chú Ý Ma: Hội Thoại Đa Lượt
Meta đã giới thiệu một tính năng mới, Chú Ý Ma (GAtt), được thiết kế để nâng cao hiệu suất của Llama 2 trong các hội thoại đa lượt. Điều này giải quyết hiệu quả vấn đề mất ngữ cảnh trong các cuộc hội thoại đang diễn ra. GAtt hoạt động như một neo, liên kết các hướng dẫn ban đầu với tất cả các tin nhắn người dùng sau này. Kết hợp với các kỹ thuật học luyện, nó giúp tạo ra các phản hồi nhất quán, phù hợp và phù hợp với người dùng trong các hội thoại dài hơn.
Từ Kho Git Của Meta Sử Dụng download.sh
- Truy Cập Trang Web Của Meta: Điều hướng đến Trang Llama 2 Chính Thức Của Meta và nhấp vào ‘Tải Mô Hình’
- Điền Thông Tin: Đọc và chấp nhận các điều khoản và điều kiện để tiếp tục.
- Xác Minh Email: Một khi biểu mẫu được gửi, bạn sẽ nhận được một email từ Meta với liên kết để tải mô hình từ kho git của họ.
- Thực Thi download.sh: Sao chép kho git và thực thi kịch bản
download.sh. Kịch bản này sẽ yêu cầu bạn xác thực bằng cách sử dụng một URL từ Meta có thời hạn trong 24 giờ. Bạn cũng sẽ chọn kích thước của mô hình—7B, 13B, hoặc 70B.
Từ Hugging Face
- Nhận Email Chấp Thuận: Sau khi được cấp quyền truy cập từ Meta, hãy truy cập Hugging Face.
- Yêu Cầu Truy Cập: Chọn mô hình mong muốn và gửi yêu cầu để được cấp quyền truy cập.
- Xác Minh: Kỳ vọng một email ‘đã cấp quyền truy cập’ trong vòng 1-2 ngày.
- Tạo Token Truy Cập: Điều hướng đến ‘Cài Đặt’ trong tài khoản Hugging Face của bạn để tạo token truy cập.
Phiên bản 4.31 của Transformers hoàn toàn tương thích với LLaMa 2 và mở ra nhiều công cụ và chức năng trong hệ sinh thái Hugging Face. Từ các kịch bản đào tạo và suy luận đến lượng tử hóa 4-bit với bitsandbytes và Tinh Chỉnh Hiệu Suất Tham Số (PEFT), bộ công cụ này rất rộng lớn. Để bắt đầu, hãy đảm bảo bạn đang sử dụng phiên bản Transformers mới nhất và đã đăng nhập vào tài khoản Hugging Face của mình.
Dưới đây là hướng dẫn đơn giản để chạy suy luận mô hình LLaMa 2 trong môi trường Google Colab, tận dụng thời gian chạy GPU:
Cài Đặt Gói
<p>!pip install transformers !huggingface-cli login
Nhập Thư Viện Python Cần Thiết.
from transformers import AutoTokenizer import transformers import torch
Khởi Tạo Mô Hình và Bộ Chuyển Đổi Token
Trong bước này, hãy chỉ định mô hình Llama 2 mà bạn sẽ sử dụng. Đối với hướng dẫn này, chúng tôi sử dụng meta-llama/Llama-2-7b-chat-hf.
model = "meta-llama/Llama-2-7b-chat-hf" tokenizer = AutoTokenizer.from_pretrained(model)
Thiết Lập Đường Dẫn
Sử dụng đường dẫn Hugging Face cho việc tạo văn bản với các thiết lập cụ thể:
pipeline = transformers.pipeline( "text-generation", model=model, torch_dtype=torch.float16, device_map="auto")
Tạo Dãy Văn Bản
Cuối cùng, chạy đường dẫn và tạo một dãy văn bản dựa trên đầu vào của bạn:
sequences = pipeline(
'Ai là những người đóng góp chính cho lĩnh vực trí tuệ nhân tạo?\n',
do_sample=True,
top_k=10,
num_return_sequences=1,
eos_token_id=tokenizer.eos_token_id,
max_length=200)
for seq in sequences:
print(f"Kết Quả: {seq['generated_text']}")
Giao Diện Người Dùng Của A16Z Cho LLaMa 2
Andreessen Horowitz (A16Z) đã ra mắt một giao diện người dùng tiên tiến dựa trên Streamlit cho Llama 2. Được lưu trữ trên GitHub, giao diện này bảo tồn lịch sử trò chuyện phiên và cũng cung cấp sự linh hoạt để chọn từ nhiều điểm cuối API Llama 2 được lưu trữ trên Replicate. Thiết kế này hướng tới người dùng nhằm đơn giản hóa tương tác với Llama 2, khiến nó trở thành một công cụ lý tưởng cho cả nhà phát triển và người dùng cuối. Đối với những người quan tâm, một bản demo trực tiếp có sẵn tại Llama2.ai.
Llama 2: Điều Gì Làm Cho Nó Khác Biệt So Với Các Mô Hình GPT Và Tiền Nhiệm Llama 1?
Sự Đa Dạng Về Quy Mô
Không giống như nhiều mô hình ngôn ngữ chỉ cung cấp khả năng mở rộng hạn chế, Llama 2 cung cấp một loạt các lựa chọn mô hình với các tham số khác nhau. Mô hình này có thể mở rộng từ 7 tỷ đến 70 tỷ tham số, do đó cung cấp một loạt các cấu hình để đáp ứng các nhu cầu tính toán đa dạng.
Chiều Dài Ngữ Cảnh Tăng Cường
Mô hình này có chiều dài ngữ cảnh tăng lên 4K token so với Llama 1. Điều này cho phép nó giữ lại nhiều thông tin hơn, do đó tăng cường khả năng hiểu và tạo ra nội dung phức tạp và rộng lớn hơn.
Chú Ý Nhóm Truy Vấn (GQA)
Kiến trúc sử dụng khái niệm GQA, được thiết kế để tăng tốc quá trình tính toán chú ý bằng cách lưu trữ các cặp token trước. Điều này hiệu quả cải thiện khả năng suy luận của mô hình.
Thử Nghiệm Hiệu Suất
Llama 2 đã thiết lập một tiêu chuẩn mới về các chỉ số hiệu suất. Nó không chỉ vượt qua người tiền nhiệm của mình, Llama 1, mà còn cung cấp sự cạnh tranh đáng kể với các mô hình khác như Falcon và GPT-3.5.
Mô hình Llama 2-Chat lớn nhất, 70B, cũng vượt qua ChatGPT trong 36% trường hợp và khớp hiệu suất trong 31,5% trường hợp còn lại. Nguồn: Bài Báo
Nguồn Mở: Sức Mạnh Của Cộng Đồng
Meta và Microsoft dự định Llama 2 sẽ không chỉ là một sản phẩm; họ hình dung nó như một công cụ được dẫn dắt bởi cộng đồng. Llama 2 miễn phí để truy cập cho cả mục đích nghiên cứu và phi thương mại. Họ nhằm mục đích dân chủ hóa khả năng AI, khiến nó trở nên tiếp cận được với các công ty khởi nghiệp, nhà nghiên cứu và doanh nghiệp. Một mô hình mở nguồn cho phép ‘điều tra lỗi của cộng đồng’ đối với mô hình. Các nhà phát triển và nhà伦 trị AI có thể kiểm tra, xác định các điểm yếu và đề xuất giải pháp với tốc độ nhanh hơn.
Mặc dù các điều khoản cấp phép cho LLaMa 2 nói chung là khá cởi mở, các trường hợp ngoại lệ vẫn tồn tại. Các doanh nghiệp lớn với hơn 700 triệu người dùng mỗi tháng, như Google, yêu cầu sự ủy quyền rõ ràng từ Meta để sử dụng. Ngoài ra, giấy phép cấm sử dụng LLaMa 2 để cải thiện các mô hình ngôn ngữ khác.
Thử Thách Hiện Tại Với Llama 2
- Tổng Quát Hóa Dữ Liệu: Cả Llama 2 và GPT-4 đôi khi gặp khó khăn trong việc duy trì hiệu suất cao đồng đều trên các nhiệm vụ đa dạng. Chất lượng và đa dạng của dữ liệu cũng quan trọng như khối lượng trong những trường hợp này.
- Minh Bạch Mô Hình: Nhìn lại những bước thụt lùi trước đây của AI khi tạo ra đầu ra sai lệch, việc khám phá lý do đằng sau những mô hình phức tạp này là tối quan trọng.
Code Llama – Ra Mắt Mới Nhất Của Meta
Meta gần đây đã công bố Code Llama, một mô hình ngôn ngữ lớn chuyên về lập trình với kích thước tham số từ 7B đến 34B. Tương tự như Trình Thông Dịch Mã ChatGPT; Code Llama có thể đơn giản hóa luồng làm việc của nhà phát triển và làm cho lập trình trở nên dễ tiếp cận hơn. Nó hỗ trợ nhiều ngôn ngữ lập trình và có các biến thể chuyên dụng, chẳng hạn như Code Llama-Python cho các nhiệm vụ cụ thể của Python. Mô hình này cũng cung cấp các mức hiệu suất khác nhau để đáp ứng các yêu cầu độ trễ đa dạng. Với giấy phép mở, Code Llama mời cộng đồng đóng góp cho sự cải tiến liên tục.
https://about.fb.com/news/2023/08/code-llama-ai-for-coding/
Kết Luận
Bài viết này đã hướng dẫn bạn cách thiết lập mô hình Llama 2 cho việc tạo văn bản trên Google Colab với sự hỗ trợ của Hugging Face. Hiệu suất của Llama 2 được thúc đẩy bởi một loạt các kỹ thuật tiên tiến, từ kiến trúc transformer tự hồi quy đến Học Luyện Với Phản Hồi Của Con Người (RLHF). Với tối đa 70 tỷ tham số và các tính năng như Chú Ý Ma, mô hình này vượt qua các tiêu chuẩn công nghiệp hiện tại trong một số lĩnh vực, và với tính chất mở của nó, nó mở ra một kỷ nguyên mới trong việc hiểu ngôn ngữ tự nhiên và trí tuệ nhân tạo tạo sinh. với các tham số lên đến 70 tỷ và các tính năng như Chú Ý Ma, mô hình này vượt trội so với các tiêu chuẩn công nghiệp hiện tại trong một số lĩnh vực và với bản chất mở của nó, nó mở ra một kỷ nguyên mới trong việc hiểu ngôn ngữ tự nhiên và trí tuệ nhân tạo tạo sinh.

















