Dela via


Kontinuerlig distribution med Azure DevOps

Viktigt!

Anpassade kommandon dras tillbaka den 30 april 2026. Från och med den 30 oktober 2023 kan du inte skapa nya program för anpassade kommandon i Speech Studio. I samband med den här ändringen dras LUIS tillbaka den 1 oktober 2025. Från och med den 1 april 2023 kan du inte skapa nya LUIS-resurser.

I den här artikeln får du lära dig hur du konfigurerar kontinuerlig distribution för dina anpassade kommandoprogram. Skripten som stöder CI/CD-arbetsflödet tillhandahålls till dig.

Förutsättning

  • Ett program för anpassade kommandon för utveckling (DEV)
  • Ett program för anpassade kommandon för produktion (PROD)
  • Registrera dig för Azure Pipelines

Exportera/importera/publicera

Skripten finns i Röstassistenten – Anpassade kommandon. Klona skripten i bash-katalogen till lagringsplatsen. Kontrollera att du har samma sökväg.

Konfigurera en pipeline

  1. Gå till Azure DevOps – Pipelines och välj "Ny pipeline"

  2. I Anslut avsnittet väljer du platsen för lagringsplatsen där skripten finns

  3. I avsnittet Välj väljer du din lagringsplats

  4. I avsnittet Konfigurera väljer du "Startpipeline"

  5. Därefter får du en redigerare med en YAML-fil och ersätter avsnittet "steps" med det här skriptet.

    steps:
    - task: Bash@3
      displayName: 'Export source app'
      inputs:
        targetType: filePath
        filePath: ./bash/export.sh
        arguments: '-r westus2 -s $(SubscriptionKey) -c $(Culture) -a $(SourceAppId) -f ExportedDialogModel.json'
        workingDirectory: bash
        failOnStderr: true
    
    - task: Bash@3
      displayName: 'Import to target app'
      inputs:
        targetType: filePath
        filePath: ./bash/import.sh
        arguments: '-r westus2 -s $(SubscriptionKey) -c $(Culture) -a $(TargetAppId) -f ExportedDialogModel.json'
        workingDirectory: bash
        failOnStderr: true
    
    - task: Bash@3
      displayName: 'Train and Publish target app'
      inputs:
        targetType: filePath
        filePath: './bash/train-and-publish.sh'
        arguments: '-r westus2 -s $(SubscriptionKey) -c $(Culture) -a $(TargetAppId)'
        workingDirectory: bash
        failOnStderr: true
    
  6. Dessa skript förutsätter att du använder regionen westus2, om så inte är fallet uppdaterar argumenten för aktiviteterna i enlighet med detta

    Screenshot that highlights the region value in the arguments.

  7. I knappen "Spara och kör" öppnar du listrutan och väljer "Spara"

Ansluta pipelinen med ditt program

  1. Gå till huvudsidan i pipelinen.

  2. I listrutan överst till höger väljer du Redigera pipeline. Du kommer till en YAML-redigerare.

  3. I det övre högra hörnet bredvid knappen "Kör" väljer du Variabler. Välj Ny variabel.

  4. Lägg till följande variabler:

    Olika beskrivning
    SourceAppId ID för DEV-programmet
    TargetAppId ID för PROD-programmet
    SubscriptionKey Nyckeln som används för båda programmen
    Kultur Programkulturen (en-us)

    Send Activity payload

  5. Välj "Kör" och välj sedan "Jobb" som körs.

    Du bör se en lista över aktiviteter som körs som innehåller: "Exportera källapp", "Importera till målapp" och "Träna och publicera målapp"

Distribuera från källkod

Om du vill behålla definitionen av ditt program på en lagringsplats tillhandahåller vi skripten för distributioner från källkoden. Eftersom skripten finns i bash måste du installera Linux-undersystemet om du använder Windows.

Skripten finns i Röstassistenten – Anpassade kommandon. Klona skripten i bash-katalogen till lagringsplatsen. Kontrollera att du har samma sökväg.

Förbereda lagringsplatsen

  1. Skapa en katalog för ditt program i vårt exempel skapa en med namnet "appar".

  2. Uppdatera argumenten i bash-skriptet nedan och kör. Den importerar dialogmodellen för ditt program till filen myapp.json

    bash/export.sh -r <region> -s <subscriptionkey> -c en-us -a <appid> -f apps/myapp.json
    
    Argument beskrivning
    region Din Speech-resursregion. Till exempel: westus2
    subscriptionkey Din Speech-resursnyckel.
    Appid det program-ID för anpassade kommandon som du vill exportera.
  3. Skicka ändringarna till lagringsplatsen.

Konfigurera en pipeline

  1. Gå till Azure DevOps – Pipelines och välj "Ny pipeline"

  2. I Anslut avsnittet väljer du platsen för lagringsplatsen där skripten finns

  3. I avsnittet Välj väljer du din lagringsplats

  4. I avsnittet Konfigurera väljer du "Startpipeline"

  5. Därefter får du en redigerare med en YAML-fil och ersätter avsnittet "steps" med det här skriptet.

    steps:
    - task: Bash@3
      displayName: 'Import app'
      inputs:
        targetType: filePath
        filePath: ./bash/import.sh
        arguments: '-r westus2 -s $(SubscriptionKey) -c $(Culture) -a $(TargetAppId) -f ../apps/myapp.json'
        workingDirectory: bash
        failOnStderr: true
    
    - task: Bash@3
      displayName: 'Train and Publish app'
      inputs:
        targetType: filePath
        filePath: './bash/train-and-publish.sh'
        arguments: '-r westus2 -s $(SubscriptionKey) -c $(Culture) -a $(TargetAppId)'
        workingDirectory: bash
        failOnStderr: true
    

    Kommentar

    dessa skript förutsätter att du använder regionen westus2, om så inte är fallet uppdaterar argumenten för uppgifterna i enlighet med detta

  6. I knappen "Spara och kör" öppnar du listrutan och väljer "Spara"

Ansluta pipelinen med dina målprogram

  1. Gå till huvudsidan i pipelinen.

  2. I listrutan överst till höger väljer du Redigera pipeline. Du kommer till en YAML-redigerare.

  3. I det övre högra hörnet bredvid knappen "Kör" väljer du Variabler. Välj Ny variabel.

  4. Lägg till följande variabler:

    Olika beskrivning
    TargetAppId ID för PROD-programmet
    SubscriptionKey Nyckeln som används för båda programmen
    Kultur Programkulturen (en-us)
  5. Välj "Kör" och välj sedan "Jobb" som körs. Du bör se en lista över aktiviteter som körs som innehåller: "Importera app" och "Träna och publicera app"

Nästa steg