Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Important
Elementy oznaczone podglądem w tym artykule są obecnie w wersji zapoznawczej. Ta wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług, a Microsoft nie zaleca korzystania z niej w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą nie być obsługiwane lub mogą mieć ograniczone możliwości. Aby uzyskać więcej informacji, zobacz Warunki dodatkowe korzystania z testowych wersji Microsoft Azure.
Important
Szkolenie interaktywne wymaga wyraźnej zgody na dostęp. Poproś o dostęp za pośrednictwem formularza rejestracji w wersji zapoznawczej i poczekaj na zatwierdzenie przed utworzeniem sesji szkoleniowej.
Trening interaktywny umożliwia programowi kontrolowanie sposobu, w jaki model uczy się, podczas gdy Microsoft Foundry uruchamia model. Twój program, nazywany również programem szkolącym, wybiera przykłady, ocenia odpowiedzi i decyduje, kiedy zaktualizować model.
Poniższe pojęcia wyjaśniają, jak elementy pętli treningowej pasują do siebie. Aby uzyskać szczegółowe informacje o kodzie i implementacji, zobacz ściągawka SDK.
Sesje szkoleniowe
Sesja szkoleniowa przechowuje model i jego bieżący postęp trenowania podczas wykonywania eksperymentu. Sterownik żąda poszczególnych operacji, takich jak generowanie odpowiedzi lub zastosowanie aktualizacji.
Sesja pełni inny cel niż zarządzane zadanie lub wdrożenie:
| Resource | Purpose |
|---|---|
| Interaktywna sesja szkoleniowa | Twój program kontroluje pętlę trenowania jedną operację naraz. |
| Zarządzane zadanie dostrajania | Usługa uruchamia wstępnie zdefiniowany przepływ pracy trenowania z danych i ustawień, które podajesz. |
| Udostępnianie wdrożenia | Wytrenowany model odpowiada na żądania od aplikacji. |
sterownik utrzymuje sesję aktywną podczas wykonywania eksperymentu. Postęp przechowywany tylko w sesji nie jest trwałym zapisem; ukończony punkt kontrolny szkolenia zachowuje go.
Adaptery LoRA
Model podstawowy to model, z którym zaczynasz. Jego wagi to wyuczone wartości, które kształtują jego zachowanie.
Adapter adaptacji niskiego rzędu (LoRA) jest małym zestawem trenowalnych wag dodanych do modelu podstawowego. Trenowanie zmienia adapter, zamiast ponownie trenować wszystkie oryginalne wagi modelu.
Adapter zawiera to, czego nauczył się eksperyment. Pozostaje on powiązany z zgodnym modelem bazowym; nie jest to autonomiczny zamiennik tego modelu.
Aby uzyskać szczegółowe informacje o implementacji, zobacz Tworzenie sesji.
Poziomy szkoleniowe
Warstwa trenowania opisuje opcję usługi używaną do uruchamiania trenowania. Warstwy cenowe mogą się różnić miejscem, w którym odbywa się trenowanie, sposobem zapewniania przepustowości oraz gwarancjami usługi, które mają zastosowanie.
Dostępne opcje zależą od modelu, regionu i projektu. Poziomy szkolenia są oddzielone od opcji wdrażania używanych do obsługi wytrenowanego modelu. Zobacz Typy szkolenia.
Formatowanie komunikatu
Komunikaty muszą zostać przekonwertowane na postać, którą rozumie wybrany model. Ten format rozróżnia również monity użytkownika, odpowiedzi asystenta i informacje zwracane przez narzędzia.
- Tokeny to małe jednostki tekstu, takie jak wyrazy lub części wyrazów, które model odczytuje i generuje.
- Tokenizer konwertuje tekst na tokeny i tokeny z powrotem na tekst.
- Szablon czatu organizuje wiadomości, aby model mógł odróżnić osoby mówiące i rozpoznać, gdzie zaczyna się odpowiedź.
- Renderer przygotowuje komunikaty w formacie modelu i konwertuje wygenerowane odpowiedzi z powrotem na czytelną zawartość.
Różne modele mogą używać różnych formatów komunikatów. Spójne formatowanie pomaga programowi szkoleniowemu określić, które części interakcji powinny przyczynić się do nauki.
Trenowanie oparte na obrazach wymaga również zgodnego modelu wizyjno-językowego i obsługi trenowania na obrazach dla projektu. Program formatujący komunikat, który rozumie obrazy, nie potwierdza, że dostępne są dla nich dane szkoleniowe.
Pętla trenowania
Trenowanie interakcyjne oddziela generowanie odpowiedzi, obliczanie sygnałów uczenia i stosowanie aktualizacji. Program sterownika łączy te operacje w przepływ pracy.
| Operation | Co to znaczy |
|---|---|
| Pobieranie próbek | Model generuje odpowiedzi na podstawie wybranej migawki adaptera. |
| Przejście w przód | Model przetwarza przykłady, dzięki czemu można mierzyć stratę lub analizować sygnały uczenia bez akumulowania zmian na potrzeby aktualizacji. |
| Obliczanie gradientu | Trenowanie oblicza, w jaki sposób wagi adaptera mogą ulec zmianie, aby poprawić cel nauki. |
| Aktualizacja optymalizatora | Optymalizator stosuje skumulowane gradienty w celu zmiany adaptera. |
| Oceny | Twój model mierzy skuteczność na przykładach, które są oddzielonych od treningu. |
Gradienty kolorów opisują potencjalne zmiany w adapterze. optymalizator zamienia te gradienty w aktualizację. Obliczanie gradientów nie zmienia samego adaptera.
Kilka zestawów przykładów może wnosić gradienty do jednej aktualizacji. Po aktualizacji próbkowanie wymaga odświeżonej migawki, aby użyć najnowszego wyuczonego stanu adaptera.
Ocena używa przykładów odłożonych, które nie są używane do trenowania, aby sprawdzić skuteczność w zadaniu, które Cię interesuje. Sama niższa strata treningowa lub wyższa nagroda treningowa nie świadczy o lepszej wydajności.
Odpowiednie operacje w kodzie można znaleźć w ściągawce zestawu SDK.
Funkcje straty i wagi tokenów
Funkcja straty wyraża cel, który proces trenowania stara się zoptymalizować. Przekształca przykłady i sygnały szkoleniowe w miarę, która ukierunkowuje zmiany w adapterze.
| Podejście do uczenia się | Co zawiera aktualizacja |
|---|---|
| Uczenie nadzorowane | Żądane odpowiedzi pokazują modelowi, co należy utworzyć. |
| Uczenie wzmacniające | Wyniki i porównania między wygenerowanymi odpowiedziami wskazują, które zachowanie należy wzmocnić. |
Funkcja straty jest jedną częścią przepływu pracy. Nie wybiera przykładów, nie ocenia odpowiedzi ani nie decyduje o zakończeniu trenowania.
Wagi tokenów kontrolują, jak silnie części przykładu przyczyniają się do nauki. Maski wykluczają części, które nie powinny być uwzględniane.
Na przykład przepływ pracy nadzorowanego uczenia może uczyć się na podstawie odpowiedzi asystenta bez konieczności odtwarzania polecenia użytkownika.
W przypadku uczenia ze wzmocnieniem sygnał szkoleniowy rozróżnia również odpowiedzi generowane przez model od informacji dostarczanych przez użytkownika lub środowisko. Używa on informacji z modelu, który wygenerował każdą odpowiedź, nawet jeśli model zmieni się później.
Cele niestandardowe mogą łączyć dane wyjściowe modelu z obliczeniami w kodzie sterującym. Moduł sterujący nadal koordynuje sygnały uczenia i aktualizacje modelu.
Aby zapoznać się ze strukturami danych i przykładami, zobacz Przygotowywanie nadzorowanych danych i Przygotowywanie danych RL.
Jak łączone są sygnały uczenia
Różne cele mogą łączyć sygnały szkoleniowe inaczej, na przykład przez dodawanie ich razem lub uśrednianie ich. Połączenie niezgodnych podejść w jednej aktualizacji może zmienić jej skalę lub spowodować, że usługa ją odrzuci.
Wkłady do tej samej aktualizacji wymagają spójnego sposobu łączenia sygnałów uczenia. Aktualizacja zostanie ukończona, zanim przepływ pracy przejdzie do niezgodnego podejścia.
Nagrody, premiery i zalety
W uczeniu przez wzmacnianie twój sterownik ocenia, co robi model, i zamienia tę ocenę w sygnał uczenia.
| Pojęcie | Meaning |
|---|---|
| Wdrażanie | Wygenerowana odpowiedź lub dłuższa interakcja, która może obejmować wywołania narzędzi i obserwacje. |
| Nagroda | Wynik opisujący, jak dobrze wdrożenie spełnia cel zadania. Program przypisuje ten wynik. |
| Przewaga | Porównanie wskazujące, czy odpowiedź działa lepiej, czy gorzej niż odniesienie, takie jak inne odpowiedzi na ten sam monit. |
Jedno podejście generuje kilka odpowiedzi na ten sam monit i porównuje każdą nagrodę z średnią nagrodą grupy:
- Powyżej średniej: Odpowiedź ma przewagę.
- Poniżej średniej: Odpowiedź ma ujemną korzyść.
- Równe nagrody: Wszystkie odpowiedzi mają zerową przewagę, więc to porównanie nie dostarcza sygnału uczenia.
W przypadku zadania matematycznego nagroda może odzwierciedlać, czy ostateczna odpowiedź jest poprawna. Sam wysoki wynik formatowania nie dowodzi, że odpowiedź jest poprawna.
Sterownik definiuje reguły klasyfikacji i metodę porównywania. Aby zapoznać się z kompletnymi przykładami, zapoznaj się z repozytorium przykładów dostrajania.
Ukończenie operacji
Uruchomienie każdej operacji zajmuje trochę czasu. Serwis akceptujący żądanie różni się od ukończenia realizacji żądanego zadania.
| Status | Co ci to mówi |
|---|---|
| zaakceptowane | Usługa odbiera żądanie. Zadanie może nadal czekać lub być uruchomione. |
| Completed | Operacja kończy się, a jej wynik może być używany przez operację zależną. |
| Przekroczono limit czasu | Twój kierowca przestaje czekać. Nie dowodzi to, że operacja kończy się błędem lub zatrzymuje się w usłudze. |
Kolejność ma znaczenie: aktualizacja zależy od ukończonego obliczenia gradientu, a próbkowanie z nowych wag zależy od ukończonego odświeżania. Brak wyniku nie jest prawidłowym wynikiem ani pomiarem zerowym.
Aby uzyskać szczegółowe informacje na temat implementacji, zobacz Używanie operacji asynchronicznych.
Checkpoints
Checkpoint rejestruje stan modelu w określonym punkcie. Punkty kontrolne trenowania i punkty kontrolne samplera zachowują różne informacje.
| Typ | Co zachowuje | Do czego tego używasz |
|---|---|---|
| Punkt kontrolny szkolenia | Poznane wagi adaptera i zapis wcześniejszych aktualizacji optymalizatora. | Odzyskiwanie postępu lub kontynuowanie szkolenia w kompatybilnej sesji. |
| Punkt przywracania próbkowania | Migawka wag adaptera do generowania odpowiedzi. | Próbkowanie z wybranej wersji adaptera bez informacji potrzebnych do wznowienia trenowania. |
Odświeżanie próbkatora przygotowuje najnowszy stan adaptera do generowania. Nie jest to zamiennik zapisanego checkpointu treningu i niekoniecznie tworzy trwały artefakt.
Twój moduł przechowuje własny stan, na przykład informacje o tym, których przykładów już użył i kiedy następuje ocena. Punkt kontrolny modelu nie przywraca tego postępu automatycznie.
Żaden typ punktu kontrolnego nie jest punktem końcowym aplikacji. Użycie wytrenowanego modelu w aplikacji jest oddzielnym zadaniem wdrażania.
Aby zapoznać się z przykładami kodu, zobacz Zapisywanie i wznawianie trenowania.
Cykl życia sesji
Odciążanie zwalnia aktywne zasoby szkoleniowe sesji. Służy do innego celu niż usuwanie sesji i zapisanych artefaktów.
| Action | Meaning |
|---|---|
| Sprawdzić | Sprawdź stan sesji i zidentyfikuj zapisane punkty kontrolne. |
| Wyładuj | Zwolnij zasoby obliczeniowe aktywnej sesji. To nie jest usuwanie punktu kontrolnego. |
| Delete | Usuń sesję. Może to również usuwać swoje punkty kontrolne i zasoby próbkowania. |
Przesyłanie żądania wyładowania nie potwierdza ukończenia czyszczenia. Zamknięcie połączenia sieciowego programu obsługi również nie jest tym samym co zwolnienie sesji.
Ukończony punkt kontrolny szkolenia pozwala zachować postęp przed zakończeniem sesji. Usunięcie sesji może usunąć ten zapisany stan, więc usunięcie nie jest wymienne z zwalnianiem zasobów obliczeniowych.
Aby uzyskać szczegółowe informacje o implementacji, zobacz Zamykanie zasobów.
Treści powiązane
Zapoznaj się z tymi zasobami, gdy będziesz gotowy do korzystania z tych pojęć:
- Rozpocznij interaktywne szkolenie, aby uruchomić krótki scenariusz szkoleniowy.
- Ściągawka SDK z przykładami kodu i szczegółami implementacji.
- Przykłady dostrajania na GitHub na potrzeby kompletnych przepływów pracy trenowania.