Dostrajanie przy użyciu interfejsu Gemini API

Strategie projektowania promptów, takie jak prompty „few-shot”, nie zawsze zapewniają w odpowiednich wynikach wyszukiwania. Dostrajanie to proces, który może poprawić wydajność w konkretnych zadaniach lub pomaga modelowi zachować zgodność z określonymi danymi wyjściowymi. wymagania, gdy instrukcje są niewystarczające i masz zestaw przykładów które pozwolą Ci uzyskać oczekiwane wyniki.

Ta strona zawiera wskazówki dotyczące dostrajania modelu tekstowego stojącego za interfejsem Gemini API usługi SMS.

Jak działa dostrajanie

Celem dostrajania jest zwiększenie wydajności modelu konkretnego zadania. Dostrajanie polega na trenowaniu modelu który zawiera wiele przykładów zadania. W przypadku niszowych zadań możesz: znacząco poprawiła wydajność modelu przez dostrojenie modelu na skromny liczby przykładów.

Dane treningowe powinny być uporządkowane jako przykłady z danymi wejściowymi promptów oczekiwanych odpowiedzi. Możesz też dostroić modele bezpośrednio na podstawie danych przykładowych w Google AI Studio. Celem jest nauczenie modelu naśladowania oczekiwanego zachowania. lub zadaniu, podając wiele przykładów ilustrujących takie zachowanie lub zadanie.

Gdy uruchamiasz zadanie dostrajania, model uczy się dodatkowych parametrów, które pomagają mu zakodować informacje niezbędne do wykonania danego zadania lub poznać zachowanie użytkownika. Tych parametrów można później używać podczas wnioskowania. Dane wyjściowe funkcji zadanie dostrajania to nowy model, który jest właściwie kombinacją nowo utworzonych nauczone parametry i model oryginalny.

Przygotowywanie zbioru danych

Zanim zaczniesz dostrajać, potrzebujesz zbioru danych, za pomocą którego dostrój model. Dla: a najlepszą wydajność, przykłady w zbiorze danych powinny być wysokiej jakości, zróżnicowanych i reprezentatywnych dla prawdziwych danych wejściowych i wyjściowych.

Format

Przykłady zawarte w zbiorze danych powinny być zgodne z oczekiwaną wersją produkcyjną ruchu. Jeśli zbiór danych zawiera konkretne formatowanie, słowa kluczowe, instrukcje dane produkcyjne powinny być sformatowane w taki sam sposób, zawierają te same instrukcje.

Jeśli na przykład przykłady w zbiorze danych zawierają atrybuty "question:" i "context:", ruch produkcyjny powinien też być sformatowany tak, aby zawierał parametr "question:" i "context:" w tej samej kolejności, w jakiej występują w zbiorze danych przykłady. Jeśli wykluczysz kontekst, model nie rozpozna wzorca, nawet jeśli dokładne pytanie znajduje się w przykładzie w zbiorze danych.

Pomocne może też być dodanie promptu lub wprowadzenia do każdego przykładowego zbioru danych. poprawi wydajność dostrojonego modelu. Uwaga: jeśli prompt lub wprowadzenie to zawarte w zbiorze danych, należy go również uwzględnić w prompcie do dostrojonego w czasie wnioskowania.

Rozmiar danych treningowych

Możesz dostroić model, używając nawet 20 przykładów. Dane dodatkowe zasadniczo poprawia jakość odpowiedzi. Powinien to być 100, i 500 przykładów w zależności od zastosowania. Tabela poniżej pokazuje zalecane rozmiary zbiorów danych do dostrajania modelu tekstowego do różnych typowych zadań:

Zadanie Liczba przykładów w zbiorze danych
Klasyfikacja 100+
Podsumowywanie 100-500+
Wyszukiwanie dokumentów 100+

Prześlij zbiór danych dostrajania

Dane są przekazywane bezpośrednio przez interfejs API lub przez pliki przesłane do Google. AI Studio,

Kliknij przycisk Importuj i postępuj zgodnie z instrukcjami wyświetlanymi w oknie, aby zaimportować dane. z pliku lub wybierz uporządkowany prompt z przykładami do zaimportowania w ramach dostrajania w gromadzeniu danych.

Biblioteka klienta

