Redigera

Dela via


Använda Azure OpenAI för att bearbeta podcastljudfiler

Azure AI Search
Azure OpenAI Service

Lösningsidéer

I den här artikeln beskrivs en lösningsidé. Molnarkitekten kan använda den här vägledningen för att visualisera huvudkomponenterna för en typisk implementering av den här arkitekturen. Använd den här artikeln som utgångspunkt för att utforma en välkonstruerad lösning som överensstämmer med arbetsbelastningens specifika krav.

Den här artikeln innehåller ett exempel på design av en pipeline som du kan använda för att bearbeta ljudfiler. Pipelinen använder Azure AI-tjänster för tal till text och Azure OpenAI Service för analys. Arkitekturen består av ett statiskt webbprogram som tillhandahåller en operativ instrumentpanel och tre Azure-funktioner som samordnar och bearbetar mediefilerna. Du kan använda den här lösningen för mediearbetsbelastningar som kräver automatiserad och skalbar AI-analys.

Arkitektur

Diagram som visar arkitekturen för bearbetning av ljudfiler med Hjälp av Azure OpenAI för analys.

Ladda ned en Visio-fil med den här arkitekturen.

Arbetsflöde

  1. Användaren går till en webbsida som har ett användargränssnitt för att ladda upp ljudfiler.

  2. Den statiska webbappen innehåller kod som laddar upp ljudfilen till Azure Blob Storage.

  3. Användaren interagerar med webbsidan, vilket utlöser en funktion som använder en HTTP-slutpunkt för att initiera överföringen av ljudfilen till en angiven container i lagringskontot.

  4. När Blob Storage har upptäckt att en ny fil har laddats upp anropas en annan funktion som konverterar ljudet till text med hjälp av Azure AI Speech. Transkriptionsresultatet lagras i ett textfilformat och laddas upp till en annan container.

  5. En tredje funktion använder generativ AI för att identifiera och bearbeta transkriptionerna och generera sammanfattningar, sökmotoroptimerade nyckelord och översättningar.

Komponenter

  • Static Web Apps är en tjänst som du kan använda för att förenkla värdtjänster och distribution av statiska webbprogram. Static Web Apps ger sömlös integrering med GitHub-lagringsplatser för automatisk distribution och kontinuerlig integrering och kontinuerlig distribution (CI/CD) pipelines.

  • Azure Functions är en serverlös databehandlingstjänst som utvecklare kan använda för att köra kod utan att behöva hantera infrastrukturen.

  • Blob Storage är en lagringstjänst som du kan använda för att lagra stora mängder ostrukturerade data, till exempel text eller binära data.

  • AI-tjänster är en uppsättning molnbaserade API:er och fördefinierade AI-modeller som erbjuder funktioner som taligenkänning, förståelse för naturligt språk och visuellt innehåll.

  • Azure OpenAI är ett partnerskap mellan Microsoft Azure och OpenAI som ger åtkomst till OpenAI:s modeller och tekniker via Azure-plattformen.

Information om scenario

Podcaster är ett effektivt medium för att dela dina idéer, berättelser och perspektiv. Många organisationer och individer har upptäckt kraften i att använda podcasts för att ansluta och utöka sin publik. För att nå en ännu bredare publik kan skaparna använda en podcastsynopsis och innehållslokalisering för att göra sitt innehåll mer tillgängligt för talare av andra språk.

En podcastsynopsis är ett snabbt och enkelt sätt för skapare att informera lyssnarna om vad deras podcastavsnitt handlar om. En podcastsynopsis kan hjälpa lyssnarna att avgöra om de vill stämma in. En översatt synopsis gör det enklare för potentiella internationella lyssnare att upptäcka podcasten och lära sig mer om vad den erbjuder.

Lokalisering är en process för att anpassa podcastinnehållet till ett specifikt språk och en specifik kultur. Lokaliseringen går utöver översättning och tar hänsyn till målgruppens nyanser, inställningar och förväntningar. Lokalisering kan hjälpa dig att få kontakt med dina lyssnare på en djupare nivå och öka deras engagemang och lojalitet.

Det är svårt att skapa och publicera innehåll. AI kan hjälpa dig att automatisera processer och skala din podcastproduktion och distribution. Du kan använda AI- och AI-infrastruktur för att transkribera ditt podcastljud, översätta din synopsis och generera voice-overs på olika språk och accenter.

