Megosztás a következőn keresztül:


Referencia: Csevegés befejezése | Azure Machine Learning

Modellválaszt hoz létre az adott csevegéshez.

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

URI-paraméterek

Név In Kötelező Típus Leírás
api-verzió Lekérdezés Igaz húr Az API verziója "YYYY-MM-DD" vagy "YYYY-MM-DD-preview" formátumban.

Kérelem fejléce

Név Kötelező Típus Leírás
extra paraméterek húr Az API viselkedése, amikor a hasznos adatok további paramétereket jeleznek. A használatával pass-through az API átadja a paramétert a mögöttes modellnek. Ezt az értéket akkor használja, ha olyan paramétereket szeretne átadni, amelyeket az alapul szolgáló modell támogat. Az API használatával ignore elveti a nem támogatott paramétereket. Ezt az értéket akkor használja, ha ugyanazokat a hasznos adatokat kell használnia a különböző modelleken, de az egyik extra paraméter miatt előfordulhat, hogy a modell hibát jelez, ha nem támogatott. A használatával error az API elutasítja a hasznos adatokban lévő további paramétereket. Csak az API-ban megadott paraméterek jelezhetők, vagy 400-es hiba jelenik meg.
azureml-model-deployment húr Annak az üzemelő példánynak a neve, amelyhez a kérést irányítani szeretné. Több üzembe helyezést támogató végpontok esetén támogatott.

Kérelem törzse

Név Kötelező Típus Leírás
üzenet Igaz ChatCompletionRequestMessage Az eddig a beszélgetésből álló üzenetek listája. 422-s hibát ad vissza, ha a modell legalább néhány üzenetet nem tud értelmezni.
frequency_penalty szám Segít megelőzni a szóismétléseket azáltal, hogy csökkenti annak az esélyét, hogy egy szó ki legyen jelölve, ha már használatban van. Minél magasabb a gyakorisági büntetés, annál kevésbé valószínű, hogy a modell ugyanazokat a szavakat ismétli a kimenetében. 422-s hibát ad vissza, ha a modell nem támogatja az értéket vagy paramétert.
max_tokens egész szám A csevegés befejezésekor létrehozható jogkivonatok maximális száma.

A bemeneti jogkivonatok és a létrehozott jogkivonatok teljes hosszát a modell környezethossza korlátozza. A null érték megadása miatt a modell a környezet maximális hosszát használja.
presence_penalty szám Segít megelőzni, hogy ugyanazokat a témaköröket ismételje meg egy szó büntetésével, ha már létezik a befejezésben, akár csak egyszer is. 422-s hibát ad vissza, ha a modell nem támogatja az értéket vagy paramétert.
response_format ChatCompletionResponseFormat
mag egész szám Ha meg van adva, a rendszerünk mindent megtesz annak érdekében, hogy determinisztikus mintát hozzon létre, így az azonos seed és paraméterekkel rendelkező ismétlődő kérelmeknek ugyanazt az eredményt kell visszaadnia. A determinizmus nem garantált, és a háttérrendszer változásainak figyeléséhez tekintse meg a system_fingerprint válaszparamétert.
állj Olyan sorozatok, amelyekben az API leállítja a további jogkivonatok generálását.
patak Logikai Ha be van állítva, a rendszer részleges üzenet-különbözeteket küld. A jogkivonatok csak a kiszolgáló által küldött eseményekként lesznek elküldve, amint elérhetővé válnak, és a streamet egy data: [DONE] üzenet leállítja.
hőmérséklet szám Nem negatív szám. 422-et ad vissza, ha a modell nem támogatja az értéket.
tool_choice ChatCompletionToolChoiceOption Azt szabályozza, hogy a modell melyik függvényt hívja meg (ha van ilyen). none azt jelenti, hogy a modell nem hív meg függvényt, hanem létrehoz egy üzenetet. auto azt jelenti, hogy a modell választhat az üzenet létrehozása vagy egy függvény meghívása között. Egy adott függvény megadása a modell meghívására kényszeríti {"type": "function", "function": {"name": "my_function"}} a modellt.

