Tác giả: Maciej Tatarek
ngày 2 tháng 8
Sở hữu riêng một Mô hình Ngôn ngữ Lớn (LLM) mang lại nhiều lợi ích như sự kiểm soát, quyền riêng tư, hiệu suất và ưu điểm về chi phí. Việc đào tạo một LLM từ đầu có thể tốn kém, nhưng nhờ vào các mô hình nền tảng mã nguồn mở, điều này đã khả thi hơn rất nhiều. Các kỹ thuật tối ưu hóa giúp việc điều chỉnh tốn ít tiền và mang lại kết quả vượt trội so với GPT-4 trong một số nhiệm vụ cụ thể. Mặc dù tổ chức dịch vụ với mô hình ngôn ngữ LLM có thể đầy thách thức, nhưng sử dụng các nền tảng Học máy có thể làm quá trình trở nên thuận lợi và chi phí hợp lý.
Trong kịch bản kinh tế nhất, việc phát triển một mô hình chuyên biệt dựa trên Falcon 7B, được điều chỉnh tốt trên dữ liệu độc quyền có thể tốn 9,99 đô la khi sử dụng Google Colab Pro. Triển khai mô hình theo yêu cầu chỉ bằng một máy GPU đơn lẻ có thể giữ chi phí dưới sự kiểm soát với 1,006 đô la/giờ.
1. Giới thiệu
Mặc dù sự phổ biến của ChatGPT và OpenAI, những lo ngại về quyền riêng tư dữ liệu đã khiến nhiều công ty cảnh giác khi xem xét việc áp dụng chúng trong nội bộ.
Một giải pháp nổi bật để giải quyết những vấn đề này là sở hữu một Mô hình Ngôn ngữ Lớn (LLM) tự lưu trữ, triển khai trong một cơ sở hạ tầng an toàn. Bằng cách sử dụng các dự án mã nguồn mở như Falcon, bạn có thể dễ dàng có được một mô hình được đào tạo sẵn với hiệu suất tương đương với ChatGPT, mà không tốn chi phí đào tạo cho doanh nghiệp của bạn. Hơn nữa, một LLM riêng tư có thể được điều chỉnh tốt với dữ liệu độc quyền, cải thiện đáng kể hiệu suất cho các nhiệm vụ cụ thể của doanh nghiệp.
Trong bài viết này, chúng tôi sẽ khám phá các tùy chọn khác nhau để có được LLM của bạn và cung cấp các ước tính về chi phí cho mỗi phương pháp.
2. Lợi ích của sở hữu và triển khai dùng riêng một mô hình ngôn ngữ – LLM
Việc sở hữu riêng một LLM mang lại nhiều lợi ích trong nhiều lĩnh vực khác nhau, có thể được chia thành các lợi ích chung cho bảo vệ dữ liệu, hiệu suất và lợi ích chiến lược.
Lợi ích về bảo vệ dữ liệu:
- Với sự gia tăng của các quy định như Đạo luật AI và các biện pháp bảo vệ dữ liệu người dùng, việc có một LLM trong nội bộ giúp các công ty duy trì sự kiểm soát đối với dữ liệu nhạy cảm.
- Các LLM có sẵn công khai có khả năng phải tuân theo nhiều quy định hơn, dẫn đến hiệu suất giảm và tăng chi phí do phải bao gồm các thông báo và biện pháp an toàn.
- Bằng cách đào tạo LLM trên các nguồn tin cậy và đã được xác minh, các công ty có thể đảm bảo rằng các mô hình được sử dụng trong các lĩnh vực nhạy cảm như chăm sóc sức khỏe không thể hiện sự thiên vị dựa trên dữ liệu không đáng tin cậy.
Lợi ích về hiệu suất:
- Các công ty có thể điều chỉnh LLM bằng cách sử dụng dữ liệu độc quyền của họ, điều chỉnh nó cho các nhiệm vụ cụ thể và cải thiện hiệu suất của nó. Đối với các mô hình tự lưu trữ, điều này rẻ hơn nhiều.
- Việc sở hữu mô hình của bạn cung cấp sự kiểm soát về thời gian phản hồi thông qua cải tiến cơ sở hạ tầng, trong khi sử dụng các mô hình của bên thứ ba có thể dẫn đến việc chờ đợi vào giờ cao điểm.
- Xử lý một lượng lớn tài liệu hoặc chạy các LLM phức tạp có thể tốn kém khi sử dụng bên thứ ba. Đặc biệt khi đề cập đến việc mở rộng để xử lý hàng ngàn tài liệu mỗi ngày.
Lợi ích chiến lược:
- Sở hữu dữ liệu được sử dụng để đào tạo LLM tạo ra một lợi thế cạnh tranh bằng cách xây dựng một bộ dữ liệu độc quyền có thể phục vụ như một đàn nước chắn trước các đối thủ cạnh tranh.
- Bằng cách lựa chọn hoặc thiết kế một mô hình phù hợp với nhu cầu của họ, chẳng hạn như điều chỉnh kích thước hoặc cửa sổ ngữ cảnh, các công ty có được sự kiểm soát, tính linh hoạt và giảm chi phí.
- Việc kiểm soát mô hình của bạn và phiên bản của nó đảm bảo chất lượng ổn định của mô hình trong khi sử dụng một nhà cung cấp có thể dẫn đến thay đổi kết quả trong quá trình cập nhật. Theo bài báo này, kết quả của GPT-4 đang giảm dần theo thời gian để giảm chi phí.
Trong các phần tiếp theo, chúng tôi sẽ khám phá các tùy chọn đào tạo và lưu trữ cho LLM của bạn, cùng với ước tính chi phí.
3. Chi phí huấn luyện mô hình ngôn ngữ dùng riêng – LLM
Sau khi đã hiểu được lợi ích của việc sở hữu LLM của bạn, chúng ta bây giờ sẽ tìm hiểu về xem xét chi phí và các tùy chọn có sẵn.
Chi phí về phần cứng có thể được chia thành 2 phần: đào tạo và phục vụ. Chi phí đào tạo mạnh mẽ phụ thuộc vào kích thước mô hình và các tham số đào tạo. GPU – “cái xẻng” của cuộc đổ về vàng AI – đóng một vai trò quan trọng trong cả hai khía cạnh, đặc biệt là khi thị trường GPU hiện nay đang khan hiếm.
Các mô hình lớn đi kèm với chi phí đào tạo cao hơn, nhưng sự ưu việt của chúng so với các mô hình nhỏ hơn không được đảm bảo. Các mô hình tổng quan như Llama hoặc GPT được đào tạo trên dữ liệu đa dạng để xử lý các nhiệm vụ khác nhau. Moveworks đã tạo ra một nghiên cứu tốt cho thấy rằng các mô hình nhỏ hơn được tùy chỉnh cho một nhiệm vụ cụ thể có thể hiệu quả như thậm chí cả mô hình tổng quan lớn gấp 10 lần.
“Tuy nhiên, từ các thử nghiệm của chúng tôi, chúng tôi đã thấy rằng các LLM được điều chỉnh tùy chỉnh cho các nhiệm vụ cụ thể của doanh nghiệp và một bộ ngữ liệu có khả năng hiểu ngôn ngữ cụ thể của doanh nghiệp và xuất sắc trong các nhiệm vụ cụ thể của doanh nghiệp, ngay cả khi kích thước mô hình nhỏ hơn 10 lần!”
Moveworks đã làm một công việc xuất sắc trong việc tạo ra một bảng đánh giá để đo lường hiệu suất của các LLM khác nhau một cách chính xác trong các ứng dụng doanh nghiệp. Họ đã đào tạo một LLM độc quyền của riêng họ, vượt qua các mô hình lớn hơn trong các nhiệm vụ cụ thể của doanh nghiệp bằng cách sử dụng dữ liệu nội bộ và dữ liệu từ bên ngoài.
Đào tạo một LLM từ đầu
Để ước tính chi phí đào tạo mô hình, chúng ta cần xác định kiến trúc mô hình của chúng ta, với sự tập trung chính vào kích thước mô hình. Việc lựa chọn kích thước mô hình tối ưu là một nhiệm vụ rất khó khăn và nó liên quan đến nhiệm vụ cụ thể mà mô hình muốn thực hiện. Ví dụ, các mô hình khổng lồ như GPT-4 được thiết kế để phục vụ cho một loạt nhiệm vụ và có kiến thức rộng lớn trong nhiều chủ đề. Tuy nhiên, đối với các nhiệm vụ cực kỳ chuyên biệt, có thể giảm thiểu kích thước mô hình một cách đáng kể.
Một ví dụ tốt về lý do để đào tạo một mô hình từ đầu là BloombergGPT, trong đó họ kết hợp dữ liệu internet với dữ liệu độc quyền của BloombergGPT để đạt được hiệu suất đầu ngành trong các nhiệm vụ tài chính.
“Mô hình kết quả đã được kiểm chứng trên các bài kiểm tra NLP cụ thể cho tài chính hiện có, một bộ các bài kiểm tra nội bộ của Bloomberg và các loại nhiệm vụ NLP tổng quát từ các bài kiểm tra phổ biến (ví dụ, BIG-bench Hard, Đánh giá Kiến thức, Hiểu đọc và Nhiệm vụ Ngôn ngữ). Đáng chú ý, mô hình BloombergGPT vượt trội so với các mô hình mã nguồn mở có kích thước tương tự trong các nhiệm vụ tài chính một cách đáng kể, trong khi vẫn đạt hiệu suất tương đương hoặc tốt hơn trên các bài kiểm tra NLP tổng quát.”
Chi phí đào tạo một LLM từ đầu
Trong phân tích của chúng tôi, hãy xem ví dụ của mô hình Falcon 7B, một LLM có kích thước trung bình thể hiện hiệu suất đáng chú ý. Đáng chú ý, mô hình này có thể được đặt trên chỉ một GPU Nvidia V100 thông thường, giúp nó phù hợp cho nhiều ứng dụng.
MosaicML (được Databricks mua lại với giá 1,3 tỷ đô la) là một nền tảng cho phép bạn dễ dàng đào tạo và triển khai LLMs. Theo giá cả, một bản sao GPT-3 với 30 tỷ tham số có thể được đào tạo với chi phí đáng kể thấp, khoảng 450.000 đô la. Hơn nữa, mô hình nhỏ hơn nhưng mạnh mẽ với 7 tỷ tham số có thể được đào tạo với giá chỉ 30.000 đô la trong khi vẫn đáp ứng hiệu suất tương đương trên các nhiệm vụ cụ thể so với các đối thủ đắt tiền hơn.
Sử dụng Mô hình mã nguồn mở (OSS)
Sự có sẵn của các mô hình ngôn ngữ nền tảng mã nguồn mở đã giảm thiểu đáng kể chi phí phát triển LLM tùy chỉnh. Tổ chức hiện có thể chọn sử dụng các mô hình được đào tạo sẵn như mô hình nổi tiếng LLAMA-2 70B hoặc các tùy chọn dễ tiếp cận hơn như Falcon 7B của chúng tôi, sau đó điều chỉnh chúng bằng dữ liệu độc quyền để phù hợp với mục tiêu cụ thể của họ.
Landscape AI đang tiến triển nhanh chóng với việc các mô hình mới được ra mắt đều đặn, mang lại một loạt các tùy chọn cho các ứng dụng khác nhau. Để luôn cập nhật và chọn tùy chọn tốt nhất có thể, hãy kiểm tra bảng xếp hạng HF, nơi tất cả các mô hình OSS được liệt kê và đánh giá.
Chi phí huấn luyện mô hình mã nguồn mở
Việc đạt được một hiệu suất đỉnh mới (SOTA) trên một bộ dữ liệu nghiên cứu bằng cách điều chỉnh một mô hình mã nguồn mở có thể tiết kiệm chi phí. Ví dụ, CRFM Stanford đã sử dụng mô hình GPT của Huggingface và dữ liệu PubMed, tận dụng nền tảng MosaicML để tạo ra một mô hình có 2.7 tỷ tham số vượt qua hiệu suất SOTA trong đánh giá MedQA-USMLE. Tổng chi phí cho thành tựu này là 38.000 đô la.
Bằng cách sử dụng ngăn xếp phần mềm của chúng tôi, chúng tôi đã tổ chức quá trình đào tạo trên một cụm có 128 GPU NVIDIA A100–40GB và băng thông mạng 1600 Gb/giây giữa các nút. Các GPU vật lý được lưu trữ trên một nhà cung cấp điện toán đám mây hàng đầu. Thời gian đào tạo tổng cộng cho BioMedLM là khoảng 6,25 ngày. Sử dụng giá cơ bản 2 đô la/A100/giờ, tổng chi phí cho quá trình đào tạo này trên nền tảng MosaicML là khoảng 38.000 đô la.
Chi phí Điều chỉnh tinh vi Thông minh (QLoRa)
Việc điều chỉnh tinh vi các mô hình lớn, như một mô hình có 65 tỷ tham số, có thể tốn kém do yêu cầu bộ nhớ GPU lớn (>10 GPU A100 80 Gb). Tuy nhiên, các phương pháp như LoRa hoặc QLoRa cung cấp các giải pháp hiệu quả. LoRa cho thấy việc điều chỉnh mô hình không đòi hỏi việc đào tạo lại trọng số mô hình nền tảng, giảm chi phí tính toán. QLoRa còn cải thiện quá trình với các thủ thuật tính toán, duy trì hiệu suất trong khi cải thiện hiệu suất một cách đáng kể. Với QLoRa, việc điều chỉnh tinh vi có thể được thực hiện bằng chỉ một GPU A100. Chi tiết hơn về vấn đề này có trong bài báo này.
Sử dụng kỹ thuật QLoRa để điều chỉnh một mô hình như Falcon 7B có thể được thực hiện một cách hiệu quả về chi phí bằng cách sử dụng Google Colab Pro, với giá là 9,72 đô la mỗi tháng và bạn có thể hủy bất cứ lúc nào. Một tùy chọn khác là điều chỉnh trên máy tính cá nhân trang bị ít nhất 16 GB VRAM, một lựa chọn khả thi khác. Thiết lập này cho phép điều chỉnh tinh vi mô hình ngôn ngữ lớn một cách hiệu quả về chi phí với kết quả có thể so sánh với các phương pháp điều chỉnh truyền thống.
Phần tiếp theo sẽ tiết lộ chi phí thực tế liên quan đến triển khai một mô hình đã được đào tạo và sử dụng nó một cách hiệu quả.
4. Chi phí phục vụ mô hình ngôn ngữ – LLM
Sau khi đã khám phá các lợi ích và chi phí liên quan đến việc đào tạo một LLM tự lưu trữ trong các phần trước, bây giờ là lúc để làm rõ về các chi phí liên quan đến triển khai và sử dụng một mô hình đã được đào tạo.
Mặc dù việc điều chỉnh mang lại sự lạc quan, việc đạt được một mô hình có thể sử dụng và mở rộng đòi hỏi xem xét nhiều yếu tố hơn. Khả năng sẵn có vẫn là một thách thức, ngay cả đối với các nền tảng được đầu tư tốt như ChatGPT. Việc mở rộng các mô hình ngôn ngữ để có các trợ lý trò chuyện đáng tin cậy đòi hỏi kỹ thuật phức tạp và đầu tư liên tục, có thể là những khoản chi phí đáng kể vào hạ tầng để đảm bảo hiệu suất mượt mà trong thời gian sử dụng đỉnh điểm. Mở rộng hạ tầng cùng với lưu lượng người dùng có thể dẫn đến chi phí đáng kể.
Khác với việc đào tạo hoặc điều chỉnh, đó là các chi phí một lần hoặc định kỳ, các chi phí hoạt động liên quan đến việc phục vụ mô hình có thể đáng kể, được ảnh hưởng trực tiếp bởi khối lượng người dùng và tương tác với hệ thống. Các công ty phải quản lý và tối ưu hóa tài nguyên một cách cẩn thận để xử lý các mức lưu lượng khác nhau trong khi đảm bảo việc sử dụng LLM hiệu quả và tiết kiệm chi phí. Một quy trình được tính toán và tối ưu hóa cẩn thận là rất quan trọng cho những dự án như vậy.
Khi ước tính chi phí phục vụ một LLM, bạn cần xem xét các yếu tố sau:
- Kiến trúc mô hình – lý tưởng là lựa chọn mô hình nhỏ nhất có thể thực hiện nhiệm vụ và các kỹ thuật tối ưu hóa (quantisation, pruning, distillation), cùng với việc song song hóa hiệu quả (DataParallel, TensorParallel, ZeRO). Những yếu tố này ảnh hưởng đến yêu cầu tài nguyên và tổng chi phí.
- Độ dài đầu ra – Độ dài trung bình của đầu ra của mô hình ảnh hưởng đáng kể đến chi phí phục vụ cùng với số lượng yêu cầu. Tùy thuộc vào quá trình đào tạo của mô hình, các phản hồi có thể có độ dài khác nhau, từ câu trả lời ngắn đến câu trả lời phức tạp hơn. Các mô hình tạo ra nhiều token cho mỗi yêu cầu có chi phí cao hơn do thời gian tính toán tăng lên cần thiết để tạo ra từng token.
- Gom nhóm (Batching) – Gom nhóm là một khía cạnh quan trọng khi phục vụ một LLM. Các kích thước gom nhóm lớn tăng hiệu suất nhưng cũng có thể gây ra độ trễ cao hơn. Sử dụng các kỹ thuật như gom nhóm liên tục có thể mang lại cải tiến đáng kể về hiệu suất lên đến 23 lần.
- Tự động điều chỉnh (Autoscaling) – Trong ngữ cảnh của tự động điều chỉnh mô hình, thời gian khởi động đặt ra những thách thức đáng kể, đặc biệt là do thời gian tải chậm, có thể vượt quá 15 phút. Thời gian khởi động dài có thể làm cho tự động điều chỉnh trở nên không hiệu quả. Để giảm thiểu điều này, việc lưu trữ mô hình cục bộ và sử dụng ổ đĩa nhanh có thể giúp tăng tốc quá trình khởi động, đảm bảo tự động điều chỉnh hiệu quả hơn.
Chi phí máy chủ
Thường thì một LLM yêu cầu bộ nhớ GPU xấp xỉ gấp đôi số tham số. Ví dụ, mô hình Falcon của chúng tôi có 7 tỷ tham số, sẽ cần khoảng 14GB không gian GPU, giả định mỗi tham số sử dụng một số thực 16-bit (2 byte). Điều này có nghĩa rằng nó có thể phù hợp với một thẻ Nvidia V100 duy nhất.
Tuy nhiên, khi ưu tiên tính sẵn có cao và tính song song hiệu quả, việc dựa vào một thẻ GPU duy nhất không phải lúc nào cũng tối ưu. Trong những trường hợp như vậy, việc cấu hình bao gồm ít nhất bốn thẻ GPU được đề xuất để tận dụng hoàn toàn khả năng xử lý song song.
Ví dụ bảng giá dịch vụ thuê máy chủ của Amazon
Để đạt được phản hồi thời gian thực, việc vận hành máy liên tục là cần thiết do thời gian khởi động đáng kể được yêu cầu. Trong trường hợp này, một máy chủ có thể được đặt trước trong một khoảng thời gian dài để giảm chi phí.
- Máy tính rẻ nhất với 1 GPU có giá 0.402 đô la/giờ trong kế hoạch 3 năm.
- Máy tính rẻ nhất với 4 GPU có giá 2.269 đô la/giờ trong kế hoạch 3 năm.
Nhớ rằng giá này có thể biến đổi tùy thuộc vào nhà cung cấp cụ thể và khu vực địa lý của bạn. Việc đặt trước máy chủ trong một khoảng thời gian dài có thể giúp bạn tiết kiệm chi phí so với việc sử dụng máy chủ theo giờ.
Trong những trường hợp sử dụng cụ thể nơi tính sẵn có cao không quan trọng, việc chọn cách cung cấp máy tính theo yêu cầu là một phương pháp khả thi. Mặc dù phương pháp này mang lại chi phí theo giờ cao hơn, nó mang lại tiết kiệm chi phí đáng kể vì chúng ta chỉ trả tiền cho máy tính khi cần sử dụng.
- Máy tính rẻ nhất với 1 GPU có giá 1.006 đô la/giờ theo yêu cầu.
- Máy tính rẻ nhất với 4 GPU có giá 5.672 đô la/giờ theo yêu cầu.
Tùy thuộc vào nhu cầu của bạn và tính sẵn có yêu cầu của dự án, bạn có thể quyết định giữa việc sử dụng máy chủ theo kế hoạch dài hạn hoặc theo yêu cầu, dựa trên tính linh hoạt và sự tiết kiệm chi phí.
Trong những trường hợp nơi thiết lập hiện tại không đủ để duy trì thời gian phản hồi đủ chất lượng, tồn tại hai tùy chọn khả thi. Trước hết, có thể triển khai các phiên bản lớn hơn để đáp ứng yêu cầu. Thứ hai, có thể triển khai tự động hóa để cung cấp các phiên bản mới một cách linh hoạt. Phương pháp phục vụ mô hình phải phù hợp với các yêu cầu độc đáo và mục tiêu của doanh nghiệp.
6. Tổng kết
Sở hữu riêng các LLMs có thể dẫn đến việc tiết kiệm chi phí, thường khiến nó rẻ hơn việc phụ thuộc vào các nhà cung cấp bên ngoài và đồng thời mang lại nhiều lợi ích khác về bảo mật dữ liệu, hiệu suất và chiến lược. Mặc dù việc đào tạo một mô hình từ đầu có thể tốn kém, sử dụng các mô hình cơ sở và các kỹ thuật đổi mới như QLoRa có thể giảm chi phí đáng kể xuống chỉ còn vài đô la. Tuy nhiên, việc phục vụ các mô hình này trong lúc lưu lượng cao điểm hoặc các tình huống thời gian thực mang đến những thách thức, mặc dù nó vẫn có giá trị vừa túi tùy theo trường hợp sử dụng cụ thể.
Tổng chi phí của mô hình dựa trên Falcon 7B
Trong tình huống kinh tế nhất, phát triển một mô hình chuyên biệt dựa trên Falcon 7B sử dụng dữ liệu độc quyền có thể có chi phí 9.99 đô la khi sử dụng Google Colab Pro. Triển khai mô hình theo yêu cầu bằng chỉ một máy tính có 1 GPU có thể giữ chi phí dưới sự kiểm soát với giá 1.006 đô la/giờ.