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


Rövid útmutató: Képek használata AI-csevegésekben

Ismerkedés a képek használatával az Azure OpenAI-val folytatott csevegésekben a Microsoft Foundry Modelsben.

Fontos

További használati díjak vonatkozhatnak a vision funkcióval rendelkező csevegés-befejezési modellek használatakor.

Ebből a cikkből megismerheti a Microsoft Foundry használatának első lépéseit egy csevegővégzítési modell üzembe helyezéséhez és teszteléséhez képértelmezéssel.

Előfeltételek

A média előkészítése

A rövid útmutató elvégzéséhez képre van szüksége. Ezt a mintaképet vagy bármely más elérhető képet használhatja.

Fénykép egy autóbalesetről, amely a rövid útmutató végrehajtásához használható.

Ugrás az Foundryre

  1. Keresse meg az Foundryt , és jelentkezzen be az Azure OpenAI-erőforráshoz társított hitelesítő adatokkal. A bejelentkezési munkafolyamat során vagy után válassza ki a megfelelő könyvtárat, Azure-előfizetést és Azure OpenAI-erőforrást.
  2. Válassza ki a projektet, amelyben dolgozni szeretne.
  3. A bal oldali navigációs menüben válassza a Modellek + végpontok lehetőséget, majd a + Modell üzembe helyezése lehetőséget.
  4. Válasszon képre alkalmas üzembe helyezést a következő modellnév kiválasztásával: gpt-4o vagy gpt-4o-mini. A megjelenő ablakban válassza ki a nevet és az üzembe helyezés típusát. Győződjön meg arról, hogy az Azure OpenAI-erőforrás csatlakoztatva van. A modellek üzembe helyezéséről a modellek üzembe helyezésének ismertetőjében talál további információt.
  5. Válassza az Üzembe helyezés lehetőséget.
  6. Ezután válassza ki az új modellt, és válassza a Megnyitás a játszótéren lehetőséget. A csevegési játszótéren a létrehozott üzembe helyezést ki kell választani az Üzembe helyezés legördülő listában.

Játszótér

Ebben a csevegésben arra utasítja az asszisztenst, hogy segítsen megérteni a beírt képeket.

Az asszisztensek beállításával, a csevegési munkamenetekkel, a beállításokkal és a panelekkel kapcsolatos általános segítségért tekintse meg a csevegési rövid útmutatót.

Csevegés indítása képek elemzéséhez

Ebben a csevegésben arra utasítja az asszisztenst, hogy segítsen megérteni a beírt képeket.

  1. Első lépésként győződjön meg arról, hogy a rendszerkép-kompatibilis üzembe helyezés ki van választva az Üzembe helyezés legördülő listában.

  2. A Beállítás panel környezetszövegmezőjében adja meg ezt a kérdést az asszisztens irányításához: "You're an AI assistant that helps people find information." Vagy testre szabhatja a kérést a képhez vagy a forgatókönyvhöz.

    Megjegyzés:

    Javasoljuk, hogy frissítse a rendszerüzenetet úgy, hogy az a feladathoz legyen rendelve, hogy elkerülje a modell nem megfelelő válaszait.

  3. A módosítások mentéséhez válassza a Módosítások alkalmazása lehetőséget.

  4. A csevegési munkamenet paneljén válassza a melléklet gombot, majd a Kép feltöltése lehetőséget. Válassza ki a képet.

  5. Adja hozzá a következő üzenetet a csevegési mezőbe: Describe this imagemajd a küldés ikont választva küldje el.

  6. A küldés ikont egy stop gomb váltja fel. Ha kiválasztja, az asszisztens leállítja a kérés feldolgozását. Ebben a rövid útmutatóban hagyja, hogy az asszisztens befejezze a választ.

  7. Az asszisztens a kép leírásával válaszol.

  8. Tegyen fel egy követési kérdést a kép elemzésével kapcsolatban. Beírhat, "What should I highlight about this image to my insurance company?".

  9. Az itt láthatóhoz hasonló releváns választ kell kapnia:

    When reporting the incident to your insurance company, you should highlight the following key points from the image:  
    
    1. **Location of Damage**: Clearly state that the front end of the car, particularly the driver's side, is damaged. Mention the crumpled hood, broken front bumper, and the damaged left headlight.  
    
    2. **Point of Impact**: Indicate that the car has collided with a guardrail, which may suggest that no other vehicles were involved in the accident.  
    
    3. **Condition of the Car**: Note that the damage seems to be concentrated on the front end, and there is no visible damage to the windshield or rear of the car from this perspective.  
    
    4. **License Plate Visibility**: Mention that the license plate is intact and can be used for identification purposes.  
    
    5. **Environment**: Report that the accident occurred near a roadside with a guardrail, possibly in a rural or semi-rural area, which might help in establishing the accident location and context.  
    
    6. **Other Observations**: If there were any other circumstances or details not visible in the image that may have contributed to the accident, such as weather conditions, road conditions, or any other relevant information, be sure to include those as well.  
    
    Remember to be factual and descriptive, avoiding speculation about the cause of the accident, as the insurance company will conduct its own investigation.
    