none az alapértelmezett, ha nincsenek függvények. auto az alapértelmezett, ha függvények vannak jelen. 422-s hibát ad vissza, ha a modell nem támogatja az eszközt.
eszközök ChatCompletionTool[] A modell által meghívható eszközök listája. Jelenleg csak a függvények támogatottak eszközként. Ezzel megadhatja azon függvények listáját, amelyekhez a modell JSON-bemeneteket hozhat létre. 422-s hibát ad vissza, ha a modell nem támogatja az eszközt.
top_p szám A hőmérséklettel történő mintavételezés alternatíva, az úgynevezett magmintavétel, ahol a modell a tokenek eredményeit top_p valószínűségi tömeggel veszi figyelembe. A 0.1 tehát csak a felső 10%-os valószínűségi tömeget tartalmazó jogkivonatokat jelenti.

Általában azt javasoljuk, hogy módosítsa ezt vagy temperature mindkettőt, de nem mindkettőt.

Válaszok

Név Típus Leírás
200 OK CreateChatCompletionResponse OK
401 Nem engedélyezett UnauthorizedError A hozzáférési jogkivonat hiányzik vagy érvénytelen

Fejlécek

x-ms-error-code: sztring
404 Nem található NotFoundError A modell nem támogatja a modalitást. Ellenőrizze a modell dokumentációját, hogy mely útvonalak érhetők el.

Fejlécek

x-ms-error-code: sztring
422 Feldolgozhatatlan entitás UnprocessableContentError A kérelem feldolgozhatatlan tartalmat tartalmaz

Fejlécek

x-ms-error-code: sztring
429 – Túl sok kérelem TooManyRequestsError Elérte a hozzárendelt sebességkorlátot, és a kérést tempóba kell helyeznie.

Fejlécek

x-ms-error-code: sztring
Egyéb állapotkódok ContentFilterError Hibás kérés

Fejlécek

x-ms-error-code: sztring

Biztonság

Engedélyezés

A jogkivonat az Bearer: előtaggal, például: Bearer abcde12345

Típus: apiKey
In: header

AADToken

Azure Active Directory OAuth2-hitelesítés

Típus: oauth2
Folyamat: alkalmazás
Jogkivonat URL-címe: https://login.microsoftonline.com/common/oauth2/v2.0/token

Példák

Modellválasz létrehozása az adott csevegéshez

Kérésminta

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

{
  "messages": [
    {
      "role": "system",
      "content": "You are a helpful assistant"
    },
    {
      "role": "user",
      "content": "Explain Riemann's conjecture"
    },
    {
      "role": "assistant",
      "content": "The Riemann Conjecture is a deep mathematical conjecture around prime numbers and how they can be predicted. It was first published in Riemann's groundbreaking 1859 paper. The conjecture states that the Riemann zeta function has its zeros only at the negative even integers and complex numbers with real part 1/21. Many consider it to be the most important unsolved problem in pure mathematics. The Riemann hypothesis is a way to predict the probability that numbers in a certain range are prime that was also devised by German mathematician Bernhard Riemann in 18594."
    },
    {
      "role": "user",
      "content": "Ist it proved?"
    }
  ],
  "frequency_penalty": 0,
  "presence_penalty": 0,
  "max_tokens": 256,
  "seed": 42,
  "stop": "<|endoftext|>",
  "stream": false,
  "temperature": 0,
  "top_p": 1,
  "response_format": { "type": "text" }
}

Mintaválasz

Állapotkód: 200

{
  "id": "1234567890",
  "model": "llama2-70b-chat",
  "choices": [
    {
      "index": 0,
      "finish_reason": "stop",
      "message": {
        "role": "assistant",
        "content": "No, it has never been proved"
      }
    }
  ],
  "created": 1234567890,
  "object": "chat.completion",
  "usage": {
    "prompt_tokens": 205,
    "completion_tokens": 5,
    "total_tokens": 210
  }
}

Definíciók

Név Leírás
ChatCompletionRequestMessage
ChatCompletionMessageContentPart
ChatCompletionMessageContentPartType
ChatCompletionToolChoiceOption Azt szabályozza, hogy a modell melyik függvényt hívja meg (ha van ilyen). none azt jelenti, hogy a modell nem hív meg függvényt, hanem létrehoz egy üzenetet. auto azt jelenti, hogy a modell választhat az üzenet létrehozása vagy egy függvény meghívása között. Egy adott függvény megadása a modell meghívására kényszeríti {"type": "function", "function": {"name": "my_function"}} a modellt.

none az alapértelmezett, ha nincsenek függvények. auto az alapértelmezett, ha függvények vannak jelen. 422-s hibát ad vissza, ha a modell nem támogatja az eszközt.
ChatCompletionFinishReason A modell leállította a jogkivonatok létrehozásának leállítását. Ez akkor történik stop , ha a modell egy természetes leállítási pontra vagy egy megadott leállítási sorrendre ütközik, length ha elérte a kérelemben megadott jogkivonatok maximális számát, content_filter ha a tartalom a tartalomszűrők jelölője miatt kimaradt, tool_calls ha a modell eszközt hívott.
ChatCompletionMessageToolCall
ChatCompletionObject Az objektum típusa, amely mindig chat.completion.
ChatCompletionResponseFormat A modell válaszformátuma. A JSON mód engedélyezése, json_object amely garantálja, hogy a modell által generált üzenet érvényes JSON. JSON mód használata esetén arra is utasítania kell a modellt, hogy saját maga állítson elő JSON-t egy rendszeren vagy felhasználói üzeneten keresztül. Azt is vegye figyelembe, hogy az üzenet tartalma részlegesen megszakadhat, ha finish_reason="length"az azt jelzi, hogy a létrehozás túllépte max_tokens vagy a beszélgetés túllépte a környezet maximális hosszát.
ChatCompletionResponseFormatType A válaszformátum típusa.
ChatCompletionResponseMessage A modell által létrehozott csevegőüzenet.
ChatCompletionTool
ChatMessageRole Az üzenet szerzőjének szerepe.
Választás A csevegés befejezésének lehetőségeinek listája.
CompletionUsage A befejezési kérelem használati statisztikái.
ContentFilterError Az API-hívás meghiúsul, ha a parancssor a konfigurált tartalomszűrőt aktiválja. Módosítsa a kérést, és próbálkozzon újra.
CreateChatCompletionRequest
CreateChatCompletionResponse A megadott bemenet alapján a modell által visszaadott csevegés-befejezési választ jelöli.
Részlet A UnprocessableContentError hiba részletei.
Függvény A modell által hívott függvény.
FunctionObject Annak a függvénynek a meghatározása, amelyhez a modell rendelkezik hozzáféréssel.
ImageDetail A kép részletességi szintjét adja meg.
NotFoundError Az útvonal nem érvényes az üzembe helyezett modellre.
ToolType Az eszköz típusa. Jelenleg csak function a támogatottak.
TooManyRequestsError Elérte a hozzárendelt sebességkorlátot, és a kéréseket tempóba kell helyeznie.
UnauthorizedError A hitelesítés hiányzik vagy érvénytelen.
UnprocessableContentError A kérelem feldolgozhatatlan tartalmat tartalmaz. A hiba akkor jelenik meg, ha a megadott hasznos adat érvényes a specifikációnak megfelelően. A hasznos adatokban jelzett utasítások némelyikét azonban az alapul szolgáló modell nem támogatja. A szakasz segítségével details megismerheti a jogsértő paramétert.

ChatCompletionFinishReason

A modell leállította a jogkivonatok létrehozásának leállítását. Ez akkor történik stop , ha a modell egy természetes leállítási pontra vagy egy megadott leállítási sorrendre ütközik, length ha elérte a kérelemben megadott jogkivonatok maximális számát, content_filter ha a tartalom a tartalomszűrők jelölője miatt kimaradt, tool_calls ha a modell eszközt hívott.

Név Típus Leírás
content_filter húr
length (hossz) húr
állj húr
tool_calls húr

ChatCompletionMessageToolCall

Név Típus Leírás
függvény Függvény A modell által hívott függvény.
ID (Azonosító) húr Az eszközhívás azonosítója.
típus ToolType Az eszköz típusa. Jelenleg csak function a támogatottak.

ChatCompletionObject

Az objektum típusa, amely mindig chat.completion.

Név Típus Leírás
chat.completion húr

ChatCompletionResponseFormat

A modell válaszformátuma. A JSON mód engedélyezése, json_object amely garantálja, hogy a modell által generált üzenet érvényes JSON. JSON mód használata esetén arra is utasítania kell a modellt, hogy saját maga állítson elő JSON-t egy rendszeren vagy felhasználói üzeneten keresztül. Azt is vegye figyelembe, hogy az üzenet tartalma részlegesen megszakadhat, ha finish_reason="length"az azt jelzi, hogy a létrehozás túllépte max_tokens vagy a beszélgetés túllépte a környezet maximális hosszát.

Név Típus Leírás
típus ChatCompletionResponseFormatType A válaszformátum típusa.

ChatCompletionResponseFormatType

A válaszformátum típusa.

Név Típus Leírás
json_object húr
text húr

ChatCompletionResponseMessage

A modell által létrehozott csevegőüzenet.

Név Típus Leírás
content húr Az üzenet tartalma.
szerepkör ChatMessageRole Az üzenet szerzőjének szerepe.
tool_calls ChatCompletionMessageToolCall[] A modell által generált eszközhívások, például függvényhívások.

ChatCompletionTool

Név Típus Leírás
függvény FunctionObject
típus ToolType Az eszköz típusa. Jelenleg csak function a támogatottak.

ChatMessageRole

Az üzenet szerzőjének szerepe.

Név Típus Leírás
asszisztens húr
rendszer húr
eszköz húr
user húr

Choices

A csevegés befejezésének lehetőségeinek listája. Egynél több is lehet, ha n nagyobb, mint 1.

Név Típus Leírás
finish_reason ChatCompletionFinishReason A modell leállította a jogkivonatok létrehozásának leállítását. Ez akkor történik stop , ha a modell egy természetes leállítási pontra vagy egy megadott leállítási sorrendre ütközik, length ha elérte a kérelemben megadott jogkivonatok maximális számát, content_filter ha a tartalom a tartalomszűrők jelölője miatt kimaradt, tool_calls ha a modell eszközt hívott.
index egész szám A választás indexe a választási lehetőségek listájában.
üzenet ChatCompletionResponseMessage A modell által létrehozott csevegőüzenet.

CompletionUsage

A befejezési kérelem használati statisztikái.

Név Típus Leírás
completion_tokens egész szám A létrehozott befejezésben lévő tokenek száma.
prompt_tokens egész szám A jogkivonatok száma a parancssorban.
total_tokens egész szám A kérelemben használt tokenek teljes száma (parancssor + befejezés).

ContentFilterError

Az API-hívás meghiúsul, ha a parancssor a konfigurált tartalomszűrőt aktiválja. Módosítsa a kérést, és próbálkozzon újra.

Név Típus Leírás
code húr A hibakód.
hiba húr A hiba leírása.
üzenet húr A hibaüzenet.
Param húr A tartalomszűrőt aktiváló paraméter.
status egész szám A HTTP-állapotkód.

CreateChatCompletionRequest

Név Típus Alapértelmezett érték Leírás
frequency_penalty szám 0 Segít megelőzni a szóismétléseket azáltal, hogy csökkenti annak az esélyét, hogy egy szó ki legyen jelölve, ha már használatban van. Minél magasabb a gyakorisági büntetés, annál kevésbé valószínű, hogy a modell ugyanazokat a szavakat ismétli a kimenetében. 422-s hibát ad vissza, ha a modell nem támogatja az értéket vagy paramétert.
max_tokens egész szám A csevegés befejezésekor létrehozható jogkivonatok maximális száma.

