Tinh chỉnh bằng Gemini API

Các chiến lược thiết kế lời nhắc, chẳng hạn như nhắc bằng vài lần, có thể không phải lúc nào cũng tạo ra kết quả bạn cần. Tinh chỉnh là một quá trình có thể cải thiện hiệu suất của mô hình trên các tác vụ cụ thể hoặc giúp mô hình tuân thủ các yêu cầu đầu ra cụ thể khi hướng dẫn không đủ và bạn có một bộ ví dụ minh hoạ các kết quả mong muốn.

Trang này cung cấp hướng dẫn về cách tinh chỉnh mô hình văn bản đằng sau dịch vụ văn bản Gemini API.

Cách hoạt động của tính năng tinh chỉnh

Mục tiêu của việc tinh chỉnh là cải thiện thêm hiệu suất của mô hình cho tác vụ cụ thể của bạn. Hoạt động tinh chỉnh hoạt động bằng cách cung cấp cho mô hình một tập dữ liệu huấn luyện chứa nhiều ví dụ về tác vụ. Đối với các tác vụ riêng biệt, bạn có thể cải thiện đáng kể hiệu suất của mô hình bằng cách điều chỉnh mô hình trên một số lượng ví dụ khiêm tốn.

Dữ liệu huấn luyện của bạn nên được cấu trúc dưới dạng ví dụ với thông tin đầu vào về lời nhắc và kết quả phản hồi dự kiến. Bạn cũng có thể điều chỉnh các mô hình bằng dữ liệu mẫu ngay trong Google AI Studio. Mục tiêu là để dạy mô hình này bắt chước hành vi hoặc tác vụ mong muốn bằng cách đưa ra nhiều ví dụ minh hoạ cho hành vi hoặc nhiệm vụ đó.

Khi bạn chạy một công việc điều chỉnh, mô hình sẽ học các tham số bổ sung giúp mã hoá thông tin cần thiết để thực hiện tác vụ mong muốn hoặc tìm hiểu hành vi mong muốn. Sau đó, các tham số này có thể được sử dụng tại thời điểm suy luận. Kết quả của công việc điều chỉnh là một mô hình mới, là sự kết hợp hiệu quả giữa các tham số mới học được và mô hình ban đầu.

Chuẩn bị tập dữ liệu

Trước khi có thể bắt đầu tinh chỉnh, bạn cần có một tập dữ liệu để tinh chỉnh mô hình. Để đạt được hiệu suất tốt nhất, các ví dụ trong tập dữ liệu phải có chất lượng cao, đa dạng và đại diện cho dữ liệu đầu vào và đầu ra thực tế.

Định dạng

Các ví dụ trong tập dữ liệu của bạn phải khớp với lưu lượng truy cập sản xuất dự kiến. Nếu tập dữ liệu của bạn chứa định dạng, từ khoá, hướng dẫn hoặc thông tin cụ thể, thì dữ liệu thực tế phải được định dạng theo cách giống nhau và chứa những hướng dẫn giống nhau.

Ví dụ: nếu các ví dụ trong tập dữ liệu bao gồm "question:""context:", thì bạn cũng phải định dạng lưu lượng truy cập thực tế để "question:""context:" theo cùng thứ tự xuất hiện trong các ví dụ về tập dữ liệu. Nếu bạn loại trừ bối cảnh, mô hình sẽ không thể nhận ra mẫu, ngay cả khi câu hỏi chính xác nằm trong một ví dụ trong tập dữ liệu.

Việc thêm câu lệnh hoặc lời mở đầu vào từng ví dụ trong tập dữ liệu cũng có thể giúp cải thiện hiệu suất của mô hình đã được điều chỉnh. Lưu ý: nếu tập dữ liệu có lời nhắc hoặc lời mở đầu, thì bạn cũng nên đưa lời nhắc hoặc lời mở đầu đó vào mô hình đã được điều chỉnh tại thời điểm suy luận.

Kích thước dữ liệu huấn luyện

Bạn có thể tinh chỉnh một mô hình chỉ với 20 ví dụ. Dữ liệu bổ sung thường cải thiện chất lượng của các câu trả lời. Bạn nên nhắm mục tiêu từ 100 đến 500 ví dụ, tuỳ thuộc vào ứng dụng của mình. Bảng sau đây cho biết kích thước tập dữ liệu được đề xuất để tinh chỉnh một mô hình văn bản cho nhiều tác vụ phổ biến:

Việc cần làm Số ví dụ trong tập dữ liệu
Phân loại Hơn 100
Tóm tắt 100-500+
Tìm kiếm tài liệu Hơn 100

Tải tập dữ liệu điều chỉnh lên

Dữ liệu được truyền cùng dòng bằng cách sử dụng API hoặc thông qua các tệp được tải lên trong Google AI Studio.

Nhấp vào nút Import (Nhập) rồi làm theo hướng dẫn trong hộp thoại để nhập dữ liệu từ một tệp hoặc chọn một câu lệnh có cấu trúc có các ví dụ để nhập làm tập dữ liệu điều chỉnh.

Thư viện ứng dụng