Kód megtekintése és exportálása

A csevegési munkamenet bármely pontján engedélyezheti a nyers JSON-kapcsoló megjelenítését a csevegőablak tetején, hogy a beszélgetés JSON-ként legyen formázva. A rövid útmutató csevegési munkamenetének elején a következőképpen néz ki:

[
	{
		"role": "system",
		"content": [
			"You are an AI assistant that helps people find information."
		]
	},
]

Erőforrások tisztítása

Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást vagy az erőforráscsoportot. A forráscsoport törlése azt is eredményezi, hogy bármely hozzá tartozó egyéb erőforrás is törlésre kerül.

Ebből a cikkből megismerheti az Azure OpenAI REST API-k használatát látásbarát csevegőmodellek üzembe helyezéséhez és használatához.

Előfeltételek

Megjegyzés:

Jelenleg nem támogatott a GPT-4 Turbo és a Vision modell tartalomszűrése.

Kulcs és végpont lekérése

Az Azure OpenAI API-k sikeres meghívásához az alábbi információkra van szüksége az Azure OpenAI-erőforrásról:

Változó Név Érték
végpont api_base A végpont értéke az erőforrás kulcsai és végpontja alatt található az Azure Portalon. A végpontot az Foundry portál Üzembe helyezések lapján is megtalálhatja. Példavégpont: https://docs-test-001.openai.azure.com/.
Kulcs api_key A kulcsérték az erőforrás kulcsai és végpontja alatt is található az Azure Portalon. Az Azure két kulcsot hoz létre az erőforráshoz. Bármelyik értéket használhatja.

Nyissa meg az erőforrást az Azure portálon. A navigációs panelen válassza a Kulcsok és végpont lehetőséget az Erőforrás-kezelés területen. Másolja ki a végpont értékét és a hozzáférési kulcs értékét. Használhatja a KEY 1 vagy a KEY 2 értéket. A két kulcs lehetővé teszi a kulcsok biztonságos elforgatását és újragenerálását anélkül, hogy szolgáltatáskimaradást okozzon.

Képernyőkép egy Azure OpenAI-erőforrás Kulcsok és végpont lapjáról az Azure Portalon.

Új Python-alkalmazás létrehozása

Hozzon létre egy quickstart.py nevű új Python-fájlt. Nyissa meg az új fájlt az előnyben részesített szerkesztőben vagy IDE-ben.

  1. Cserélje le a quickstart.py tartalmát a következő kódra.

    # Packages required:
    import requests 
    import json 
    
    api_base = '<your_azure_openai_endpoint>' 
    deployment_name = '<your_deployment_name>'
    API_KEY = '<your_azure_openai_key>'
    
    base_url = f"{api_base}openai/deployments/{deployment_name}" 
    headers = {   
        "Content-Type": "application/json",   
        "api-key": API_KEY 
    } 
    
    # Prepare endpoint, headers, and request body 
    endpoint = f"{base_url}/chat/completions?api-version=2023-12-01-preview" 
    data = { 
        "messages": [ 
            { "role": "system", "content": "You are a helpful assistant." }, 
            { "role": "user", "content": [  
                { 
                    "type": "text", 
                    "text": "Describe this picture:" 
                },
                { 
                    "type": "image_url",
                    "image_url": {
                        "url": "<image URL>"
                    }
                }
            ] } 
        ], 
        "max_tokens": 2000 
    }   
    
    # Make the API call   
    response = requests.post(endpoint, headers=headers, data=json.dumps(data))   
    
    print(f"Status Code: {response.status_code}")   
    print(response.text)
    
  2. Végezze el a következő módosításokat:

    1. Adja meg a végpont URL-címét és kulcsát a megfelelő mezőkben.
    2. Adja meg a modell üzembehelyezési nevét a megfelelő mezőben.
    3. Módosítsa a "image" mező értékét a kép nyilvánosan elérhető URL-címére.

      Jótanács

      URL-cím helyett használhat 64-es alapkódolt képadatokat is. További információt a Vision-csevegések útmutatójában talál.

  3. Futtassa az alkalmazást a python következő paranccsal:

    python quickstart.py
    

Erőforrások tisztítása

Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást vagy az erőforráscsoportot. A forráscsoport törlése azt is eredményezi, hogy bármely hozzá tartozó egyéb erőforrás is törlésre kerül.

Ebben a cikkben megismerkedhet az Azure OpenAI Python SDK használatával egy látásalapú csevegőmodell üzembe helyezéséhez és használatához.

Kódtár forráskódcsomagja | (PyPi) |

Előfeltételek

Beállítás

Telepítse az OpenAI Python ügyfélkódtárat a következőkkel:

pip install openai

Kulcs és végpont lekérése

Az Azure OpenAI-ra való sikeres híváshoz egy végpontra és egy kulcsra van szükség.

Változó neve Érték
ENDPOINT A szolgáltatásvégpont a Kulcsok > Végpont szakaszban található, amikor az erőforrást az Azure Portalról vizsgálja. A végpontot a Microsoft Foundry portál Üzembe helyezések lapján is megtalálhatja. Példavégpont: https://docs-test-001.openai.azure.com/.
API-KEY Ez az érték a Kulcsok és végpont szakaszban található meg, amikor megvizsgálja az erőforrást az Azure Portalon. A következők bármelyikét használhatja: KEY1 vagy KEY2.

Nyissa meg az erőforrást az Azure portálon. A Kulcsok > végpont szakasz az Erőforrás-kezelés szakaszban található. Másolja ki a végpontot és a hozzáférési kulcsot, mivel mindkettőre szüksége lesz az API-hívások hitelesítéséhez. A következők bármelyikét használhatja: KEY1 vagy KEY2. A két kulcs mindig lehetővé teszi a kulcsok biztonságos elforgatását és újragenerálását anélkül, hogy szolgáltatáskimaradást okoz.

Képernyőkép egy Azure OpenAI-erőforrás áttekintő felhasználói felületéről az Azure Portalon, a végpont és a hozzáférési kulcsok helye pirossal bekarikázva.

Környezeti változók

Állandó környezeti változók létrehozása és hozzárendelése a kulcshoz és a végponthoz.

Fontos

Az Azure-erőforrásokhoz tartozó felügyelt identitásokkal rendelkező Microsoft Entra ID-hitelesítést javasoljuk, hogy ne tárolja a hitelesítő adatokat a felhőben futó alkalmazásokkal.

Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. API-kulcsok használata esetén biztonságosan tárolhatja őket az Azure Key Vaultban, rendszeresen elforgathatja a kulcsokat, és szerepköralapú hozzáférés-vezérléssel és hálózati hozzáférés-korlátozásokkal korlátozhatja az Azure Key Vaulthoz való hozzáférést. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.

Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.

setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE" 
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE" 

Új Python-alkalmazás létrehozása

Hozzon létre egy quickstart.py nevű új Python-fájlt. Nyissa meg az új fájlt az előnyben részesített szerkesztőben vagy IDE-ben.

  1. Cserélje le a quickstart.py tartalmát a következő kódra.

    from openai import AzureOpenAI
    
    api_base = os.getenv("AZURE_OPENAI_ENDPOINT")
    api_key= os.getenv("AZURE_OPENAI_API_KEY")
    deployment_name = '<your_deployment_name>'
    api_version = '2023-12-01-preview' # this might change in the future
    
    client = AzureOpenAI(
        api_key=api_key,  
        api_version=api_version,
        base_url=f"{api_base}/openai/deployments/{deployment_name}"
    )
    
    response = client.chat.completions.create(
        model=deployment_name,
        messages=[
            { "role": "system", "content": "You are a helpful assistant." },
            { "role": "user", "content": [  
                { 
                    "type": "text", 
                    "text": "Describe this picture:" 
                },
                { 
                    "type": "image_url",
                    "image_url": {
                        "url": "<image URL>"
                    }
                }
            ] } 
        ],
        max_tokens=2000 
    )
    
    print(response)
    
  2. Végezze el a következő módosításokat:

    1. Adja meg a modell üzembe helyezésének nevét a megfelelő mezőben.
    2. Módosítsa a "url" mező értékét a kép nyilvánosan elérhető URL-címére.

      Jótanács

      URL-cím helyett használhat 64-es alapkódolt képadatokat is. További információt a Vision-csevegések útmutatójában talál.

  3. Futtassa az alkalmazást a python következő paranccsal:

    python quickstart.py
    