A bemeneti jogkivonatok és a létrehozott jogkivonatok teljes hosszát a modell környezethossza korlátozza. A null érték megadása miatt a modell a környezet maximális hosszát használja.
üzenet ChatCompletionRequestMessage[] Az eddig a beszélgetésből álló üzenetek listája. 422-s hibát ad vissza, ha a modell legalább néhány üzenetet nem tud értelmezni.
presence_penalty szám 0 Segít megelőzni, hogy ugyanazokat a témaköröket ismételje meg egy szó büntetésével, ha már létezik a befejezésben, akár csak egyszer is. 422-s hibát ad vissza, ha a modell nem támogatja az értéket vagy paramétert.
response_format ChatCompletionResponseFormat text
mag egész szám Ha meg van adva, a rendszerünk mindent megtesz annak érdekében, hogy determinisztikus mintát hozzon létre, így az azonos seed és paraméterekkel rendelkező ismétlődő kérelmeknek ugyanazt az eredményt kell visszaadnia. A determinizmus nem garantált, és a háttérrendszer változásainak figyeléséhez tekintse meg a system_fingerprint válaszparamétert.
állj Olyan sorozatok, amelyekben az API leállítja a további jogkivonatok generálását.
patak Logikai Hamis Ha be van állítva, a rendszer részleges üzenet-különbözeteket küld. A jogkivonatok csak a kiszolgáló által küldött eseményekként lesznek elküldve, amint elérhetővé válnak, és a streamet egy data: [DONE] üzenet leállítja.
hőmérséklet szám 0 Nem negatív szám. 422-et ad vissza, ha a modell nem támogatja az értéket.
tool_choice ChatCompletionToolChoiceOption Azt szabályozza, hogy a modell melyik függvényt hívja meg (ha van ilyen). none azt jelenti, hogy a modell nem hív meg függvényt, hanem létrehoz egy üzenetet. auto azt jelenti, hogy a modell választhat az üzenet létrehozása vagy egy függvény meghívása között. Egy adott függvény megadása a modell meghívására kényszeríti {"type": "function", "function": {"name": "my_function"}} a modellt.

none az alapértelmezett, ha nincsenek függvények. auto az alapértelmezett, ha függvények vannak jelen. 422-s hibát ad vissza, ha a modell nem támogatja az eszközt.
eszközök ChatCompletionTool[] A modell által meghívható eszközök listája. Jelenleg csak a függvények támogatottak eszközként. Ezzel megadhatja azon függvények listáját, amelyekhez a modell JSON-bemeneteket hozhat létre. 422-s hibát ad vissza, ha a modell nem támogatja az eszközt.
top_p szám 0 A hőmérséklettel történő mintavételezés alternatíva, az úgynevezett magmintavétel, ahol a modell a tokenek eredményeit top_p valószínűségi tömeggel veszi figyelembe. A 0.1 tehát csak a felső 10%-os valószínűségi tömeget tartalmazó jogkivonatokat jelenti.

Általában azt javasoljuk, hogy módosítsa ezt vagy temperature mindkettőt, de nem mindkettőt.

ChatCompletionRequestMessage

Név Típus Leírás
content sztring vagy ChatCompletionMessageContentPart[] Az üzenet tartalma.
szerepkör ChatMessageRole Az üzenet szerzőjének szerepe.
tool_calls ChatCompletionMessageToolCall[] A modell által generált eszközhívások, például függvényhívások.

ChatCompletionMessageContentPart

Név Típus Leírás
content húr A rendszerkép URL-címe vagy a base64 kódolású képadatok.
részlet ImageDetail A kép részletességi szintjét adja meg.
típus ChatCompletionMessageContentPartType A tartalomrész típusa.

ChatCompletionMessageContentPartType

Név Típus Leírás
text húr
rendszerkép húr
image_url húr

ChatCompletionToolChoiceOption

Azt szabályozza, hogy a modell melyik eszközt hívja meg (ha van ilyen).

Név Típus Leírás
Nincs húr A modell nem hív meg egyetlen eszközt sem, és ehelyett létrehoz egy üzenetet.
auto húr A modell választhat az üzenet létrehozása vagy egy vagy több eszköz meghívása között.
kötelező húr A modellnek egy vagy több eszközt kell meghívnia.
húr Egy adott eszköz megadása az {"type": "function", "function": {"name": "my_function"}} eszköz meghívására kényszeríti a modellt.

ImageDetail

A kép részletességi szintjét adja meg.

Név Típus Leírás
auto húr
alacsony húr
magas húr

CreateChatCompletionResponse

A megadott bemenet alapján a modell által visszaadott csevegés-befejezési választ jelöli.

Név Típus Leírás
Választás Választási lehetőségek[] A csevegés befejezésének lehetőségeinek listája. Egynél több is lehet, ha n nagyobb, mint 1.
létrehozva egész szám A csevegés befejezésének unix időbélyege (másodpercben).
ID (Azonosító) húr A csevegés befejezésének egyedi azonosítója.
modell húr A csevegés befejezéséhez használt modell.
object ChatCompletionObject Az objektum típusa, amely mindig chat.completion.
system_fingerprint húr Ez az ujjlenyomat azt a háttérkonfigurációt jelöli, amellyel a modell fut.

A kérelemparaméterrel seed együtt használható annak megértéséhez, hogy mikor történtek olyan háttérbeli módosítások, amelyek hatással lehetnek a determinizmusra.
használat CompletionUsage A befejezési kérelem használati statisztikái.

Részlet

A UnprocessableContentError hiba részletei.

Név Típus Leírás
Loc sztring[] A problémát okozó paraméter
Érték húr A problémát okozó paraméternek átadott érték.

Függvény

A modell által hívott függvény.

Név Típus Leírás
Érvek húr A függvény meghívására használható argumentumok, amelyeket a modell JSON formátumban hoz létre. Vegye figyelembe, hogy a modell nem mindig hoz létre érvényes JSON-t, és helytelen paramétereket generálhat, amelyeket a függvényséma nem határoz meg. A függvény meghívása előtt ellenőrizze a kód argumentumait.
név húr A meghívandó függvény neve.

FunctionObject

Annak a függvénynek a meghatározása, amelyhez a modell rendelkezik hozzáféréssel.

Név Típus Leírás
leírás húr A függvény működésének leírása, amelyet a modell használ annak kiválasztásához, hogy mikor és hogyan hívja meg a függvényt.
név húr A meghívandó függvény neve. A-z, A-Z, 0-9, vagy aláhúzásjeleket és kötőjeleket kell tartalmaznia, legfeljebb 64 hosszúságúak.
parameters object A függvények által elfogadott paraméterek JSON-sémaobjektumként vannak leírva. Az kihagyás parameters üres paraméterlistával rendelkező függvényt határoz meg.

NotFoundError

Név Típus Leírás
hiba húr A hiba leírása.
üzenet húr A hibaüzenet.
status egész szám A HTTP-állapotkód.

ToolType

Az eszköz típusa. Jelenleg csak function a támogatottak.

Név Típus Leírás
függvény húr

TooManyRequestsError

Név Típus Leírás
hiba húr A hiba leírása.
üzenet húr A hibaüzenet.
status egész szám A HTTP-állapotkód.

UnauthorizedError

Név Típus Leírás
hiba húr A hiba leírása.
üzenet húr A hibaüzenet.
status egész szám A HTTP-állapotkód.

UnprocessableContentError

A kérelem feldolgozhatatlan tartalmat tartalmaz. A hiba akkor jelenik meg, ha a megadott hasznos adat érvényes a specifikációnak megfelelően. A hasznos adatokban jelzett utasítások némelyikét azonban az alapul szolgáló modell nem támogatja. A szakasz segítségével details megismerheti a jogsértő paramétert.

Név Típus Leírás
code húr A hibakód.
részlet Részlet
hiba húr A hiba leírása.
üzenet húr A hibaüzenet.
status egész szám A HTTP-állapotkód.