Dostrajanie modeli Phi-3 w usłudze Azure AI Studio
Ważne
Elementy oznaczone (wersja zapoznawcza) w tym artykule są obecnie dostępne w publicznej wersji zapoznawczej. Ta wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie zalecamy korzystania z niej w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą być nieobsługiwane lub ograniczone. Aby uzyskać więcej informacji, zobacz Uzupełniające warunki korzystania z wersji zapoznawczych platformy Microsoft Azure.
Usługa Azure AI Studio umożliwia dostosowanie dużych modeli językowych do Twoich osobistych zestawów danych przy użyciu procesu znanego jako dostrajanie. Dostrajanie zapewnia znaczącą wartość dzięki włączeniu dostrajania i optymalizacji dla określonych zadań i aplikacji. Prowadzi to do zwiększenia wydajności, wydajności kosztów, mniejszego opóźnienia i dostosowanych danych wyjściowych.
Z tego artykułu dowiesz się, jak dostosować rodzinę modeli małych języków (SLMs) phi-3 w usłudze Azure AI Studio jako usługę z płatnością zgodnie z rzeczywistym użyciem.
Rodzina SLMs Phi-3 to kolekcja modeli tekstowych dostrajania instrukcji. Modele Phi-3 są najbardziej zdolnymi i opłacalnymi modelami małych języków (SLM), przewyższając modele o tym samym rozmiarze i następnym rozmiarze w różnych językach, rozumowaniu, kodowaniu i testach porównawczych matematycznych.
Ważne
Modele, które są w wersji zapoznawczej, są oznaczone jako wersja zapoznawcza na kartach modeli w wykazie modeli.
Phi-3 Mini to parametry 3,8B, lekki, najnowocześniejszy model otwarty oparty na zestawach danych używanych dla phi-2 - syntetycznych danych i przefiltrowanych witryn internetowych - z naciskiem na wysokiej jakości, rozumowanie gęstych danych. Model należy do rodziny modeli Phi-3, a wersja Mini jest obsługiwana w dwóch wariantach 4K i 128K, czyli długości kontekstu (w tokenach).
Model przeszedł rygorystyczny proces ulepszania, obejmujący zarówno nadzorowane dostrajanie, jak i bezpośrednią optymalizację preferencji w celu zapewnienia dokładnego przestrzegania instrukcji i niezawodnych środków bezpieczeństwa. Podczas oceny testów porównawczych ze zdrowym rozsądkiem, zrozumieniem języka, matematyką, kodem, długim kontekstem i rozumowaniem logicznym, Phi-3 Mini-4K-Instruct i Phi-3 Mini-128K-Instruct zaprezentowali niezawodną i najnowocześniejsze wyniki wśród modeli z mniej niż 13 miliardów parametrów.
Następujące modele są dostępne w usłudze Azure AI Studio for Phi 3 podczas dostosowywania jako usługi z płatnością zgodnie z rzeczywistym użyciem:
Phi-3-mini-4k-instruct
(wersja zapoznawcza)Phi-3-mini-128k-instruct
(wersja zapoznawcza)
Dostrajanie modeli Phi-3 jest obecnie obsługiwane w projektach znajdujących się w regionie Wschodnie stany USA 2.
Wymagania wstępne
Subskrypcja platformy Azure. Jeśli nie masz subskrypcji platformy Azure, utwórz płatne konto platformy Azure, aby rozpocząć.
-
Ważne
W przypadku modeli rodzinnych Phi-3 model płatności zgodnie z rzeczywistym użyciem jest dostępny tylko w przypadku centrów utworzonych w regionach Wschodnie stany USA 2 .
Kontrola dostępu oparta na rolach (RBAC) platformy Azure służy do udzielania dostępu do operacji w usłudze Azure AI Studio. Aby wykonać kroki opisane w tym artykule, konto użytkownika musi mieć przypisaną rolę dewelopera usługi Azure AI w grupie zasobów.
Aby uzyskać więcej informacji na temat uprawnień, zobacz Kontrola dostępu oparta na rolach w usłudze Azure AI Studio.
Rejestracja dostawcy subskrypcji
Sprawdź, czy subskrypcja jest zarejestrowana u dostawcy Microsoft.Network
zasobów.
- Zaloguj się w witrynie Azure Portal.
- Wybierz pozycję Subskrypcje z menu po lewej stronie.
- Wybierz subskrypcję, której chcesz użyć.
- Wybierz pozycję Ustawienia>Dostawcy zasobów z menu po lewej stronie.
- Upewnij się, że aplikacja Microsoft.Network znajduje się na liście dostawców zasobów. W przeciwnym razie dodaj go.
Przygotowywanie danych
Przygotuj dane szkoleniowe i weryfikacyjne, aby dostroić model. Dane szkoleniowe i zestawy danych do walidacji składają się z przykładów wejściowych i wyjściowych pokazujących, jak ma działać model.
Upewnij się, że wszystkie przykłady trenowania są zgodne z oczekiwanym formatem wnioskowania. Aby efektywnie dostroić modele, upewnij się, że zestaw danych jest zrównoważony i zróżnicowany.
Obejmuje to utrzymywanie równowagi danych, w tym różnych scenariuszy i okresowe udoskonalanie danych treningowych w celu dopasowania ich do rzeczywistych oczekiwań, co ostatecznie prowadzi do dokładniejszej i zrównoważonej odpowiedzi modelu.
Różne typy modeli wymagają innego formatu danych treningowych.
Uzupełnianie czatu
Używane dane trenowania i walidacji muszą być sformatowane jako dokument JSON Lines (JSONL). W przypadku Phi-3-mini-128k-instruct
zestawu danych dostrajania należy sformatować w formacie konwersacyjnym, który jest używany przez interfejs API uzupełniania czatów.
Przykładowy format pliku
{"messages": [{"role": "system", "content": "You are an Xbox customer support agent whose primary goal is to help users with issues they are experiencing with their Xbox devices. You are friendly and concise. You only provide factual answers to queries, and do not provide answers that are not related to Xbox."}, {"role": "user", "content": "Is Xbox better than PlayStation?"}, {"role": "assistant", "content": "I apologize, but I cannot provide personal opinions. My primary job is to assist you with any issues related to your Xbox device. Do you have any Xbox-related issues that need addressing?"}]}
{"messages": [{"role": "system", "content": "You are an Xbox customer support agent whose primary goal is to help users with issues they are experiencing with their Xbox devices. You are friendly and concise. You only provide factual answers to queries, and do not provide answers that are not related to Xbox."}, {"role": "user", "content": "Can I play PC games on my Xbox?"}, {"role": "assistant", "content": "While Xbox consoles don't natively support PC games, they can play an array of Xbox games, many of which are also available on PC. Can I assist you with finding games compatible with your Xbox device?"}]}
{"messages": [{"role": "system", "content": "You are an Xbox customer support agent whose primary goal is to help users with issues they are experiencing with their Xbox devices. You are friendly and concise. You only provide factual answers to queries, and do not provide answers that are not related to Xbox."}, {"role": "user", "content": "I'm having trouble connecting my Xbox to the Wi-Fi."}, {"role": "assistant", "content": "No worries, let's go through the network settings on your Xbox. Can you please tell me what happens when you try to connect it to the Wi-Fi?"}]}
Obsługiwany typ pliku to Linie JSON. Pliki są przesyłane do domyślnego magazynu danych i udostępniane w projekcie.
Dostrojenie modelu Phi-3
Aby dostosować model Phi-3:
Zaloguj się do usługi Azure AI Studio.
Wybierz model, który chcesz dostosować z katalogu modeli usługi Azure AI Studio.
Na stronie Szczegóły modelu wybierz pozycję Dostosuj.
Wybierz projekt, w którym chcesz dostosować modele. Aby korzystać z oferty modelu płatności zgodnie z rzeczywistym użyciem, obszar roboczy musi należeć do regionu Wschodnie stany USA 2 .
W kreatorze dostrajania wybierz link Do warunków użytkowania usługi Azure AI Studio, aby dowiedzieć się więcej na temat warunków użytkowania. Możesz również wybrać kartę Szczegółów oferty usługi Azure AI Studio, aby dowiedzieć się więcej o cenach dla wybranego modelu.
Jeśli po raz pierwszy dostrajasz model w projekcie, musisz zasubskrybować projekt dla konkretnej oferty (na przykład Phi-3-mini-128k-instruct) z usługi Azure AI Studio. Ten krok wymaga, aby Twoje konto ma uprawnienia subskrypcji platformy Azure i uprawnienia grupy zasobów wymienione w wymaganiach wstępnych. Każdy projekt ma własną subskrypcję konkretnej oferty usługi Azure AI Studio, która umożliwia kontrolowanie i monitorowanie wydatków. Wybierz pozycję Subskrybuj i dostosuj.
Uwaga
Subskrybowanie projektu do określonej oferty usługi Azure AI Studio (w tym przypadku Phi-3-mini-128k-poinstruowanie) wymaga, aby Twoje konto ma dostęp współautora lub właściciela na poziomie subskrypcji, na którym został utworzony projekt. Alternatywnie konto użytkownika może mieć przypisaną rolę niestandardową, która ma uprawnienia subskrypcji platformy Azure i uprawnienia grupy zasobów wymienione w wymaganiach wstępnych.
Po zarejestrowaniu projektu dla określonej oferty usługi Azure AI Studio kolejne dostrajanie tej samej oferty w tym samym projekcie nie wymaga ponownego subskrybowania. W związku z tym nie musisz mieć uprawnień na poziomie subskrypcji dla kolejnych zadań dostrajania. Jeśli ten scenariusz ma zastosowanie do Ciebie, wybierz pozycję Kontynuuj, aby dostroić.
Wprowadź nazwę dostosowanego modelu oraz opcjonalne tagi i opis.
Wybierz dane szkoleniowe, aby dostosować model. Aby uzyskać więcej informacji, zobacz przygotowywanie danych.
Uwaga
Jeśli masz pliki trenowania/walidacji w magazynie danych mniej poświadczeń, musisz zezwolić na dostęp tożsamości zarządzanej obszaru roboczego do magazynu danych, aby kontynuować dostosowywanie usługi MaaS przy użyciu mniej magazynu poświadczeń. Na stronie "Magazyn danych" po kliknięciu pozycji "Aktualizuj uwierzytelnianie" > Wybierz następującą opcję:
Upewnij się, że wszystkie przykłady trenowania są zgodne z oczekiwanym formatem wnioskowania. Aby efektywnie dostroić modele, upewnij się, że zestaw danych jest zrównoważony i zróżnicowany. Obejmuje to utrzymywanie równowagi danych, w tym różnych scenariuszy i okresowe udoskonalanie danych treningowych w celu dopasowania ich do rzeczywistych oczekiwań, co ostatecznie prowadzi do dokładniejszej i zrównoważonej odpowiedzi modelu.
- Rozmiar partii do użycia do trenowania. W przypadku ustawienia wartości -1 batch_size jest obliczana jako 0,2% przykładów w zestawie treningowym, a maksymalna wartość to 256.
- Współczynnik dostrajania uczenia to oryginalny współczynnik uczenia używany do wstępnego trenowania pomnożonego przez ten mnożnik. Zalecamy eksperymentowanie z wartościami z zakresu od 0,5 do 2. Empirycznie okazało się, że większe wskaźniki uczenia często działają lepiej z większymi rozmiarami partii. Musi należeć do przedziału od 0,0 do 5,0.
- Liczba epok treningowych. Epoka odnosi się do jednego pełnego cyklu w zestawie danych.
Parametry zadania są opcjonalnym krokiem i zaawansowaną opcją — dostrajanie hiperparametrów jest niezbędne do optymalizacji dużych modeli językowych (LLM) w rzeczywistych aplikacjach. Umożliwia zwiększenie wydajności i wydajnego użycia zasobów. Użytkownicy mogą zachować ustawienia domyślne lub użytkownicy zaawansowani mogą dostosowywać parametry, takie jak epoki lub szybkość nauki.
Przejrzyj wybrane opcje i przejdź do trenowania modelu.
Po dostrojeniu modelu możesz wdrożyć model i użyć go we własnej aplikacji, na placu zabaw lub w przepływie monitu. Aby uzyskać więcej informacji, zobacz How to deploy Phi-3 family of large language models with Azure AI Studio (Jak wdrożyć rodzinę dużych modeli językowych Phi-3 za pomocą programu Azure AI Studio).
Czyszczenie dostosowanych modeli
Możesz usunąć dostosowany model z listy dostrajania modeli w usłudze Azure AI Studio lub na stronie szczegółów modelu. Wybierz dostosowany model do usunięcia ze strony Dostrajanie szczegółowe, a następnie wybierz przycisk Usuń, aby usunąć dostosowany model.
Uwaga
Nie można usunąć modelu niestandardowego, jeśli ma istniejące wdrożenie. Przed usunięciem modelu niestandardowego należy najpierw usunąć wdrożenie modelu.
Koszt i przydziały
Zagadnienia dotyczące kosztów i limitów przydziału dla modeli Phi-3 dostrojonych jako usługa
Modele Phi dostosowane jako usługa są oferowane przez firmę Microsoft i zintegrowane z usługą Azure AI Studio do użycia. Ceny można znaleźć podczas wdrażania lub dostrajania modeli na karcie Cennik i terminy w kreatorze wdrażania.
Filtrowanie zawartości
Modele wdrożone jako usługa z płatnością zgodnie z rzeczywistym użyciem są chronione przez bezpieczeństwo zawartości usługi Azure AI. Po wdrożeniu w punktach końcowych czasu rzeczywistego możesz zrezygnować z tej funkcji. Po włączeniu bezpieczeństwa zawartości sztucznej inteligencji platformy Azure zarówno monit, jak i ukończenie przechodzą przez zespół modeli klasyfikacji mających na celu wykrywanie i zapobieganie wyjściu szkodliwej zawartości. System filtrowania zawartości (wersja zapoznawcza) wykrywa i podejmuje działania dotyczące określonych kategorii potencjalnie szkodliwej zawartości zarówno w monitach wejściowych, jak i w przypadku uzupełniania danych wyjściowych. Dowiedz się więcej o bezpieczeństwie zawartości usługi Azure AI.