Fontos

Óvatosan használja az API-kulcsokat. Ne foglalja bele közvetlenül az API-kulcsot a kódba, és soha ne tegye közzé nyilvánosan. Ha API-kulcsot használ, tárolja azt biztonságosan az Azure Key Vaultban. További információ az API-kulcsok biztonságos használatáról az alkalmazásokban: API-kulcsok az Azure Key Vaulttal.

Az AI-szolgáltatások biztonságáról további információt az Azure AI-szolgáltatásokhoz érkező kérelmek hitelesítése című témakörben talál.

Erőforrások tisztítása

Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást vagy az erőforráscsoportot. A forráscsoport törlése azt is eredményezi, hogy bármely hozzá tartozó egyéb erőforrás is törlésre kerül.

Ebből a cikkből megismerheti az OpenAI JavaScript SDK használatát egy látásalapú csevegőmodell üzembe helyezéséhez és használatához.

Ezt az SDK-t az OpenAI biztosítja az Azure által biztosított Azure-specifikus típusokkal.

Referenciadokumentáció | Kódtár forráskódja | Csomag (npm) | Minták

Előfeltételek

A Microsoft Entra ID előfeltételei

A Microsoft Entra-azonosítóval javasolt kulcs nélküli hitelesítéshez a következőket kell elvégeznie:

  • Telepítse a Kulcs nélküli hitelesítéshez használt Azure CLI-t a Microsoft Entra-azonosítóval.
  • Rendelje hozzá a Cognitive Services User szerepkört a felhasználói fiókjához. Szerepköröket az Azure Portalon rendelhet hozzá a Hozzáférés-vezérlés (IAM)>Szerepkör-hozzárendelés hozzáadása területen.

Beállítás

  1. Hozzon létre egy új mappát vision-quickstart, és lépjen a rövid útmutató mappába a következő paranccsal:

    mkdir vision-quickstart && cd vision-quickstart
    
  2. Hozza létre a package.json következő paranccsal:

    npm init -y
    
  3. Telepítse a JavaScripthez készült OpenAI ügyfélkódtárat a következőkkel:

    npm install openai
    
  4. Az ajánlott jelszó nélküli hitelesítéshez:

    npm install @azure/identity
    

Erőforrásadatok lekérése

Az alkalmazás Azure OpenAI-erőforrással való hitelesítéséhez le kell kérnie a következő adatokat:

Változó neve Érték
AZURE_OPENAI_ENDPOINT Ez az érték a Kulcsok és végpont szakaszban található, amikor az erőforrást az Azure Portalról vizsgálja.
AZURE_OPENAI_DEPLOYMENT_NAME Ez az érték a modell üzembe helyezésekor az üzembe helyezéshez választott egyéni névnek felel meg. Ez az érték az Azure Portal Resource Management Model Deployments ( Erőforrás-kezelési>modell üzembe helyezései) területén található.

További információ a kulcs nélküli hitelesítésről és a környezeti változók beállításáról.

Figyelmeztetés

Ha az ajánlott kulcs nélküli hitelesítést szeretné használni az SDK-val, győződjön meg arról, hogy a AZURE_OPENAI_API_KEY környezeti változó nincs beállítva.

Új JavaScript-alkalmazás létrehozása képkérésekhez

Válasszon egy képet az azure-samples/cognitive-services-sample-data-files fájlból. Adja meg a nyilvánosan elérhető kép URL-címét az alábbi kódban, vagy állítsa be a IMAGE_URL környezeti változót.

Fontos

Ha SAS URL-címet használ egy Azure Blob Storage-ban tárolt rendszerképhez, engedélyeznie kell a felügyelt identitást, és hozzá kell rendelnie a Storage Blob Reader szerepkört az Azure OpenAI-erőforráshoz (ezt az Azure Portalon teheti meg). Ez lehetővé teszi a modell számára, hogy hozzáférjen a lemezképhez a Blob Storage-ban.

Jótanács

