Udostępnij za pośrednictwem


Dokumentacja: uzupełnienia | Azure Machine Learning

Tworzy ukończenie dla podanego monitu i parametrów.

POST /completions?api-version=2024-04-01-preview
Nazwisko W Wymagania Type Opis
api-version zapytanie Prawda string Wersja interfejsu API w formacie "RRRR-MM-DD" lub "RRRR-MM-DD-preview".

Nagłówek żądania

Nazwisko Wymagania Type Opis
dodatkowe parametry string Zachowanie interfejsu API w przypadku wskazania dodatkowych parametrów w ładunku. Użycie pass-through polecenia sprawia, że interfejs API przekazuje parametr do bazowego modelu. Użyj tej wartości, jeśli chcesz przekazać parametry, które wiesz, że bazowy model może obsługiwać. Użycie ignore polecenia sprawia, że interfejs API usuwa dowolny nieobsługiwany parametr. Użyj tej wartości, jeśli musisz użyć tego samego ładunku w różnych modelach, ale jeden z dodatkowych parametrów może spowodować błąd modelu, jeśli nie jest obsługiwany. Użycie error polecenia sprawia, że interfejs API odrzuca dowolny dodatkowy parametr w ładunku. Można wskazać tylko parametry określone w tym interfejsie API lub zwracany jest błąd 400.
azureml-model-deployment string Nazwa wdrożenia, do którego chcesz skierować żądanie. Obsługiwane w przypadku punktów końcowych obsługujących wiele wdrożeń.

Treść żądania

Nazwisko Wymagania Type Opis
monit Prawda Monity o wygenerowanie uzupełniania dla ciągów zakodowanych jako ciąg, tablica ciągów, tablica tokenów lub tablica tablicy tablic tokenów. Należy pamiętać, że <\|endoftext\|> jest separatorem dokumentu, który widzi model podczas trenowania, więc jeśli monit nie zostanie określony, model zostanie wygenerowany tak, jakby od początku nowego dokumentu.
frequency_penalty Liczba Wartości dodatnie karzeją nowe tokeny na podstawie ich istniejącej częstotliwości w tekście do tej pory, zmniejszając prawdopodobieństwo powtórzeń tego samego wiersza.
max_tokens integer Maksymalna liczba tokenów, które można wygenerować w zakończeniu. Liczba tokenów monitu plus max_tokens nie może przekraczać długości kontekstu modelu.
presence_penalty Liczba Wartości dodatnie karzą nowe tokeny na podstawie tego, czy są one wyświetlane w tekście do tej pory, zwiększając prawdopodobieństwo, że model będzie mówił o nowych tematach.
nasienie integer Jeśli zostanie określony, model wykonuje najlepsze wysiłki, aby próbkować deterministycznie, tak aby powtarzające się żądania z tymi samymi seed parametrami i zwracały ten sam wynik.

Determinizm nie jest gwarantowany i należy odwołać się do parametru system_fingerprint odpowiedzi w celu monitorowania zmian w zapleczu.
zatrzymać Sekwencje, w których interfejs API przestanie generować kolejne tokeny. Zwrócony tekst nie będzie zawierać sekwencji zatrzymania.
strumień boolean Czy przesyłać strumieniowo częściowy postęp. W przypadku ustawienia tokeny będą wysyłane jako zdarzenia wysyłane tylko do serwera, gdy staną się dostępne, a strumień zostanie zakończony komunikatemdata: [DONE].
temperature Liczba Jaka temperatura próbkowania ma być używana z zakresu od 0 do 2. Wyższe wartości, takie jak 0,8, sprawią, że dane wyjściowe będą bardziej losowe, a niższe wartości, takie jak 0,2, sprawią, że będzie bardziej skoncentrowany i deterministyczny.

Ogólnie zalecamy zmianę temperature lub top_p , ale nie obie.
top_p Liczba Alternatywą dla próbkowania z temperaturą, nazywaną próbkowaniem jądra, gdzie model uwzględnia wyniki tokenów z top_p masą prawdopodobieństwa. Dlatego 0,1 oznacza, że uwzględniane są tylko tokeny składające się z pierwszej masy prawdopodobieństwa o 10%.

Ogólnie zalecamy zmianę top_p lub temperature , ale nie obie.

Odpowiedzi

Nazwisko Pisz Opis
200 OK CreateCompletionResponse OK
401 Brak autoryzacji Brak autoryzacji Brak tokenu dostępu lub jest on nieprawidłowy

Nagłówki

x-ms-error-code: ciąg
404 Nie znaleziono NotFoundError Modalność nie jest obsługiwana przez model. Zapoznaj się z dokumentacją modelu, aby sprawdzić, które trasy są dostępne.

Nagłówki

x-ms-error-code: ciąg
422 Jednostka nieprzetworzona UnprocessableContentError Żądanie zawiera nieprzetworzoną zawartość

Nagłówki

x-ms-error-code: ciąg
429 Zbyt wiele żądań TooManyRequestsError Przekroczono przypisany limit szybkości, a żądanie musi zostać przekroczone.

Nagłówki

x-ms-error-code: ciąg
Inne kody stanu ContentFilterError Nieprawidłowe żądanie

Nagłówki

x-ms-error-code: ciąg

Zabezpieczenia

Autoryzacja

Token z prefiksem Bearer: , np. Bearer abcde12345

Typ: apiKey
W: nagłówek

AADToken

Uwierzytelnianie OAuth2 w usłudze Azure Active Directory

Typ: oauth2
Przepływ: aplikacja
Adres URL tokenu: https://login.microsoftonline.com/common/oauth2/v2.0/token

Przykłady

Tworzy uzupełnianie dla podanego monitu i parametrów

Przykładowe żądanie

POST /completions?api-version=2024-04-01-preview

{
  "prompt": "This is a very good text",
  "frequency_penalty": 0,
  "presence_penalty": 0,
  "max_tokens": 256,
  "seed": 42,
  "stop": "<|endoftext|>",
  "stream": false,
  "temperature": 0,
  "top_p": 1
}

Przykładowa odpowiedź

Kod stanu: 200

{
  "id": "1234567890",
  "model": "llama2-7b",
  "choices": [
    {
      "index": 0,
      "finish_reason": "stop",
      "text": ", indeed it is a good one."
    }
  ],
  "created": 1234567890,
  "object": "text_completion",
  "usage": {
    "prompt_tokens": 15,
    "completion_tokens": 8,
    "total_tokens": 23
  }
}

Definicje

Nazwa/nazwisko opis
Choices Lista opcji ukończenia czatu.
CompletionFinishReason Przyczyna, dla którego model przestał generować tokeny. Dzieje się tak stop , jeśli model osiągnie naturalny punkt zatrzymania lub podaną sekwencję zatrzymania, length jeśli osiągnięto maksymalną liczbę tokenów określonych w żądaniu, content_filter jeśli zawartość została pominięta z powodu flagi z filtrów zawartości.
UkończenieUsage Statystyki użycia dla żądania ukończenia.
ContentFilterError Wywołanie interfejsu API kończy się niepowodzeniem, gdy monit wyzwoli filtr zawartości zgodnie z konfiguracją. Zmodyfikuj monit i spróbuj ponownie.
CreateCompletionRequest
CreateCompletionResponse Reprezentuje odpowiedź ukończenia z interfejsu API.
Szczegół
TextCompletionObject Typ obiektu, który jest zawsze "text_completion"
UnprocessableContentError

Opcje wyboru

Lista opcji ukończenia czatu.

Nazwisko Pisz Opis
finish_reason CompletionFinishReason Przyczyna, dla którego model przestał generować tokeny. Dzieje się tak stop , jeśli model osiągnie naturalny punkt zatrzymania lub podaną sekwencję zatrzymania, length jeśli osiągnięto maksymalną liczbę tokenów określonych w żądaniu, content_filter jeśli zawartość została pominięta z powodu flagi z filtrów zawartości, tool_calls jeśli model nazwał narzędzie.
index integer Indeks wybranego elementu na liście opcji.
text string Wygenerowany tekst.

CompletionFinishReason

Przyczyna, dla którego model przestał generować tokeny. Dzieje się tak stop , jeśli model osiągnie naturalny punkt zatrzymania lub podaną sekwencję zatrzymania, length jeśli osiągnięto maksymalną liczbę tokenów określonych w żądaniu, content_filter jeśli zawartość została pominięta z powodu flagi z filtrów zawartości.

Nazwisko Pisz Opis
content_filter string
length string
zatrzymać string

UkończenieUsage

Statystyki użycia dla żądania ukończenia.

Nazwisko Pisz Opis
completion_tokens integer Liczba tokenów w wygenerowanych ukończeniu.
prompt_tokens integer Liczba tokenów w wierszu polecenia.
total_tokens integer Łączna liczba tokenów używanych w żądaniu (monit + ukończenie).

ContentFilterError

Wywołanie interfejsu API kończy się niepowodzeniem, gdy monit wyzwoli filtr zawartości zgodnie z konfiguracją. Zmodyfikuj monit i spróbuj ponownie.

Nazwisko Pisz Opis
code string Kod błędu.
error string Opis błędu.
wiadomość string Komunikat o błędzie.
Param string Parametr, który wyzwolił filtr zawartości.
status integer Kod stanu HTTP.

CreateCompletionRequest

Nazwisko Type Wartość domyślna opis
frequency_penalty Liczba 0 Wartości dodatnie karzeją nowe tokeny na podstawie ich istniejącej częstotliwości w tekście do tej pory, zmniejszając prawdopodobieństwo powtórzeń tego samego wiersza.
max_tokens integer 256 Maksymalna liczba tokenów, które można wygenerować w zakończeniu. Liczba tokenów monitu plus max_tokens nie może przekraczać długości kontekstu modelu.
presence_penalty Liczba 0 Wartości dodatnie karzą nowe tokeny na podstawie tego, czy są one wyświetlane w tekście do tej pory, zwiększając prawdopodobieństwo, że model będzie mówił o nowych tematach.
monit <\|endoftext\|> Monity o wygenerowanie uzupełniania dla ciągów zakodowanych jako ciąg, tablica ciągów, tablica tokenów lub tablica tablicy tablic tokenów. Należy pamiętać, że <\|endoftext\|> jest separatorem dokumentu, który widzi model podczas trenowania, więc jeśli monit nie zostanie określony, model zostanie wygenerowany tak, jakby od początku nowego dokumentu.
nasienie integer Jeśli zostanie określony, nasz system podejmie najlepsze wysiłki, aby próbkować deterministycznie, tak aby powtarzające się żądania z tymi samymi seed parametrami zwracały ten sam wynik.

Determinizm nie jest gwarantowany i należy odwołać się do parametru system_fingerprint odpowiedzi w celu monitorowania zmian w zapleczu.
zatrzymać Sekwencje, w których interfejs API przestanie generować kolejne tokeny. Zwrócony tekst nie będzie zawierać sekwencji zatrzymania.
strumień boolean Fałsz Czy przesyłać strumieniowo częściowy postęp. W przypadku ustawienia tokeny będą wysyłane jako zdarzenia wysyłane tylko do serwera, gdy staną się dostępne, a strumień zostanie zakończony komunikatemdata: [DONE].
temperature Liczba 1 Jaka temperatura próbkowania ma być używana z zakresu od 0 do 2. Wyższe wartości, takie jak 0,8, sprawią, że dane wyjściowe będą bardziej losowe, a niższe wartości, takie jak 0,2, sprawią, że będzie bardziej skoncentrowany i deterministyczny.

Ogólnie zalecamy zmianę tego lub top_p nie obu tych elementów.
top_p Liczba 1 Alternatywą dla próbkowania z temperaturą, nazywaną próbkowaniem jądra, gdzie model uwzględnia wyniki tokenów z top_p masą prawdopodobieństwa. Dlatego 0,1 oznacza, że uwzględniane są tylko tokeny składające się z pierwszej masy prawdopodobieństwa o 10%.

Ogólnie zalecamy zmianę tego lub temperature nie obu tych elementów.

CreateCompletionResponse

Reprezentuje odpowiedź ukończenia z interfejsu API. Uwaga: obiekty odpowiedzi przesyłane strumieniowo i niestreamed mają ten sam kształt (w przeciwieństwie do punktu końcowego czatu).

Nazwisko Pisz Opis
Wyborów Wybory[] Lista opcji uzupełniania dla modelu wygenerowanego dla monitu wejściowego.
utworzone integer Sygnatura czasowa systemu Unix (w sekundach) czasu utworzenia ukończenia.
IDENTYFIKATOR string Unikatowy identyfikator ukończenia.
model string Model używany do ukończenia.
obiekt TextCompletionObject Typ obiektu, który jest zawsze "text_completion"
system_fingerprint string Ten odcisk palca reprezentuje konfigurację zaplecza, z którą działa model.

Można użyć z parametrem seed żądania, aby zrozumieć, kiedy wprowadzono zmiany zaplecza, które mogą mieć wpływ na determinizm.
użycie UkończenieUsage Statystyki użycia dla żądania ukończenia.

Szczegół

Nazwisko Pisz Opis
Loc string[] Parametr powodujący problem
wartość string Wartość przekazana do parametru powoduje problemy.

TextCompletionObject

Typ obiektu, który jest zawsze "text_completion"

Nazwisko Pisz Opis
text_completion string

ListObject

Typ obiektu, który jest zawsze "list".

Nazwisko Pisz opis
lista string

NotFoundError

Nazwisko Pisz Opis
error string Opis błędu.
wiadomość string Komunikat o błędzie.
status integer Kod stanu HTTP.

TooManyRequestsError

Nazwisko Pisz Opis
error string Opis błędu.
wiadomość string Komunikat o błędzie.
status integer Kod stanu HTTP.

Brak autoryzacji

Nazwisko Pisz Opis
error string Opis błędu.
wiadomość string Komunikat o błędzie.
status integer Kod stanu HTTP.

UnprocessableContentError

Nazwisko Pisz Opis
code string Kod błędu.
szczegóły Szczegół
error string Opis błędu.
wiadomość string Komunikat o błędzie.
status integer Kod stanu HTTP.