Udostępnij za pośrednictwem


Pojęcia — dostrajanie modeli językowych dla przepływów pracy sztucznej inteligencji i uczenia maszynowego

W tym artykule dowiesz się więcej o dostrajaniu modeli językowych, w tym o niektórych typowych metodach i sposobach stosowania wyników dostrajania, które mogą poprawić wydajność przepływów pracy sztucznej inteligencji i uczenia maszynowego w usłudze Azure Kubernetes Service (AKS).

Wstępnie wytrenowane modele językowe

Wstępnie wytrenowane modele językowe (PLM) oferują dostępny sposób na rozpoczęcie wnioskowania sztucznej inteligencji i są powszechnie używane w przetwarzaniu języka naturalnego (NLP). Maszyny PLM są szkolone w corpora tekstu na dużą skalę z Internetu przy użyciu głębokich sieci neuronowych i mogą być dostosowane do mniejszych zestawów danych dla określonych zadań. Modele te zwykle składają się z miliardów parametrów lub wag, które są poznane podczas procesu wstępnego trenowania.

Maszyny PLM mogą uczyć się reprezentacji języka uniwersalnego, które przechwytują właściwości statystyczne języka naturalnego, takie jak prawdopodobieństwo słów lub sekwencji wyrazów występujących w danym kontekście. Te reprezentacje można przenosić do podrzędnych zadań, takich jak klasyfikacja tekstu, rozpoznawanie nazwanych jednostek i odpowiadanie na pytania, przez precyzyjne dostrajanie modelu w zestawach danych specyficznych dla zadań.

Zalety i wady

W poniższej tabeli wymieniono niektóre zalety i wady używania bibliotek PLM w przepływach pracy sztucznej inteligencji i uczenia maszynowego:

Plusy Minusy
• Szybko rozpocznij wdrażanie w cyklu życia uczenia maszynowego.
• Unikaj dużych kosztów obliczeń związanych z trenowaniem modelu.
• Zmniejsza konieczność przechowywania dużych, oznaczonych etykietami zestawów danych.
• Może udostępniać uogólnione lub nieaktualne odpowiedzi na podstawie wstępnie trenowanych źródeł danych.
• Może nie być odpowiedni dla wszystkich zadań lub domen.
• Wydajność może się różnić w zależności od kontekstu wnioskowania.

Metody dostrajania szczegółowego

Wydajne dostrajanie parametrów

Wydajne dostrajanie parametrów (PEFT) to metoda dostrajania maszyn PLM w stosunkowo małych zestawach danych z ograniczonymi zasobami obliczeniowymi. PeFT używa kombinacji technik, takich jak metody addytywne i selektywne, aby zaktualizować wagi, aby poprawić wydajność modelu na określonych zadaniach. PeFT wymaga minimalnych zasobów obliczeniowych i elastycznych ilości danych, dzięki czemu nadaje się do ustawień niskiego zasobu. Ta metoda zachowuje większość wag oryginalnego wstępnie wytrenowanego modelu i aktualizuje pozostałe wagi w celu dopasowania do danych specyficznych dla kontekstu, oznaczonych etykietami.

Adaptacja o niskiej rangi

Adaptacja o niskiej rangi (LoRA) to metoda PEFT często używana do dostosowywania dużych modeli językowych na potrzeby nowych zadań. Ta metoda śledzi zmiany wag modelu i efektywnie przechowuje mniejsze macierze wagowe reprezentujące tylko parametry trenowania modelu, zmniejszając użycie pamięci i moc obliczeniową potrzebną do dostrajania. Usługa LoRA tworzy wyniki dostrajania, znane jako warstwy adaptera, które można tymczasowo przechowywać i ściągać do architektury modelu na potrzeby nowych zadań wnioskowania.

Kwantyzowana adaptacja o niskiej rangi (QLoRA) to rozszerzenie loRA, które dodatkowo zmniejsza użycie pamięci przez wprowadzenie kwantyzacji do warstw adaptera. Aby uzyskać więcej informacji, zobacz Making LLMs even more accessible with bitsandbites, 4-bitowej kwantyzacji i QLoRA.

Eksperymentowanie z dostrajaniem modeli językowych w usłudze AKS

Kubernetes AI Toolchain Operator (KAITO) to operator typu open source, który automatyzuje małe i duże wdrożenia modeli językowych w klastrach Kubernetes. Dodatek łańcucha narzędzi sztucznej inteligencji korzysta z narzędzia KAITO, aby uprościć dołączanie, oszczędzać na kosztach infrastruktury i skrócić czas wnioskowania dla modeli typu open source w klastrze usługi AKS. Dodatek automatycznie aprowizuje odpowiednie węzły procesora GPU i konfiguruje skojarzony serwer wnioskowania jako serwer punktu końcowego do wybranego modelu.

Dzięki programowi KAITO w wersji 0.3.0 lub nowszej można wydajnie dostroić obsługiwane modele MIT i Apache 2.0 z następującymi funkcjami:

  • Zapisz dane ponownego trenowania jako obraz kontenera w prywatnym rejestrze kontenerów.
  • Hostowanie nowego obrazu warstwy karty w prywatnym rejestrze kontenerów.
  • Efektywne ściąganie obrazu na potrzeby wnioskowania za pomocą warstw adaptera w nowych scenariuszach.

Aby uzyskać wskazówki dotyczące rozpoczynania pracy z dostrajaniem w usłudze KAITO, zobacz dokumentację interfejsu API obszaru roboczego dostrajania Kaito. Aby dowiedzieć się więcej na temat wdrażania modeli językowych za pomocą usługi KAITO w klastrach usługi AKS, zobacz repozytorium GitHub modelu KAITO.

Ważne

Oprogramowanie typu open source jest wymienione w dokumentacji i przykładach usługi AKS. Wdrażane oprogramowanie jest wykluczone z umów dotyczących poziomu usług AKS, ograniczonej gwarancji i pomoc techniczna platformy Azure. W miarę korzystania z technologii open source wraz z usługą AKS zapoznaj się z opcjami pomocy technicznej dostępnymi w odpowiednich społecznościach i opiekunami projektów, aby opracować plan.

Na przykład repozytorium Ray GitHub opisuje kilka platform, które różnią się w czasie odpowiedzi, celu i poziomie pomocy technicznej.

Firma Microsoft ponosi odpowiedzialność za tworzenie pakietów typu open source wdrażanych w usłudze AKS. Ta odpowiedzialność obejmuje posiadanie pełnej własności procesu kompilacji, skanowania, podpisywania, weryfikowania i poprawek oraz kontroli nad plikami binarnymi na obrazach kontenerów. Aby uzyskać więcej informacji, zobacz Zarządzanie lukami w zabezpieczeniach dla usług AKS i pokrycie pomocy technicznej usługi AKS.

Następne kroki

Aby dowiedzieć się więcej na temat konteneryzowanych obciążeń sztucznej inteligencji i uczenia maszynowego w usłudze AKS, zobacz następujące artykuły: