Podstawowe pojęcia dotyczące usługi LLMs
Istnieje kilka podstawowych pojęć, które są ważne, aby zrozumieć, aby skutecznie korzystać z llMs, czyli tokenów i monitów.
- Monit: monit to zdanie tekstowe używane do poinstruowania usługi LLM. W zależności od tego, jak sformułowasz zdanie, uzyskujesz różne wyniki.
- Token: token może być pojedynczym znakiem, ułamkiem słowa lub całym wyrazem. Pojedynczy token może służyć do reprezentowania typowych słów, podczas gdy wiele tokenów jest potrzebnych do reprezentowania mniej typowych słów.
Polecenia
Wiersz tekstowy to zdanie. LlM rozumie kilka różnych języków. Możesz pisać monity w swoim języku bez konieczności nauki określonego języka do pracy z llm. Zobacz następujące przykłady monitów:
Wygeneruj obraz różowej papuczki z pirackim kapeluszem.
Utwórz aplikację internetową w języku Python, która obsługuje klientów.
Bardziej szczegółowe informacje o tym, o co prosisz, tym lepszy jest wynik.
Tokeny
Token to podstawowy tekst jednostkowy lub kod, który może zrozumieć i przetworzyć moduł LLM.
Modele języka naturalnego OpenAI nie działają na słowach ani znakach jako jednostkach tekstu, ale na czymś między: tokenami.
Interfejs OpenAI udostępnia przydatną witrynę internetową tokenizatora, która może pomóc zrozumieć, jak tokenizuje twoje żądania. Aby uzyskać więcej informacji, zobacz Tokenizer OpenAI.
Uwaga
Po rozpoczęciu wpisywania w polu monitu tokenizer openAI licznik wydaje się zliczać łączną liczbę tokenów w polu.
Jeśli aktywnie piszesz, aktualizacja licznika może potrwać kilka sekund.
Ile tokenów jest w następujących słowach?
Spróbujmy określić liczbę tokenów dla następujących słów apple
, blueberries
i Skarsgård
.
Ponieważ słowo apple
jest wspólnym słowem, wymaga reprezentowania jednego tokenu. Z drugiej strony słowo blueberries
wymaga reprezentowania dwóch tokenów (blue
i berries
). Chyba że słowo jest wspólne, nazwy właściwe, takie jak Skarsgård
wymagają reprezentowania wielu tokenów.
Ta reprezentacja tokenu umożliwia modelom sztucznej inteligencji generowanie wyrazów, których nie można znaleźć w żadnym słowniku bez konieczności generowania tekstu na podstawie liter.
Uwaga
Generowanie tekstu list po literach może łatwo spowodować gibberish.
Jak działa ukończenie?
Modele języka naturalnego generują uzupełnianie po jednym tokenie w sposób niedeterministyczny.
W każdym kroku model emituje listę tokenów i skojarzonych z nimi wag. Następnie interfejs API próbkuje jeden token z listy na podstawie jego wagi. Znacznie ważone tokeny są bardziej prawdopodobne, że zostaną wybrane.
Interfejs API dodaje wybrany token do monitu i powtarza proces do momentu osiągnięcia maksymalnej długości tokenów ukończenia lub do momentu wygenerowania przez model specjalnego tokenu o nazwie tokenu zatrzymania, co uniemożliwia generowanie nowych tokenów.
Ten niedeterministyczny proces sprawia, że model generuje nowe wyrazy za każdym razem, gdy wysyłamy żądanie ukończenia.
Uwaga
Każdy moduł LLM ma limit liczby tokenów, które może wygenerować. W przypadku uzupełniania ten limit dotyczy całkowitej liczby tokenów w oryginalnym monicie i nowo wygenerowanych, gdy są one dodawane razem. Aby uzyskać więcej informacji na temat limitów tokenów, zobacz Modele usługi Azure OpenAI Service.
Większe limity tokenów umożliwiają dłuższe uzupełnianie i znacznie większe monity.