URL-cím helyett használhat 64-es alapkódolt képadatokat is. További információt a Vision-csevegések útmutatójában talál.

  1. Hozza létre a index.js fájlt a következő kóddal:

    const AzureOpenAI = require('openai').AzureOpenAI;
    const { 
        DefaultAzureCredential, 
        getBearerTokenProvider 
    } = require('@azure/identity');
    
    // You will need to set these environment variables or edit the following values
    const endpoint = process.env.AZURE_OPENAI_ENDPOINT || "Your endpoint";
    const imageUrl = process.env.IMAGE_URL || "<image url>";
    
    // Required Azure OpenAI deployment name and API version
    const apiVersion = process.env.OPENAI_API_VERSION || "2024-07-01-preview";
    const deploymentName = process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "gpt-4-with-turbo";
    
    // keyless authentication    
    const credential = new DefaultAzureCredential();
    const scope = "https://cognitiveservices.azure.com/.default";
    const azureADTokenProvider = getBearerTokenProvider(credential, scope);
    
    function getClient(): AzureOpenAI {
      return new AzureOpenAI({
        endpoint,
        azureADTokenProvider,
        apiVersion,
        deployment: deploymentName,
      });
    }
    function createMessages() {
      return {
        messages: [
          { role: "system", content: "You are a helpful assistant." },
          {
            role: "user",
            content: [
              {
                type: "text",
                text: "Describe this picture:",
              },
              {
                type: "image_url",
                image_url: {
                  url: imageUrl,
                },
              },
            ],
          },
        ],
        model: "",
        max_tokens: 2000,
      };
    }
    async function printChoices(completion) {
      for (const choice of completion.choices) {
        console.log(choice.message);
      }
    }
    export async function main() {
      console.log("== Get Vision chats Sample ==");
    
      const client = getClient();
      const messages = createMessages();
      const completion = await client.chat.completions.create(messages);
      await printChoices(completion);
    }
    
    main().catch((err) => {
      console.error("Error occurred:", err);
    });
    
  2. Jelentkezzen be az Azure-ba a következő paranccsal:

    az login
    
  3. Futtassa a JavaScript-fájlt.

    node index.js
    

Erőforrások tisztítása

Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást vagy az erőforráscsoportot. A forráscsoport törlése azt is eredményezi, hogy bármely hozzá tartozó egyéb erőforrás is törlésre kerül.

Ebből a cikkből megismerheti az OpenAI JavaScript SDK használatát egy látásalapú csevegőmodell üzembe helyezéséhez és használatához.

Ezt az SDK-t az OpenAI biztosítja az Azure által biztosított Azure-specifikus típusokkal.

Referenciadokumentáció | Kódtár forráskódja | Csomag (npm) | Minták

Előfeltételek

A Microsoft Entra ID előfeltételei

A Microsoft Entra-azonosítóval javasolt kulcs nélküli hitelesítéshez a következőket kell elvégeznie:

  • Telepítse a Kulcs nélküli hitelesítéshez használt Azure CLI-t a Microsoft Entra-azonosítóval.
  • Rendelje hozzá a Cognitive Services User szerepkört a felhasználói fiókjához. Szerepköröket az Azure Portalon rendelhet hozzá a Hozzáférés-vezérlés (IAM)>Szerepkör-hozzárendelés hozzáadása területen.

Beállítás

  1. Hozzon létre egy új mappát vision-quickstart, és lépjen a rövid útmutató mappába a következő paranccsal:

    mkdir vision-quickstart && cd vision-quickstart
    
  2. Hozza létre a package.json következő paranccsal:

    npm init -y
    
  3. Frissítse a package.json ECMAScriptre a következő paranccsal:

    npm pkg set type=module
    
  4. Telepítse a JavaScripthez készült OpenAI ügyfélkódtárat a következőkkel:

    npm install openai
    
  5. Az ajánlott jelszó nélküli hitelesítéshez:

    npm install @azure/identity
    

Erőforrásadatok lekérése

Az alkalmazás Azure OpenAI-erőforrással való hitelesítéséhez le kell kérnie a következő adatokat:

Változó neve Érték
AZURE_OPENAI_ENDPOINT Ez az érték a Kulcsok és végpont szakaszban található, amikor az erőforrást az Azure Portalról vizsgálja.
AZURE_OPENAI_DEPLOYMENT_NAME Ez az érték a modell üzembe helyezésekor az üzembe helyezéshez választott egyéni névnek felel meg. Ez az érték az Azure Portal Resource Management Model Deployments ( Erőforrás-kezelési>modell üzembe helyezései) területén található.

