Skapa en Fabric dataagent

Med en dataagent i Microsoft Fabric kan du skapa konversations-AI-upplevelser som svarar på frågor om data som lagras i lakehouses, lager, Power BI semantiska modeller, KQL-databaser, ontologier och Microsoft Graph i Fabric. Dina kollegor kan ställa frågor på vanlig engelska och få datadrivna svar, även om de inte är AI-experter eller är djupt bekanta med data.

Förutsättningar

  • En betald F2 eller högre Fabric Kapacitet, eller en Power BI Premium kapacitet per kapacitet (P1 eller högre) med Microsoft Fabric Aktiverat.
  • Aktivera korsgeografisk bearbetning och lagring för AI baserat på krav som beskrivs i Fabric dataagentens hyresgästinställningar.
  • Minst en av dessa datakällor, med data: Ett lager, ett sjöhus, en Power BI-semantisk modell, en KQL-databas, en speglad databas eller en ontologi. Du måste ha läsbehörighet till datakällan.

Autentisering och token

Du behöver inte skapa eller ange en Azure OpenAI-nyckel eller en åtkomsttoken för att använda en Fabric dataagent. Fabric använder en Microsoft hanterad Azure OpenAI Assistant och hanterar autentisering åt dig.

  • Dataåtkomst körs under din Microsoft Entra ID användaridentitet och din arbetsyta/dina databehörigheter. Agenten läser scheman och kör ENDAST SQL/DAX/KQL om du har åtkomst. Även om de flesta datakällor respekterar arbetsytebehörigheter styrs Power BI semantiska modellinteraktioner via dataagenter av läsbehörighet på modellnivå och kräver inte medlemskap i arbetsytans roll.
  • Om du vill lägga till en Power BI semantisk modell som datakälla behöver du läsbehörighet för modellen (skriv krävs inte). Läsåtkomst räcker också för att ställa frågor mot källor som du kan komma åt. Mer information om semantiska modellbehörigheter finns i Datauppsättning och semantisk modellsäkerhet. Vid användning av dataagenter räcker läsbehörighet för frågor. Skriv krävs endast för att ändra semantikmodellen eller aktivera funktioner som Förberedelse för AI.
  • Om din organisation använder en Power BI Premium per kapacitet (P1 eller högre) istället för en F SKU, se till att Microsoft Fabric är aktiverat på den kapaciteten.
  • Tjänstens huvudnamn och API-token krävs inte för chattupplevelsen i produkten. Eventuell automatisering med service principals är ett separat scenario och tas inte upp här.

Säkerhet och styrning

Fabric dataagenter respekterar Microsoft Purview styrningsprinciper. När Purview-principer begränsar åtkomsten till en datakälla (till exempel via åtkomstkontroller eller känslighetsetiketter) respekterar agenten dessa begränsningar vid bearbetning av användarfrågor.

Utökat skydd för utgående åtkomst gäller för agentåtgärder. Utgående anslutningar från agenter omfattas av klientorganisationens nätverk och åtkomstregler som konfigurerats i Fabric administratörsportalen. Administratörer kan styra vilka externa slutpunktsagenter som tillåts nå.

Behörigheter för semantiska modeller via dataagenter

För att interagera med Power BI semantiska modeller via en Fabric dataagent krävs endast läsbehörighet för semantikmodellen. Åtkomst till arbetsytan (medlems- eller deltagarroller) och skapa-behörighet krävs inte för att lägga till modellen i agenten eller ställa frågor via agenten. Det här undantaget gäller endast för interaktioner med dataagenten. andra startpunkter (till exempel Analysera i Excel eller direkt rapportredigering) kan fortfarande kräva build-behörighet.

Skrivbehörighet behövs bara för att ändra den semantiska modellen eller använda funktioner som Förberedelse för AI.

Dataåtkomst mellan klientorganisationer

När din arbetsyta innehåller data som delas från en annan klient via OneLake extern datadelning, kan Fabric dataagenten ställa frågor till dessa data via genvägen OneLake som skapades när delningen accepterades. Ingen extra autentiseringskonfiguration krävs. åtkomst körs under dina befintliga Entra ID identitets- och arbetsytebehörigheter. Konsumentklientorganisationens styrningsprinciper gäller för alla delade data.

Flöde från slutpunkt till slutpunkt för att skapa och använda Fabric dataagenter

I det här avsnittet beskrivs de viktigaste stegen för att skapa, verifiera och dela en Fabric dataagent i Fabric, vilket gör den tillgänglig för förbrukning. Agenten arbetar med styrda livedata i OneLake, inklusive tabeller som backas upp av OneLake-genvägar och delningar mellan klientorganisationer.

Processen är enkel och du kan börja testa Fabric dataagentresurser på några minuter.

Skapa en ny Fabric dataagent

Om du vill skapa en ny Fabric dataagent går du först till arbetsytan och väljer sedan knappen + Nytt objekt. På fliken Alla objekt söker du efter Fabric dataagent för att hitta rätt alternativ, som du ser i den här skärmbilden:

Screenshot som visar skapandet av en Fabric dataagent.

När du har valt det uppmanas du att ange ett namn på din Fabric dataagent, som du ser i den här skärmbilden:

Skärmbild som visar hur du anger namnet på Fabric dataagenten.

Se den angivna skärmbilden för en visuell guide om hur du namnger Fabric dataagenten. När du har angett namnet fortsätter du med konfigurationen för att justera Fabric dataagenten efter dina specifika krav.

Välj dina data

När du har skapat en Fabric dataagent kan du lägga till upp till fem datakällor, inklusive lakehouses, lager, Power BI semantiska modeller, KQL-databaser, ontologier och Microsoft Graph, i valfri kombination (upp till fem totalt). Du kan till exempel lägga till fem Power BI semantiska modeller, eller två Power BI semantiska modeller, en lakehouse och en KQL-databas.

Anmärkning

OneLake-katalogen kan innehålla tabeller som exponeras via OneLake-genvägar. Fabricdataagenter kan köra förfrågningar mot dessa genvägsbaserade tabeller direkt, utan att kopiera data till arbetsytan.

När du skapar en Fabric dataagent för första gången och anger ett namn visas OneLake-katalogen automatiskt, så att du kan lägga till datakällor. Om du vill lägga till en datakälla väljer du den från katalogen som visas på nästa skärm och väljer sedan Lägg till. Varje datakälla måste läggas till individuellt. Du kan till exempel lägga till ett sjöhus, välja Lägg till och sedan fortsätta med att lägga till en annan datakälla. Om du vill filtrera datakällans typer väljer du filterikonen och väljer sedan önskad typ. Du kan filtrera efter datakälltyp för att hitta källor enklare, inklusive objekt som delas över organisationsgränser via datadelning mellan klientorganisationer.

När du har lagt till datakällan fylls Explorer i den vänstra rutan på sidan Fabric dataagent med tillgängliga tabeller i varje vald datakälla, där du kan använda kryssrutorna för att göra tabeller tillgängliga eller otillgängliga för AI:n enligt följande skärmbild:

Skärmbild som visar hur du lägger till datakällor.

Anmärkning

Du behöver bara läsbehörighet för att lägga till en Power BI semantisk modell som datakälla. Byggbehörighet krävs inte och användarna behöver inte åtkomst till arbetsytan där semantikmodellen finns när de använder den via en dataagent. Skrivbehörighet behövs bara för att ändra den semantiska modellen eller använda funktioner som Förberedelse för AI.

För efterföljande tillägg av datakällor går du till sidan Explorer i den vänstra rutan på sidan Fabric dataagent och väljer + Datakälla som du ser i den här skärmbilden:

Skärmbild som visar hur du lägger till fler datakällor.

OneLake-katalogen öppnas igen och du kan sömlöst lägga till fler datakällor efter behov.

Tips/Råd

Se till att använda beskrivande namn för både tabeller och kolumner. En tabell med namnet SalesData är mer meningsfull än TableAoch kolumnnamn som ActiveCustomer eller IsCustomerActive är tydligare än C1 eller ActCu. Beskrivande namn hjälper AI:n att generera mer exakta och tillförlitliga frågor.

Ställ frågor

När du har lagt till datakällorna och valt relevanta tabeller för varje datakälla kan du börja ställa frågor. Systemet hanterar frågor som visas i den här skärmbilden:

Skärmdump som visar en fråga för en Fabric-datagent.

Frågor som liknar dessa exempel bör också fungera:

  • "Vad var vår totala försäljning i Kalifornien 2023?"
  • "Vilka är de 5 främsta produkterna med de högsta listpriserna och vilka är deras kategorier?"
  • "Vilka är de dyraste objekten som aldrig har sålts?"

Frågor som detta är lämpliga eftersom systemet kan översätta dem till strukturerade frågor (T-SQL, DAX eller KQL), köra dem mot databaser och sedan returnera konkreta svar baserat på lagrade data.

Frågor som dessa ligger dock utanför omfånget:

  • "Varför är vår fabriksproduktivitet lägre under andra kvartalet 2024?"
  • Vad är grundorsaken till vår försäljningsökning?

Dessa frågor ligger för närvarande utanför omfånget eftersom de kräver komplexa resonemang, korrelationsanalys eller externa faktorer som inte är direkt tillgängliga i databasen. Den Fabric dataagenten utför för närvarande inte avancerad analys, maskininlärning eller kausal slutsatsdragning. Den hämtar och bearbetar helt enkelt strukturerade data baserat på användarens fråga.

När du ställer en fråga använder Fabric-dataagenten api:et Azure OpenAI Assistant för att bearbeta begäran. Flödet fungerar på följande sätt:

Schemaåtkomst med användarautentiseringsuppgifter

Systemet använder först användarens autentiseringsuppgifter för att komma åt datakällans schema (till exempel lakehouse, warehouse, PBI-semantisk modell, KQL-databaser eller ontologi). Detta säkerställer att systemet hämtar datastrukturinformation som användaren har behörighet att visa.

Skapa prompten

För att tolka användarens fråga kombinerar systemet:

  1. Användarfråga: Frågan om naturligt språk som tillhandahålls av användaren.
  2. Schemainformation: Metadata och strukturell information om datakällan som hämtades i föregående steg.
  3. Exempel och instruktioner: Alla fördefinierade exempel (till exempel exempel exempel frågor och svar) eller specifika instruktioner som tillhandahålls när du konfigurerar Fabric dataagenten. De här exemplen och instruktionerna hjälper till att förfina AI:ns förståelse av frågan och vägleda hur AI:n interagerar med data.

All den här informationen används för att skapa en fråga. Den här uppmaningen fungerar som indata till Azure OpenAI Assistant API, som fungerar som en agent som ligger bakom Fabric dataagenten. Detta instruerar i princip Fabric dataagenten om hur frågan ska bearbetas och vilken typ av svar som ska skapas.

Verktygsanrop baserat på frågebehov

Agenten analyserar den konstruerade prompten och bestämmer vilket verktyg som ska anropas för att hämta svaret:

  • Naturligt språk till SQL (NL2SQL): Används för att generera SQL-frågor när data finns i ett "lakehouse" eller datamagasin.
  • Naturligt språk till DAX (NL2DAX): Används för att skapa DAX-frågor för att interagera med semantiska modeller i Power BI datakällor
  • Naturligt språk till KQL (NL2KQL): Används för att konstruera KQL-frågor för att fråga efter data i KQL-databaser. NL2KQL kan använda KQL-användardefinierade funktioner (UDF:er) när de är tillgängliga i de valda databaserna.
  • Microsoft Graph: Används för att fråga organisationsdata som är tillgängliga via Microsoft Graph

Det valda verktyget genererar en fråga med hjälp av schemat, metadata och kontexten som agenten som ligger bakom Fabric dataagenten tillhandahåller. Sedan validerar verktyget frågan för att säkerställa korrekt formatering och efterlevnad av dess säkerhetsprotokoll och dess egna principer för ansvarsfull AI (RAI).

Svarskonstruktion

Agenten som ligger bakom Fabric-dataagenten kör frågan och ser till att svaret är strukturerat och formaterat på lämpligt sätt. Agenten inkluderar ofta ytterligare kontext för att göra svaret användarvänligt. Slutligen visas svaret för användaren i ett konversationsgränssnitt, enligt följande skärmbild:

