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


Azure OpenAI-bővítmény az Azure Functionshez

Fontos

Az Azure Functions Azure OpenAI bővítménye jelenleg előzetes verzióban érhető el.

Az Azure Functions Azure OpenAI-bővítménye triggerek és kötések készletét valósítja meg, amelyek lehetővé teszik az Azure OpenAI funkcióinak és viselkedésének egyszerű integrálását az Öntödei modellekben a függvénykód végrehajtásába.

Az Azure Functions egy eseményvezérelt számítási szolgáltatás, amely triggerek és kötések készletét biztosítja a többi Azure-szolgáltatáshoz való egyszerű kapcsolódáshoz.

Az Azure OpenAI és a Functions integrációjával olyan függvényeket hozhat létre, amelyek a következőkre képesek:

Művelet Trigger/kötés típusa
Szabványos szöveges kérés használata a tartalom befejezéséhez Azure OpenAI szövegkimenet bemeneti kötése
Egy függvény meghívására irányuló asszisztensi kérés megválaszolása Azure OpenAI-asszisztens eseményindítója
Segéd létrehozása Az Azure OpenAI-asszisztens kimeneti kötés létrehozása
Asszisztens üzenete Az Azure OpenAI assistant bemeneti kötés utáni kötése
Asszisztens előzményeinek lekérése Az Azure OpenAI Assistant lekérdezésbemeneti kötése
Szövegbeágyazások olvasása Azure OpenAI-beágyazások bemeneti kötése
Írás vektoradatbázisba Azure OpenAI-beágyazások tárkimeneti kötése
Olvasás vektoradatbázisból Azure OpenAI szemantikai keresési bemeneti kötés

A bővítmény telepítése

A telepített NuGet-csomag a C# módtól függ a függvényalkalmazásban használt C#-módtól vagy izolált feldolgozói folyamattól:

Adja hozzá az Azure OpenAI-bővítményt a projekthez a Microsoft.Azure.Functions.Worker.Extensions.OpenAI NuGet csomag telepítésével, amelyet a .NET CLI használatával végezhet el:

dotnet add package Microsoft.Azure.Functions.Worker.Extensions.OpenAI  --prerelease

Ha vektoradatbázist használ a tartalom tárolására, az alábbi NuGet-csomagok közül legalább egyet telepítenie kell:

Csomag telepítése

Ahhoz, hogy ezt az előzetes kötésbővítményt használni tudja az alkalmazásban, hivatkoznia kell egy előzetes verziójú bővítménycsomagra, amely tartalmazza azt.

Adja hozzá vagy cserélje le a következő kódot a host.json fájlban, amely kifejezetten a 4.x csomag legújabb előzetes verzióját célozza meg:

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview",
    "version": "[4.0.0, 5.0.0)"
  }
}

Az előző hivatkozásra kattintva ellenőrizheti, hogy a legújabb előzetes verziójú csomagverzió tartalmazza-e az előzetes verziójú bővítményt.

Csatlakozás az OpenAI-hoz

Az Azure OpenAI kötésbővítmény használatához meg kell adnia egy kapcsolatot az OpenAI-hoz. Ezt a kapcsolatot az alkalmazásbeállítások, valamint az AIConnectionName eseményindító vagy kötés tulajdonsága határozza meg. A környezeti változókkal kulcsalapú kapcsolatokat is definiálhat.

Javasoljuk, hogy felügyelt identitásalapú kapcsolatokat és tulajdonságot AIConnectionName használjon.

Az OpenAI-kötések rendelkeznek egy AIConnectionName tulajdonságtal, amellyel megadhatja az <ConnectionNamePrefix> Azure OpenAI-hoz való kapcsolatot meghatározó alkalmazásbeállítások csoportját:

Név beállítása Leírás
<CONNECTION_NAME_PREFIX>__endpoint Beállítja az Azure OpenAI URI-végpontját az Öntödei modellekben. Ez a beállítás mindig kötelező.
<CONNECTION_NAME_PREFIX>__clientId Beállítja az adott felhasználó által hozzárendelt identitást, amelyet a hozzáférési jogkivonatok beszerzésekor használni kell. Megköveteli, hogy a <CONNECTION_NAME_PREFIX>__credential legyen beállítva a managedidentity értékre. A tulajdonság elfogadja az alkalmazáshoz hozzárendelt, felhasználó által hozzárendelt identitásnak megfelelő ügyfél-azonosítót. Az erőforrás-azonosító és az ügyfél-azonosító megadása érvénytelen. Ha nincs megadva, a rendszer a rendszer által hozzárendelt identitást használja. Ezt a tulajdonságot eltérően használják a helyi fejlesztési forgatókönyvekben, amikor credential nem szabad beállítani.
<CONNECTION_NAME_PREFIX>__credential Meghatározza, hogy a rendszer hogyan szerzi be a hozzáférési jogkivonatot a kapcsolathoz. Felügyelt identitáshitelesítéshez használható managedidentity . Ez az érték csak akkor érvényes, ha egy felügyelt identitás elérhető az üzemeltetési környezetben.
<CONNECTION_NAME_PREFIX>__managedIdentityResourceId Ha credential be van állítva managedidentity, ez a tulajdonság megadható a jogkivonat beszerzésekor használandó erőforrás-azonosító megadásához. A tulajdonság a felhasználó által definiált felügyelt identitás erőforrás-azonosítójának megfelelő erőforrás-azonosítót fogad el. Érvénytelen az erőforrás-azonosító és az ügyfél-azonosító megadása. Ha egyik sincs megadva, a rendszer a rendszer által hozzárendelt identitást használja. Ezt a tulajdonságot eltérően használják a helyi fejlesztési forgatókönyvekben, amikor credential nem szabad beállítani.
<CONNECTION_NAME_PREFIX>__key Beállítja az Azure OpenAI végpontjának kulcsalapú hitelesítéssel való eléréséhez szükséges megosztott titkos kulcsot. Ajánlott biztonsági eljárásként mindig a Microsoft Entra-azonosítót kell használnia felügyelt identitásokkal a hitelesítéshez.

Vegye figyelembe ezeket a felügyelt identitáskapcsolati beállításokat, amikor AIConnectionName a tulajdonság értéke myAzureOpenAI:

  • myAzureOpenAI__endpoint=https://contoso.openai.azure.com/
  • myAzureOpenAI__credential=managedidentity
  • myAzureOpenAI__clientId=aaaaaaaa-bbbb-cccc-1111-222222222222

Futásidőben ezeket a beállításokat a gazdagép együttesen értelmezi egyetlen myAzureOpenAI beállításként, például a következőhöz:

"myAzureOpenAI":
{
    "endpoint": "https://contoso.openai.azure.com/",
    "credential": "managedidentity",
    "clientId": "aaaaaaaa-bbbb-cccc-1111-222222222222"
}

Felügyelt identitások használatakor mindenképpen adja hozzá az identitását a Cognitive Services OpenAI felhasználói szerepköréhez.

Helyi futtatáskor ezeket a beállításokat hozzá kell adnia a local.settings.json projektfájlhoz. További információ: Helyi fejlesztés identitásalapú kapcsolatokkal.

További információ: Az alkalmazásbeállítások használata.