Để sử dụng thư viện ứng dụng, hãy cung cấp tệp dữ liệu trong lệnh gọi createTunedModel. Kích thước tệp tối đa là 4 MB. Hãy xem phần điều chỉnh nhanh bằng Python để bắt đầu.

cURL

Để gọi API REST bằng cURL, hãy cung cấp các ví dụ huấn luyện ở định dạng JSON cho đối số training_data. Hãy xem phần điều chỉnh nhanh bằng cURL để bắt đầu.

Cài đặt dò nâng cao

Khi tạo một công việc điều chỉnh, bạn có thể chỉ định các chế độ cài đặt nâng cao sau đây:

  • Epochs: Một lượt huấn luyện đầy đủ cho toàn bộ tập huấn luyện, sao cho mỗi ví dụ được xử lý một lần.
  • Kích thước lô: Tập hợp các ví dụ được dùng trong một vòng lặp huấn luyện. Kích thước lô sẽ xác định số lượng ví dụ trong một lô.
  • Tốc độ học: Một số dấu phẩy động cho thuật toán biết mức độ điều chỉnh các tham số mô hình trên mỗi lần lặp lại. Ví dụ: tốc độ học tập là 0,3 sẽ điều chỉnh trọng số và độ lệch hiệu quả hơn gấp 3 lần so với tốc độ học là 0,1. Tỷ lệ học cao và thấp đều có những ưu nhược điểm riêng và cần được điều chỉnh tuỳ theo trường hợp sử dụng của bạn.
  • Hệ số tốc độ học: Hệ số tốc độ sẽ sửa đổi tốc độ học ban đầu của mô hình. Giá trị 1 sử dụng tốc độ học ban đầu của mô hình. Giá trị lớn hơn 1 sẽ làm tăng tốc độ học tập và các giá trị trong khoảng từ 1 đến 0 sẽ làm giảm tốc độ học.

Bảng sau đây trình bày các cấu hình được đề xuất để tinh chỉnh một mô hình nền tảng:

Siêu tham số Giá trị mặc định Điều chỉnh được đề xuất
Kỷ nguyên 5

Nếu tổn thất bắt đầu ở mức ổn định trước 5 khoảng thời gian bắt đầu của hệ thống, hãy sử dụng giá trị nhỏ hơn.

Nếu mức tổn thất đang hội tụ và có vẻ không phải ở mức cao, hãy sử dụng giá trị cao hơn.

Kích thước lô 4
Tốc độ học 0,001 Sử dụng giá trị nhỏ hơn cho tập dữ liệu nhỏ hơn.

Đường cong mức hao tổn cho biết độ sai lệch của thông tin dự đoán của mô hình so với các dự đoán lý tưởng trong các ví dụ huấn luyện sau mỗi khoảng thời gian bắt đầu của hệ thống. Lý tưởng nhất là bạn muốn ngừng huấn luyện ở điểm thấp nhất trên đường cong ngay trước khi nó trở thành cao nguyên. Ví dụ: biểu đồ bên dưới cho thấy đường cong tổn thất giảm dần ở khoảng thời gian bắt đầu của hệ thống từ 4 đến 6, có nghĩa là bạn có thể đặt tham số Epoch thành 4 mà vẫn nhận được hiệu suất tương tự.

Biểu đồ dạng đường cho thấy đường cong về mức ngừng sử dụng của mô hình. Dòng tăng đột biến giữa giai đoạn đầu tiên và thứ hai, sau đó giảm mạnh xuống gần 0 và giảm dần sau 3 khoảng thời gian bắt đầu của hệ thống.

Kiểm tra trạng thái công việc điều chỉnh

Bạn có thể kiểm tra trạng thái của công việc điều chỉnh trong Google AI Studio ở thẻ Thư viện của tôi hoặc sử dụng thuộc tính metadata của mô hình được điều chỉnh trong Gemini API.

Khắc phục lỗi

Phần này bao gồm các mẹo về cách khắc phục những lỗi mà bạn có thể gặp phải trong khi tạo mô hình đã được điều chỉnh.

Xác thực

Việc tinh chỉnh bằng API và thư viện ứng dụng yêu cầu xác thực người dùng. Nếu chỉ sử dụng một khoá API là chưa đủ. Nếu gặp lỗi 'PermissionDenied: 403 Request had insufficient authentication scopes', bạn cần thiết lập tính năng xác thực người dùng.

Để định cấu hình thông tin đăng nhập OAuth cho Python, hãy tham khảo hướng dẫn thiết lập OAuth.

Người mẫu bị huỷ

Bạn có thể huỷ công việc tinh chỉnh bất kỳ lúc nào trước khi công việc đó kết thúc. Tuy nhiên, hiệu suất suy luận của một mô hình đã bị huỷ là không thể dự đoán, đặc biệt là nếu công việc điều chỉnh bị huỷ sớm trong quá trình huấn luyện. Nếu huỷ vì muốn dừng quá trình huấn luyện ở khoảng thời gian bắt đầu của hệ thống trước đó, bạn nên tạo một công việc điều chỉnh mới và đặt thời gian bắt đầu của hệ thống ở mức thấp hơn.

Bước tiếp theo