További információ a kulcs nélküli hitelesítésről és a környezeti változók beállításáról.

Figyelmeztetés

Ha az ajánlott kulcs nélküli hitelesítést szeretné használni az SDK-val, győződjön meg arról, hogy a AZURE_OPENAI_API_KEY környezeti változó nincs beállítva.

Új JavaScript-alkalmazás létrehozása képkérésekhez

Válasszon egy képet az azure-samples/cognitive-services-sample-data-files fájlból. Használja a kép URL-címét az alábbi kódban, vagy állítsa be a IMAGE_URL környezeti változót a kép URL-címére.

Jótanács

URL-cím helyett használhat 64-es alapkódolt képadatokat is. További információt a Vision-csevegések útmutatójában talál.

  1. Hozza létre a index.ts fájlt a következő kóddal:

    import { AzureOpenAI } from "openai";
    import { 
        DefaultAzureCredential, 
        getBearerTokenProvider 
    } from "@azure/identity";
    import type {
      ChatCompletion,
      ChatCompletionCreateParamsNonStreaming,
    } from "openai/resources/index";
    
    // You will need to set these environment variables or edit the following values
    const endpoint = process.env.AZURE_OPENAI_ENDPOINT || "Your endpoint";
    const imageUrl = process.env["IMAGE_URL"] || "<image url>";
    
    // Required Azure OpenAI deployment name and API version
    const apiVersion = process.env.OPENAI_API_VERSION || "2024-07-01-preview";
    const deploymentName = process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "gpt-4-with-turbo";
    
    // keyless authentication    
    const credential = new DefaultAzureCredential();
    const scope = "https://cognitiveservices.azure.com/.default";
    const azureADTokenProvider = getBearerTokenProvider(credential, scope);
    
    function getClient(): AzureOpenAI {
      return new AzureOpenAI({
        endpoint,
        azureADTokenProvider,
        apiVersion,
        deployment: deploymentName,
      });
    }
    function createMessages(): ChatCompletionCreateParamsNonStreaming {
      return {
        messages: [
          { role: "system", content: "You are a helpful assistant." },
          {
            role: "user",
            content: [
              {
                type: "text",
                text: "Describe this picture:",
              },
              {
                type: "image_url",
                image_url: {
                  url: imageUrl,
                },
              },
            ],
          },
        ],
        model: "",
        max_tokens: 2000,
      };
    }
    async function printChoices(completion: ChatCompletion): Promise<void> {
      for (const choice of completion.choices) {
        console.log(choice.message);
      }
    }
    export async function main() {
      console.log("== Get Vision chat Sample ==");
    
      const client = getClient();
      const messages = createMessages();
      const completion = await client.chat.completions.create(messages);
      await printChoices(completion);
    }
    
    main().catch((err) => {
      console.error("Error occurred:", err);
    });
    
  2. Hozza létre a fájlt a tsconfig.json TypeScript-kód fordításához, és másolja a következő kódot az ECMAScripthez.

    {
        "compilerOptions": {
          "module": "NodeNext",
          "target": "ES2022", // Supports top-level await
          "moduleResolution": "NodeNext",
          "skipLibCheck": true, // Avoid type errors from node_modules
          "strict": true // Enable strict type-checking options
        },
        "include": ["*.ts"]
    }
    
  3. Transpilálás TypeScriptről JavaScriptre.

    tsc
    
  4. Jelentkezzen be az Azure-ba a következő paranccsal:

    az login
    
  5. Futtassa a kódot a következő paranccsal:

    node index.js
    

Erőforrások tisztítása

Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást vagy az erőforráscsoportot. A forráscsoport törlése azt is eredményezi, hogy bármely hozzá tartozó egyéb erőforrás is törlésre kerül.

Ebben a cikkben megismerkedhet az Azure OpenAI .NET SDK-val egy látásalapú csevegőmodell üzembe helyezéséhez és használatához.

Előfeltételek

A Microsoft Entra ID előfeltételei

A Microsoft Entra-azonosítóval javasolt kulcs nélküli hitelesítéshez a következőket kell elvégeznie:

  • Telepítse a Kulcs nélküli hitelesítéshez használt Azure CLI-t a Microsoft Entra-azonosítóval.
  • Rendelje hozzá a Cognitive Services User szerepkört a felhasználói fiókjához. Szerepköröket az Azure Portalon rendelhet hozzá a Hozzáférés-vezérlés (IAM)>Szerepkör-hozzárendelés hozzáadása területen.