Aby korzystać z biblioteki klienta, umieść plik danych w interfejsie createTunedModel . Maksymalny rozmiar pliku to 4 MB. Zapoznaj się z krótkim wprowadzeniem do dostrajania dzięki Pythona.

cURL

Aby wywołać interfejs API REST za pomocą cURL, udostępnij przykłady treningowe w formacie JSON do argumentu training_data. Zapoznaj się z krótkim wprowadzeniem do dostrajania w cURL, aby rozpocząć.

Zaawansowane ustawienia dostrajania

Podczas tworzenia zadania dostrajania możesz określić te ustawienia zaawansowane:

  • Epoki: pełne zaliczenie całego zestawu treningowego, dzięki któremu każdy został przetworzony raz.
  • Wielkość wsadu: zbiór przykładów używanych w 1 powtarzaniu trenowania. rozmiar wsadu określa liczbę przykładów we wsadzie.
  • Tempo uczenia się: liczba zmiennoprzecinkowa, która informuje algorytm, jak aby dostosować parametry modelu przy każdej iteracji. Na przykład plik tempo uczenia się 0,3 spowodowałoby 3-krotne dostosowanie wagi i odchylenia niż tempo uczenia się wynoszące 0,1. Wysokie i niskie wskaźniki uczenia się zawierają unikalne kompromisy i należy je dostosować odpowiednio do przypadku użycia.
  • Mnożnik tempa uczenia się: mnożnik szybkości oryginalne tempo uczenia się. Wartość 1 wykorzystuje pierwotne tempo uczenia się model atrybucji. Wartości większe niż 1 zwiększają tempo uczenia się i wartości od 1 a 0 obniża tempo uczenia się.

W tabeli poniżej znajdziesz zalecane konfiguracje dostrajania model podstawowy:

Hiperparametr Wartość domyślna Zalecane dostosowania
Epoch 5

Jeśli straty zacznie spadać przed 5 epokami, użyj mniejszej wartości.

Jeśli strata się zbiega i nie wydaje się być płaskowyżem, użyj większej wartości.

Wielkość wsadu 4
Tempo uczenia się 0,001 W przypadku mniejszych zbiorów danych używaj mniejszej wartości.

Krzywa strat pokazuje, jak bardzo prognoza modelu odbiega od idealnej wartości w przykładach treningowych po każdej epoce. w miarę możliwości w najniższym punkcie krzywej tuż przed płaskowyżem. Przykład: Poniższy wykres przedstawia płaskowyż krzywej straty w okresie 4–6 epoki, co oznacza, że możesz ustawić parametr Epoch na 4, ale nadal uzyskiwać taką samą skuteczność.

Wykres liniowy przedstawiający krzywą straty modelu. Linia gwałtownie się zwiększa
pierwszej i drugiej epoki, po czym ostro spada do prawie 0 i wynosi poziom
po trzech epokach.

Sprawdzanie stanu zadania dostrajania

Stan zadania dostrajania możesz sprawdzić w Google AI Studio w Moja biblioteka lub za pomocą właściwości metadata dostrojonego modelu w Gemini API.

Rozwiązywanie problemów

Ta sekcja zawiera wskazówki dotyczące rozwiązywania błędów, które mogą wystąpić podczas podczas tworzenia modelu dostrojonego.

Uwierzytelnianie

Dostrajanie przy użyciu interfejsu API i biblioteki klienta wymaga uwierzytelnienia użytkownika. klucz interfejsu API, nie jest wystarczające. Jeśli wyświetla się błąd 'PermissionDenied: 403 Request had insufficient authentication scopes', musisz skonfigurować użytkownika uwierzytelnianie.

Aby skonfigurować dane logowania OAuth dla Pythona, zapoznaj się z informacjami o konfiguracji OAuth .

Anulowane modele

Zadanie dostrajania możesz anulować w dowolnym momencie przed jego zakończeniem. Pamiętaj jednak: wydajność wnioskowania w anulowanym modelu jest nieprzewidywalna, zwłaszcza jeśli zadanie dostrajania jest anulowane na wczesnym etapie trenowania. Jeśli anulowano, ponieważ chcesz przerwać trenowanie we wcześniejszej epoce, utwórz nowe dostrajanie i ustaw niższą wartość epoki.

Co dalej?