Skärmbild som visar svaret på frågan av en Fabric dataagent.

Agenten presenterar både resultatet och de mellanliggande steg som den vidtog för att hämta det slutliga svaret. Den här metoden förbättrar transparensen och möjliggör validering av dessa steg, om det behövs. Användare kan expandera listrutan för stegen för att visa alla steg som Fabric dataagenten vidtog för att hämta svaret, enligt följande skärmbild:

Skärmbild som visar de steg som vidtagits av en Fabric dataagent.

Dessutom tillhandahåller Fabric-dataagenten den genererade koden som används för att fråga motsvarande datakälla, vilket ger ytterligare insikt i hur svaret konstruerades.

Dessa frågor är endast utformade för att fråga ut data. Åtgärder som omfattar skapande av data, datauppdateringar, borttagningar av data, alla typer av dataändringar tillåts inte för att skydda dataintegriteten.

När som helst kan du välja knappen Rensa chatt för att rensa chatten, enligt följande skärmbild:

Skärmbild som markerar funktionen Rensa chatt.

Funktionen Rensa chatt raderar all chatthistorik och startar en ny session. När du har tagit bort chatthistoriken kan du inte hämta den.

Ändra datakällan

Om du vill ta bort en datakälla hovrar du över namnet på datakällan i Explorer i den vänstra rutan på sidan Fabric dataagent tills menyn med tre punkter visas. Välj de tre punkterna för att visa alternativen och välj sedan Ta bort för att ta bort datakällan enligt följande skärmbild:

Skärmbild som visar hur du tar bort eller uppdaterar datakällor.

Om datakällan har ändrats kan du också välja Uppdatera på samma meny, som du ser på följande skärmbild:

Skärmbild som visar hur du uppdaterar en datakälla.

Detta säkerställer att alla uppdateringar av datakällan både återspeglas och fylls i korrekt i utforskaren för att hålla Fabric dataagenten synkroniserad med de senaste data.

Konfiguration av Fabric-dataagent

Fabric-dataagenten erbjuder flera konfigurationsalternativ som gör det möjligt för användare att anpassa Fabric dataagentbeteende för att bättre matcha organisationens behov. När Fabric dataagenten bearbetar och presenterar data ger dessa konfigurationer flexibilitet som ger mer kontroll över resultatet.

Ge instruktioner

Du kan ge specifika instruktioner för att vägleda AI:ns beteende. Om du vill lägga till dem i fönstret Fabric-dataagentinstruktioner väljer du Dataagentinstruktioner som visas i följande skärmbild:

Skärmbild som visar val av knappen Dataagentinstruktioner.

Här kan du skriva upp till 15 000 tecken i vanlig engelskspråkig text för att instruera AI:n om hur du hanterar frågor.

Du kan till exempel ange den exakta datakälla som ska användas för vissa typer av frågor. Exempel på val av datakälla kan vara att instruera AI:n att använda

  • Power BI semantiska modeller för finansiella frågor
  • ett sjöhus för försäljningsdata
  • en KQL-databas för driftsmått

Dessa instruktioner säkerställer att AI:n genererar lämpliga frågor, oavsett om det är SQL, DAX eller KQL, baserat på din vägledning och kontexten för frågorna.

Om DIN AI-resurs konsekvent misstolkar vissa ord, förkortningar eller termer kan du försöka tillhandahålla tydliga definitioner i det här avsnittet för att säkerställa att AI:n förstår och bearbetar dem korrekt. Detta blir särskilt användbart för domänspecifik terminologi eller unik affärsjargong.

Genom att skräddarsy dessa instruktioner och definiera termer förbättrar du AI:ns förmåga att leverera exakta och relevanta insikter, i fullständig anpassning till din datastrategi och dina affärskrav.

Ange exempelfrågor

Du kan förbättra svarsprecisionen genom att tillhandahålla exempelfrågor som är skräddarsydda för varje datakälla som stöds (lakehouse, lager, KQL-databas). Den här metoden, som kallas few-shot learning i generativ AI, hjälper till att vägleda Fabric dataagenten att generera svar som bättre överensstämmer med dina förväntningar.