Den här artikeln beskriver hur du använder AI för att skapa en podcastsynopsis, lokalisera podcasten till flera språk och automatiskt generera sökord för marknadsföring och sökmotoroptimering (SEO) som hjälper dig att bredda innehållspubliken. Den här lösningen visar hur du använder gpt-kraften för att automatisera en stor del av den här processen med Speech och Azure OpenAI. Du kan använda GPT för att automatiskt transkribera ljud till text, generera en synopsis i en viss stil och ton, föreslå catchy tagglinjer och SEO-nyckelord och översätta synopsisen till flera språk för att nå en global publik, allt på några minuter.

Webbapp

Ett statiskt webbprogram exponerar programmets funktioner. Programmet skrivs med hjälp av React-webbbiblioteket. Du kan använda React-webbbiblioteket för att ladda upp ljudfiler. När ljudfilerna har bearbetats genererar React visningsbara och nedladdningsbara resultat som omfattar:

  • En synopsis.
  • En översatt synopsis.
  • En alternativ rubrik.
  • SEO nyckelord.

Storage

Den här lösningen använder ett enda Azure Storage-konto med flera containrar för att lagra rådatafiler (ljud), transkriptioner (textavskrifter av ljud) och Azure OpenAI-resultaten.

Compute

Den här lösningen använder tre Azure-funktioner i ett specifikt arbetsflöde för att bearbeta ljudfiler. Alla tre funktionerna är skrivna i Python.

HTTP-utlöst funktion

Den statiska webbplatsen använder den första HTTP-utlösta funktionen. Funktionen har ett Flask-appramverk och exponerar två slutpunkter:

  • POST-åtgärd för att ladda upp ljudfilen till Blob Storage
  • GET-åtgärd för att hämta resultatet av de genererade AI-insikterna

Blobutlöst funktion för containern raw files

Den andra funktionen är en blobutlöst funktion som har bindningar inställda på att använda lagringskontots raw files-container. Funktionen utlöses automatiskt när en fil laddas upp till den här containern. Den här funktionen drar också nytta av ffmpeg CLI-verktyget som monteras med hjälp av Azure Files för att konvertera ljudfiler till WAV. Speech använder WAV-formatet. När filen har konverterats till WAV-filformat skickas den sedan till Speech. Tal skapar en textavskrift av ljudfilen. Textavskriften laddas sedan upp till transkriptionscontainern i lagringskontot.

Blobutlöst funktion för transkriptionscontainern

Den tredje och sista funktionen är en blobutlöst funktion som har bindningar inställda på att använda lagringskontots transkriptionscontainer. Alla filer som laddas upp till den här containern utlöser funktionen som ska köras. Den här sista funktionen består av en serie prompter i Azure OpenAI som sammanfattar transkriptionen, genererar taggrader och SEO-nyckelord och översätter avskriften till icke-engelska språk.

När synopsis, SEO-nyckelord och översättning har genererats laddas Azure OpenAI-svaren upp till containern open-ai-results i lagringskontot.

AI och maskininlärning

Den här lösningen använder två Azure AI-arbetsbelastningar:

  • Tal
  • Azure OpenAI

Funktionerna för tal till text i Tal transkriberar ljud till text. Azure OpenAI GPT-modeller bearbetar texten. Modellerna använder generativa funktioner för att generera taggar, SEO-nyckelord, sammanfattning och översättningstjänst. De använder transkriptionen för att utföra textinnehållsgenereringsuppgifter.

Potentiella användningsfall

Arkitekturramverket är utformat för medieuppgifter som AI analyserar automatiskt. Det här ramverket är avsett för medieprogram men kan användas för bredare program, särskilt för uppgifter som kräver textsammanfattning av ljudinspelningar och använder AI-genererat innehåll för transkriptioner, sammanfattningar, tagliner och synopser.

Deltagare

Den här artikeln underhålls av Microsoft. Det har ursprungligen skrivits av följande medarbetare.

Huvudsakliga författare:

Övriga medarbetare:

  • Andy Beach | Chief Technical Officer (CTO), Media and Entertainment Worldwide
  • Simon Powell | Programhanteraren för huvudnamn

Om du vill se icke-offentliga LinkedIn-profiler loggar du in på LinkedIn.

Nästa steg