Beállítás

  1. Hozzon létre egy új mappát vision-quickstart, és lépjen a rövid útmutató mappába a következő paranccsal:

    mkdir vision-quickstart && cd vision-quickstart
    
  2. Hozzon létre egy új konzolalkalmazást a következő paranccsal:

    dotnet new console
    
  3. Telepítse az OpenAI .NET ügyfélkódtárat a dotnet add package paranccsal:

    dotnet add package Azure.AI.OpenAI
    
  4. A Microsoft Entra ID-val javasolt kulcs nélküli hitelesítéshez telepítse az Azure.Identity csomagot a következőkkel:

    dotnet add package Azure.Identity
    
  5. A Microsoft Entra ID-val javasolt kulcs nélküli hitelesítéshez jelentkezzen be az Azure-ba a következő paranccsal:

    az login
    

Erőforrásadatok lekérése

Az alkalmazás Azure OpenAI-erőforrással való hitelesítéséhez le kell kérnie a következő adatokat:

Változó neve Érték
AZURE_OPENAI_ENDPOINT Ez az érték a Kulcsok és végpont szakaszban található, amikor az erőforrást az Azure Portalról vizsgálja.
AZURE_OPENAI_DEPLOYMENT_NAME Ez az érték a modell üzembe helyezésekor az üzembe helyezéshez választott egyéni névnek felel meg. Ez az érték az Azure Portal Resource Management Model Deployments ( Erőforrás-kezelési>modell üzembe helyezései) területén található.

További információ a kulcs nélküli hitelesítésről és a környezeti változók beállításáról.

A gyors kezdés futtatása

A rövid útmutatóban szereplő mintakód a Microsoft Entra-azonosítót használja az ajánlott kulcs nélküli hitelesítéshez. Ha inkább API-kulcsot szeretne használni, lecserélheti az DefaultAzureCredential objektumot egy AzureKeyCredential objektumra.

AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()); 

A gyorstalpaló futtatásához kövesse az alábbi lépéseket:

  1. Cserélje le a Program.cs tartalmát a következő kóddal és frissítse a helyőrző értékeket a sajátjára.

    using Azure;
    using Azure.AI.OpenAI;
    using Azure.Identity;
    using OpenAI.Chat; // Required for Passwordless auth
    
    string deploymentName = "gpt-4";
    
    string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT") ?? "https://<your-resource-name>.openai.azure.com/";
    string key = Environment.GetEnvironmentVariable("AZURE_OPENAI_API_KEY") ?? "<your-key>";
    
    // Use the recommended keyless credential instead of the AzureKeyCredential credential.
    AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()); 
    //AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new AzureKeyCredential(key));
    
    var chatClient = openAIClient.GetChatClient(deploymentName);
    
    var imageUrl = "YOUR_IMAGE_URL";
    
    var textPart = ChatMessageContentPart.CreateTextPart("Describe this picture:");
    var imgPart = ChatMessageContentPart.CreateImagePart(imageUrl); 
    
    var chatMessages = new List<ChatMessage>
    {
        new SystemChatMessage("You are a helpful assistant."),
        new UserChatMessage(textPart, imgPart)
    
    };
    
    ChatCompletion chatCompletion = await chatClient.CompleteChatAsync(chatMessages);
    
    Console.WriteLine($"[ASSISTANT]:");
    Console.WriteLine($"{chatCompletion.Content[0].Text}");
    
  2. Cserélje le YOUR_IMAGE_URL a feltölteni kívánt kép nyilvános URL-jére.

  3. Futtassa az alkalmazást a dotnet run Visual Studio tetején található paranccsal vagy futtatási gombbal:

    dotnet run
    

Kimenet

Az alkalmazás kimenete a változóban imageUri megadott kép leírása lesz. Az asszisztens elemzi a képet, és részletes leírást ad a tartalma alapján.

Erőforrások tisztítása

Ha törölni és eltávolítani szeretne egy Azure OpenAI-erőforrást, törölheti az erőforrást vagy az erőforráscsoportot. A forráscsoport törlése azt is eredményezi, hogy bármely hozzá tartozó egyéb erőforrás is törlésre kerül.