När du tillhandahåller AI:n med exempel på fråge-/frågepar refererar den till dessa exempel när den svarar på framtida frågor. Genom att matcha nya frågor med de mest relevanta exemplen kan AI:n införliva affärsspecifik logik och effektivt svara på vanliga frågor. Den här funktionen möjliggör finjustering för enskilda datakällor och säkerställer generering av mer exakta SQL- eller KQL-frågor.

Power BI semantiska modelldata har inte stöd för att lägga till exempel på fråge-/svarspar just nu. Men för datakällor som stöds, till exempel lakehouse-, lager- och KQL-databaser, kan fler exempel avsevärt förbättra AI:ns möjlighet att generera exakta frågor när standardprestandan behöver justeras.

Tips/Råd

En mängd olika exempelfrågor förbättrar möjligheten för en Fabric dataagent att generera korrekta och relevanta SQL/KQL-frågor. För KQL-databaser kan NL2KQL också använda KQL-användardefinierade funktioner (UDF:er) som är tillgängliga i dina valda databaser, så överväg att inkludera exempelfrågor som refererar till UDF:er.

Om du vill lägga till eller redigera exempelfrågor väljer du knappen Exempelfrågor för att öppna fönstret exempelfrågor, enligt följande skärmbild:

Skärmbild som visar var du kan redigera de exempel som du anger för AI:n.

Det här fönstret innehåller alternativ för att lägga till eller redigera exempelfrågor för alla datakällor som stöds förutom Power BI semantiska modeller och ontologier. För varje datakälla kan du välja Lägg till eller redigera exempelfrågor för att ange relevanta exempel, enligt följande skärmbild:

Skärmbild som visar DE SQL-exempel som du anger för AI:n.

Anmärkning

Den Fabric dataagenten refererar endast till frågor som innehåller giltig SQL/KQL-syntax och som matchar schemat för de valda tabellerna. Fabric-dataagenten använder inte frågor som inte har slutfört valideringen. Kontrollera att alla exempelfrågor är giltiga och korrekt anpassade till schemat för att säkerställa att Fabric dataagenten använder dem effektivt.

Publicera och dela en Fabric data-agent

När du har testat prestandan för din Fabric dataagent i olika frågor, och du bekräftar att den genererar korrekta SQL-, DAX- eller KQL-frågor, kan du dela den med dina kollegor. Välj då Publicera, som du ser på följande skärmbild:

Screenshot som visar publicering av en Fabric dataagent.

Det här steget öppnar ett fönster som ber om en beskrivning av Fabric dataagenten. Här ger du en detaljerad beskrivning av vad Fabric dataagenten gör. Den här informationen vägleder dina kollegor om funktionerna i Fabric dataagenten och hjälper andra AI-system/orkestratorer att effektivt anropa Fabric-dataagenten.

När du har publicerat Fabric dataagenten har du två versioner av den. En version är den aktuella utkastversionen, som du kan fortsätta att förfina och förbättra. Den andra versionen är den publicerade versionen, som du kan dela med dina kollegor som vill fråga Fabric dataagenten för att få svar på deras frågor. Du kan införliva feedback från dina kollegor i din aktuella utkastversion när du utvecklar den, för att ytterligare förbättra Fabric dataagentens prestanda.

ALM och implementering

Fabric dataagenter stöder funktioner för livscykelhantering som hjälper dig att hantera agenter i olika miljöer.

  • Diagnostik: Använd inbyggd diagnostik för att felsöka agentbeteende och identifiera problem med frågegenerering.
  • Git-integrering: Anslut din Fabric-arbetsyta till en Git-lagringsplats till konfigurationer för versionskontrollagenten, inklusive instruktioner, exempelfrågor och val av datakälla.
  • Distributionspipelines: Använd Fabric distributionspipelines för att befordra dataagenter från utvecklings- till test- och produktionsarbetsytor.

Anmärkning

Konsumenter som frågar en dataagent som använder Power BI semantiska modeller behöver bara läsbehörighet för dessa modeller och behöver inte åtkomst till arbetsytan. Om du ändrar den semantiska modellen eller använder funktioner som Förberedelse för AI krävs skrivbehörighet.