Guida introduttiva: Integrare Azure OpenAI

Nota

I piani Basic, Standard ed Enterprise saranno deprecati a partire dalla metà di marzo 2025, con un periodo di ritiro di 3 anni. È consigliabile eseguire la transizione ad App Azure Container. Per altre informazioni, vedere l'annuncio di ritiro di Azure Spring Apps.

Il piano Standard a consumo e dedicato sarà deprecato a partire dal 30 settembre 2024, con un arresto completo dopo sei mesi. È consigliabile eseguire la transizione ad App Azure Container. Per altre informazioni, vedere Eseguire la migrazione del consumo di Azure Spring Apps Standard e del piano dedicato alle app Azure Container.

Questo articolo si applica a:❌ Basic/Standard ✔️ Enterprise

Questa guida introduttiva illustra come integrare Azure OpenAI con le applicazioni distribuite nel piano Enterprise di Azure Spring Apps.

Azure OpenAI consente alle applicazioni di sfruttare i modelli di intelligenza artificiale su larga scala e generativi con conoscenze approfondite del linguaggio e del codice per consentire nuove funzionalità di ragionamento e comprensione.

Il video seguente illustra come Azure Spring Apps usa Azure OpenAI per creare applicazioni intelligenti:


Prerequisiti

Effettuare il provisioning di Azure OpenAI

Per aggiungere intelligenza artificiale all'applicazione, creare un account OpenAI di Azure e distribuire modelli linguistici. I passaggi seguenti descrivono come effettuare il provisioning di un account OpenAI di Azure e distribuire modelli linguistici usando l'interfaccia della riga di comando di Azure:

  1. Usare il comando seguente per creare un account Azure OpenAI:

    az cognitiveservices account create \
        --resource-group <resource-group-name> \
        --name <open-ai-service-name> \
        --location <region> \
        --kind OpenAI \
        --sku s0 \
        --custom-domain <open-ai-service-name>   
    
  2. Usare i comandi seguenti per creare le distribuzioni del modello per text-embedding-ada-002 e gpt-35-turbo-16k nell'istanza del servizio Azure OpenAI:

    az cognitiveservices account deployment create \
        --resource-group <resource-group-name> \
        --name <open-ai-service-name> \
        --deployment-name text-embedding-ada-002 \
        --model-name text-embedding-ada-002 \
        --model-version "2"  \
        --model-format OpenAI \
        --sku-name "Standard" \
        --sku-capacity 1
    
    az cognitiveservices account deployment create \
        --resource-group <resource-group-name> \
        --name <open-ai-service-name> \
        --deployment-name gpt-35-turbo-16k \
        --model-name gpt-35-turbo-16k \
        --model-version "0613"  \
        --model-format OpenAI \
        --sku-name "Standard" \
        --sku-capacity 1
    

Distribuire il servizio Assist in App Spring di Azure

Usare la procedura seguente per creare, configurare e distribuire l'applicazione Assist Service in Azure Spring Apps.

  1. Usare il comando seguente per creare il nuovo servizio di intelligenza artificiale: assist-service

    az spring app create \
        --resource-group <resource-group-name> \
        --name assist-service \
        --service <Azure-Spring-Apps-service-instance-name> \
        --instance-count 1 \
        --memory 1Gi
    
  2. Usare il comando seguente per configurare Spring Cloud Gateway con la route del servizio Assist:

    az spring gateway route-config create \
        --resource-group <resource-group-name> \
        --service <Azure-Spring-Apps-service-instance-name> \
        --name assist-routes \
        --app-name assist-service \
        --routes-file azure-spring-apps-enterprise/resources/json/routes/assist-service.json
    
  3. Usare il comando seguente per recuperare l'URL di base dell'endpoint dell'API REST per il servizio Azure OpenAI:

    export SPRING_AI_AZURE_OPENAI_ENDPOINT=$(az cognitiveservices account show \
        --name <open-ai-service-name> \
        --resource-group <resource-group-name> \
        | jq -r .properties.endpoint)
    
  4. Usare il comando seguente per recuperare la chiave API primaria:

    export SPRING_AI_AZURE_OPENAI_APIKEY=$(az cognitiveservices account keys list \
        --name <open-ai-service-name> \
        --resource-group <resource-group-name> \
        | jq -r .key1)
    
  5. Usare il comando seguente per distribuire l'applicazione Assist Service:

    az spring app deploy 
        --resource-group <resource-group-name> \
        --name assist-service \
        --service <Azure-Spring-Apps-service-instance-name> \
        --source-path apps/acme-assist \
        --build-env BP_JVM_VERSION=17 \
        --env \
            SPRING_AI_AZURE_OPENAI_ENDPOINT=${SPRING_AI_AZURE_OPENAI_ENDPOINT} \
            SPRING_AI_AZURE_OPENAI_APIKEY=${SPRING_AI_AZURE_OPENAI_APIKEY} \
            SPRING_AI_AZURE_OPENAI_MODEL=gpt-35-turbo-16k \
            SPRING_AI_AZURE_OPENAI_EMBEDDINGMODEL=text-embedding-ada-002
    
  6. Testare ora l'applicazione Fitness Store nel browser. Selezionare ASK TO FITASSIST per conversare con l'applicazione Assist Service.

    Screenshot che mostra il pulsante ASK TO FITASSIST.

  7. In FitAssist immettere Ho bisogno di una bicicletta per un commutatore per lavorare e osservare l'output generato dall'applicazione assist service:

    Screenshot che mostra la query

Pulire le risorse

Se si prevede di usare le guide di avvio rapido e le esercitazioni successive, è consigliabile non cancellare le risorse create. Quando non è più necessario, eliminare il gruppo di risorse per eliminare tutte le risorse contenute al suo interno. Per eliminare il gruppo di risorse usando l'interfaccia della riga di comando di Azure, usare i comandi seguenti:

echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."

Passaggi successivi

Continuare con uno degli argomenti di avvio rapido facoltativi seguenti: