Nhiều mô hình Gemini có cửa sổ ngữ cảnh lớn gồm 1 triệu token trở lên. Trước đây, các mô hình ngôn ngữ lớn (LLM) bị giới hạn đáng kể về lượng văn bản (hoặc mã thông báo) có thể được truyền đến mô hình cùng một lúc. Cửa sổ ngữ cảnh dài của Gemini mở ra nhiều trường hợp sử dụng và mô hình phát triển mới.
Mã mà bạn đã sử dụng cho các trường hợp như tạo văn bản hoặc đầu vào đa phương thức sẽ hoạt động mà không cần thay đổi với ngữ cảnh dài.
Tài liệu này cung cấp cho bạn thông tin tổng quan về những gì bạn có thể đạt được khi sử dụng các mô hình có cửa sổ ngữ cảnh từ 1 triệu token trở lên. Trang này cung cấp thông tin tổng quan ngắn gọn về cửa sổ ngữ cảnh, đồng thời khám phá cách nhà phát triển nên suy nghĩ về ngữ cảnh dài, nhiều trường hợp sử dụng thực tế cho ngữ cảnh dài và các cách tối ưu hoá việc sử dụng ngữ cảnh dài.
Để biết kích thước cửa sổ ngữ cảnh của các mô hình cụ thể, hãy xem trang Mô hình.
Cửa sổ ngữ cảnh là gì?
Cách cơ bản để sử dụng các mô hình Gemini là truyền thông tin (ngữ cảnh) đến mô hình, sau đó mô hình sẽ tạo ra câu trả lời. Một phép loại suy cho cửa sổ ngữ cảnh là bộ nhớ ngắn hạn. Bộ nhớ ngắn hạn của một người chỉ có thể lưu trữ một lượng thông tin có hạn, và điều này cũng đúng với các mô hình tạo sinh.
Bạn có thể đọc thêm về cách các mô hình hoạt động ở cấp độ cơ bản trong hướng dẫn về mô hình tạo sinh của chúng tôi.
Bắt đầu sử dụng ngữ cảnh dài
Các phiên bản trước của mô hình tạo sinh chỉ có thể xử lý 8.000 mã thông báo cùng một lúc. Các mô hình mới hơn đã đẩy giới hạn này lên cao hơn bằng cách chấp nhận 32.000 hoặc thậm chí 128.000 mã thông báo. Gemini là mô hình đầu tiên có khả năng chấp nhận 1 triệu token.
Trên thực tế, 1 triệu mã thông báo sẽ có dạng như sau:
- 50.000 dòng mã (với 80 ký tự tiêu chuẩn trên mỗi dòng)
- Tất cả tin nhắn văn bản bạn đã gửi trong 5 năm qua
- 8 tiểu thuyết tiếng Anh có độ dài trung bình
- Bản chép lời của hơn 200 tập podcast có thời lượng trung bình
Các cửa sổ ngữ cảnh hạn chế hơn thường thấy ở nhiều mô hình khác thường yêu cầu các chiến lược như loại bỏ tuỳ ý các thông báo cũ, tóm tắt nội dung, sử dụng RAG với cơ sở dữ liệu vectơ hoặc lọc các câu lệnh để lưu mã thông báo.
Mặc dù những kỹ thuật này vẫn có giá trị trong một số trường hợp cụ thể, nhưng cửa sổ ngữ cảnh rộng lớn của Gemini cho phép bạn áp dụng một phương pháp trực tiếp hơn: cung cấp trước tất cả thông tin liên quan. Vì các mô hình Gemini được thiết kế dành riêng cho khả năng xử lý ngữ cảnh quy mô lớn, nên chúng thể hiện khả năng học trong ngữ cảnh mạnh mẽ. Ví dụ: chỉ sử dụng tài liệu hướng dẫn trong ngữ cảnh (một ngữ pháp tham khảo dài 500 trang, một từ điển và khoảng 400 câu song song), Gemini đã học cách dịch từ tiếng Anh sang tiếng Kalamang (một ngôn ngữ của người Papua có ít hơn 200 người nói) với chất lượng tương đương với một người học là con người khi sử dụng cùng một tài liệu. Điều này minh hoạ sự thay đổi mô hình do ngữ cảnh dài của Gemini mang lại, mở ra những khả năng mới thông qua hoạt động học tập mạnh mẽ theo bối cảnh.
Các trường hợp sử dụng ngữ cảnh dài
Mặc dù trường hợp sử dụng tiêu chuẩn cho hầu hết các mô hình tạo sinh vẫn là nhập văn bản, nhưng họ mô hình Gemini cho phép một mô hình mới về các trường hợp sử dụng đa phương thức. Các mô hình này có thể hiểu văn bản, video, âm thanh và hình ảnh một cách tự nhiên. Các mô hình này đi kèm với Gemini API có thể xử lý nhiều loại tệp để mang lại sự thuận tiện.
Văn bản dài
Văn bản đã chứng minh là lớp trí thông minh hỗ trợ phần lớn động lực xung quanh các LLM. Như đã đề cập trước đó, phần lớn hạn chế thực tế của LLM là do không có đủ cửa sổ ngữ cảnh để thực hiện một số tác vụ nhất định. Điều này dẫn đến việc nhanh chóng áp dụng phương pháp tạo tăng cường truy xuất (RAG) và các kỹ thuật khác giúp cung cấp cho mô hình thông tin theo ngữ cảnh có liên quan một cách linh hoạt. Giờ đây, với cửa sổ ngữ cảnh ngày càng lớn, các kỹ thuật mới đang trở nên phổ biến và mở ra các trường hợp sử dụng mới.
Sau đây là một số trường hợp sử dụng mới nổi và tiêu chuẩn cho ngữ cảnh dài dựa trên văn bản:
- Tóm tắt các tập hợp văn bản lớn
- Các lựa chọn tóm tắt trước đây với các mô hình ngữ cảnh nhỏ hơn sẽ yêu cầu một cửa sổ trượt hoặc một kỹ thuật khác để duy trì trạng thái của các phần trước đó khi mã thông báo mới được truyền đến mô hình
- Đặt câu hỏi và trả lời
- Trước đây, điều này chỉ có thể thực hiện được với RAG do lượng ngữ cảnh hạn chế và khả năng nhớ lại thông tin thực tế của các mô hình ở mức thấp
- Quy trình làm việc dựa trên trợ lý AI
- Văn bản là nền tảng để các tác nhân duy trì trạng thái của những việc đã làm và những việc cần làm; việc không có đủ thông tin về thế giới và mục tiêu của tác nhân là một hạn chế đối với độ tin cậy của tác nhân
Học trong bối cảnh với nhiều ví dụ là một trong những khả năng độc đáo nhất mà các mô hình ngữ cảnh dài mang lại. Nghiên cứu cho thấy rằng việc sử dụng mô hình ví dụ "một lần chụp" hoặc "nhiều lần chụp" phổ biến, trong đó mô hình được cung cấp một hoặc một vài ví dụ về một nhiệm vụ và mở rộng quy mô đó lên hàng trăm, hàng nghìn hoặc thậm chí hàng trăm nghìn ví dụ, có thể dẫn đến các khả năng mới của mô hình. Phương pháp nhiều lần này cũng cho thấy hiệu suất tương tự như các mô hình được tinh chỉnh cho một nhiệm vụ cụ thể. Đối với những trường hợp sử dụng mà hiệu suất của mô hình Gemini chưa đủ để triển khai sản xuất, bạn có thể thử phương pháp nhiều lần. Như bạn có thể khám phá sau trong phần tối ưu hoá ngữ cảnh dài, việc lưu vào bộ nhớ đệm ngữ cảnh giúp loại khối lượng công việc mã thông báo đầu vào cao này trở nên khả thi hơn về mặt kinh tế và thậm chí giảm độ trễ trong một số trường hợp.
Video dài
Tiện ích của nội dung video từ lâu đã bị hạn chế do bản thân phương tiện này thiếu tính năng hỗ trợ tiếp cận. Khó xem lướt qua nội dung, bản chép lời thường không nắm bắt được sắc thái của video và hầu hết các công cụ đều không xử lý hình ảnh, văn bản và âm thanh cùng nhau. Với Gemini, khả năng xử lý văn bản có ngữ cảnh dài sẽ chuyển thành khả năng lập luận và trả lời các câu hỏi về dữ liệu đầu vào đa phương thức với hiệu suất ổn định.
Sau đây là một số trường hợp sử dụng mới và tiêu chuẩn cho ngữ cảnh dài của video:
- Hỏi và đáp về video
- Bộ nhớ video, như minh hoạ trong Project Astra của Google
- Tạo phụ đề cho video
- Hệ thống đề xuất video, bằng cách làm phong phú siêu dữ liệu hiện có bằng thông tin hiểu biết đa phương thức mới
- Tuỳ chỉnh video bằng cách xem xét một tập hợp dữ liệu và siêu dữ liệu video liên quan, sau đó xoá những phần video không liên quan đến người xem
- Kiểm duyệt nội dung video
- Xử lý video theo thời gian thực
Khi làm việc với video, bạn cần cân nhắc cách video được xử lý thành mã thông báo. Điều này ảnh hưởng đến việc tính phí và giới hạn sử dụng. Bạn có thể tìm hiểu thêm về việc đưa ra câu lệnh bằng tệp video trong Hướng dẫn đưa ra câu lệnh.
Âm thanh dài
Các mô hình Gemini là những mô hình ngôn ngữ lớn đa phương thức nguyên bản đầu tiên có thể hiểu được âm thanh. Trước đây, quy trình làm việc điển hình của nhà phát triển sẽ bao gồm việc kết hợp nhiều mô hình dành riêng cho miền, chẳng hạn như mô hình chuyển lời nói thành văn bản và mô hình chuyển văn bản thành văn bản, để xử lý âm thanh. Điều này dẫn đến độ trễ bổ sung cần thiết bằng cách thực hiện nhiều yêu cầu khứ hồi và giảm hiệu suất thường là do các cấu trúc bị ngắt kết nối của chế độ thiết lập nhiều mô hình.
Sau đây là một số trường hợp sử dụng mới nổi và tiêu chuẩn cho ngữ cảnh âm thanh:
- Chép lời và dịch theo thời gian thực
- Hỏi và đáp về podcast / video
- Chép lời và tóm tắt cuộc họp
- Trợ lý giọng nói
Bạn có thể tìm hiểu thêm về cách đưa ra câu lệnh bằng tệp âm thanh trong Hướng dẫn đưa ra câu lệnh.
Tối ưu hoá bối cảnh dài
Phương pháp tối ưu hoá chính khi làm việc với ngữ cảnh dài và các mô hình Gemini là sử dụng tính năng lưu vào bộ nhớ đệm theo ngữ cảnh. Ngoài việc không thể xử lý nhiều mã thông báo trong một yêu cầu, hạn chế chính khác là chi phí. Nếu có một ứng dụng "trò chuyện với dữ liệu" nơi người dùng tải 10 tệp PDF, một video và một số tài liệu công việc lên, thì trước đây, bạn sẽ phải làm việc với một công cụ/khung tạo tăng cường truy xuất (RAG) phức tạp hơn để xử lý các yêu cầu này và trả một khoản tiền đáng kể cho các mã thông báo được chuyển vào cửa sổ ngữ cảnh. Giờ đây, bạn có thể lưu vào bộ nhớ đệm các tệp mà người dùng tải lên và trả phí để lưu trữ theo giờ. Ví dụ: chi phí đầu vào / đầu ra cho mỗi yêu cầu với Gemini Flash thấp hơn khoảng 4 lần so với chi phí đầu vào / đầu ra tiêu chuẩn. Vì vậy, nếu người dùng trò chuyện đủ với dữ liệu của họ, thì bạn (nhà phát triển) sẽ tiết kiệm được rất nhiều chi phí.
Hạn chế về ngữ cảnh dài
Trong nhiều phần của hướng dẫn này, chúng tôi đã đề cập đến cách các mô hình Gemini đạt được hiệu suất cao trong nhiều quy trình đánh giá truy xuất thông tin cụ thể. Các kiểm thử này xem xét chế độ thiết lập cơ bản nhất, trong đó bạn có một kim duy nhất mà bạn đang tìm kiếm. Trong trường hợp bạn có thể có nhiều "kim" hoặc thông tin cụ thể mà bạn đang tìm kiếm, mô hình sẽ không hoạt động với độ chính xác tương tự. Hiệu suất có thể thay đổi đáng kể tuỳ thuộc vào bối cảnh. Bạn cần cân nhắc điều này vì có sự đánh đổi vốn có giữa việc truy xuất thông tin phù hợp và chi phí. Bạn có thể nhận được khoảng 99% cho một truy vấn duy nhất, nhưng bạn phải trả chi phí mã thông báo đầu vào mỗi khi gửi truy vấn đó. Vì vậy, để truy xuất 100 thông tin, nếu cần hiệu suất 99%, thì có thể bạn sẽ cần gửi 100 yêu cầu. Đây là một ví dụ điển hình về trường hợp bộ nhớ đệm theo ngữ cảnh có thể giảm đáng kể chi phí liên quan đến việc sử dụng các mô hình Gemini mà vẫn duy trì hiệu suất cao.
Câu hỏi thường gặp
Đâu là vị trí phù hợp nhất để đặt câu hỏi của tôi trong cửa sổ ngữ cảnh?
Trong hầu hết các trường hợp, đặc biệt là nếu tổng ngữ cảnh dài, hiệu suất của mô hình sẽ tốt hơn nếu bạn đặt truy vấn / câu hỏi ở cuối câu lệnh (sau tất cả ngữ cảnh khác).
Hiệu suất của mô hình có giảm khi tôi thêm nhiều mã thông báo vào một cụm từ tìm kiếm không?
Nhìn chung, nếu không cần truyền mã thông báo đến mô hình, thì tốt nhất là bạn nên tránh truyền mã thông báo. Tuy nhiên, nếu bạn có một lượng lớn mã thông báo chứa một số thông tin và muốn đặt câu hỏi về thông tin đó, thì mô hình này có khả năng cao trong việc trích xuất thông tin đó (độ chính xác lên đến 99% trong nhiều trường hợp).
Làm cách nào để giảm chi phí khi sử dụng các cụm từ tìm kiếm có ngữ cảnh dài?
Nếu bạn có một nhóm mã thông báo / bối cảnh tương tự mà bạn muốn sử dụng lại nhiều lần, thì tính năng lưu vào bộ nhớ đệm theo bối cảnh có thể giúp giảm chi phí liên quan đến việc đặt câu hỏi về thông tin đó.
Độ dài ngữ cảnh có ảnh hưởng đến độ trễ của mô hình không?
Bất kỳ yêu cầu nào cũng có một lượng độ trễ cố định, bất kể kích thước, nhưng nói chung, các truy vấn dài hơn sẽ có độ trễ cao hơn (thời gian cho mã thông báo đầu tiên).