Dostrajanie modelu Gemma

Dostrajanie modelu generatywnej sztucznej inteligencji (AI), takiego jak Gemma, zmienia jego zachowanie. Model Gemma jest zwykle dostrajany w celu zwiększenia jego wydajności w przypadku konkretnego zadania lub domeny albo w celu lepszego pełnienia określonej roli, np. obsługi klienta. Modele Gemma są udostępniane z otwartymi wagami, co oznacza, że możesz je modyfikować, a to z kolei zmienia działanie modelu. Ogólne kroki dostrajania modelu Gemma są następujące:

Wybierz platformę

Modele Gemma są zgodne z różnymi platformami do dostrajania AI. Każda platforma ma różne zalety i jest zwykle ograniczona do określonego formatu modelu. Oto przewodniki dotyczące dostrajania modeli Gemma za pomocą różnych platform:

Upewnij się, że wybrana platforma obsługuje format modelu wdrożenia, np. format Keras, Safetensors lub GGUF.

Zbieranie danych

Dostrajanie modelu wymaga danych. Dane do dostrajania zwykle składają się z par danych wejściowych i oczekiwanych odpowiedzi. W internecie jest dostępnych wiele publicznych zbiorów danych, które można wykorzystać do trenowania modeli w różnych zadaniach lub do generowania różnych wyników. Jeśli na przykład chcesz wytrenować model Gemma, aby tłumaczył opisy części samochodowych na numery części, Twój zbiór danych może zawierać te informacje:

training_data = [
  {"input_text": "Part number for A4 brake caliper", "output_text": "4M0615107BS"},
  {"input_text": "Part number for Beetle fuel pump", "output_text": "6A127026H"},
  {"input_text": "Part number for Camaro cylinder head", "output_text": "12711770"},
]

Jeśli chcesz, aby model Gemma wykonywał określony zestaw zadań lub pełnił określoną rolę, musisz zwykle skompilować zbiór danych zawierający wiele odmian tego zadania. Ilość danych potrzebnych do dostrojenia modelu zależy od Twoich celów, a zwłaszcza od tego, jak dużą zmianę w zachowaniu modelu chcesz uzyskać i jak dobrze ma on działać w zależności od zadania do wykonania i poziomu zmienności danych wejściowych.

Zacznij od małego zbioru danych do dostrajania zadania, dostosuj parametry trenowania i dodawaj dane, aż uzyskasz skuteczność zadania, która spełni Twoje potrzeby. Niektóre z naszych przykładowych aplikacji pokazują, że na zachowanie modelu Gemma można wpływać za pomocą zaledwie 20 par promptów i odpowiedzi. Więcej informacji znajdziesz w tych artykułach: Tworzenie asystenta AI do obsługi firmowej poczty e-mail za pomocą modelu GemmaWykonywanie zadań w językach mówionych za pomocą modelu Gemma.

Dostrajanie i testowanie modelu

Gdy masz już strukturę dostrajania i dane do dostrajania, możesz rozpocząć proces dostrajania modelu Gemma. Podczas dostrajania masz kilka opcji, które wpływają na zasoby potrzebne do jego przeprowadzenia. Powinien też mieć plan testowania dostosowanego modelu, aby ocenić, czy po dostosowaniu działa on zgodnie z oczekiwaniami.

Dostrajanie konkretnych parametrów

Podczas dostrajania modelu o otwartych wagach, takiego jak Gemma, możesz dostrajać wszystkie parametry modelu lub użyć mniej wymagającej techniki dostrajania, która aktualizuje tylko ich podzbiór. Podejście pełnego dostrajania oznacza, że podczas stosowania danych dostrajania obliczasz nowe wagi wszystkich parametrów modelu. To podejście wymaga dużej mocy obliczeniowej i pamięci, ponieważ obliczenia są wykonywane dla miliardów parametrów. Stosowanie mniej wymagających metod dostrajania, zwanych dostrajaniem opartym na ograniczonej liczbie parametrów (PEFT), w tym technik takich jak dostrajanie za pomocą adaptera o niskiej randze (LoRA), może dać podobne wyniki przy mniejszym zużyciu zasobów obliczeniowych. Szczegółowe informacje o dostrajaniu przy użyciu mniejszej liczby zasobów za pomocą LoRA znajdziesz w artykułach Dostrajanie modeli Gemma w Keras przy użyciu LoRADostrajanie modeli Gemma w Hugging Face.

Testowanie dostrojonych modeli

Po dostrojeniu modelu do konkretnego zadania należy przetestować jego wydajność w przypadku zestawu zadań, które ma on wykonywać. Model należy testować za pomocą zadań lub próśb, do których nie był specjalnie trenowany. Sposób testowania dostrojonego modelu zależy od zadania, które ma on wykonywać, oraz od tego, jak dokładnie zarządzasz danymi wejściowymi i wyjściowymi modelu. Częstym sposobem zarządzania testowaniem modeli generatywnych jest używanie przypadków sukcesu, porażki i przypadków granicznych:

  • Testy skuteczności: żądania, które dostrojony model powinien zawsze być w stanie wykonać.
  • Testy niepowodzeń: żądania, których dostrojony model nigdy nie powinien być w stanie wykonać lub powinien wyraźnie odmawiać wykonania, jeśli zostanie o to poproszony.
  • Testy graniczne: żądania, które dostrojony model powinien być w stanie wykonać, jeśli mieszczą się w określonej granicy lub zbiorze granic akceptowalnego zachowania wyjściowego.

Podczas testowania warunków awarii lub warunków brzegowych aplikacji generatywnej AI należy również stosować podejścia, techniki i narzędzia związane z bezpieczeństwem generatywnej AI opisane w zestawie narzędzi do odpowiedzialnego korzystania z generatywnej AI.

Wdróż model

Po zakończeniu dostrajania i pomyślnym przeprowadzeniu testów możesz wdrożyć model. Informacje o wdrażaniu dostrojonego modelu znajdziesz zwykle w dokumentacji wybranej platformy.

Jeśli wdrażasz model z wagami dostrojonymi za pomocą LoRA, pamiętaj, że w przypadku tej techniki zwykle wdrażasz zarówno oryginalny model, jak i jego wagi z wagami LoRA jako dodatkową warstwą obliczeniową modelu.