Veiledning: Bruk AI-funksjoner i et lager

Gjelder for:✅ Lager i Microsoft Fabric

I denne veiledningen lærer du hvordan du bruker innebygde AI-funksjoner i T-SQL for å resonnere om lager-tabelldata på naturlig språk. Bruk dbo.fact_sale tabellen til å utforske AI-funksjoner i enkle SELECT spørringer, bruk dem i en mer avansert analysespørring, og lagre resultatene deres i kolonner.

Notat

Denne opplæringen er en del av et ende-til-ende-scenario. For å fullføre denne veiledningen må du først fullføre disse veiledningene:

  1. Opprette et arbeidsområde
  2. Opprette et
  3. innta data i et lager

Utforsk data med AI-funksjoner

I denne oppgaven kan du lære hvordan du bruker noen av de innebygde AI-funksjonene i enkle SELECT spørringer for å utforske hva de returnerer, uten å endre tabellen.

Kontroller at arbeidsområdet du opprettet i første opplæringen er åpen.

Trekk ut kategorier fra beskrivelsen

  1. Velg ny SQL-spørringpå båndet Hjem .

  2. Lim inn følgende kode i redigeringsprogrammet for spørringen. Koden brukes AI_EXTRACT til å trekke ut farge og størrelse fra beskrivelser som Alien officer hoodie (Black) XXL. AI_EXTRACT returnerer et JSON-objekt, så bruk OPENJSON for å gjøre attributtene om til separate kolonner.

    -- Extract color and size attributes.
    SELECT
        SaleKey,
        Description,
        extracted.Color,
        extracted.Size
    FROM dbo.fact_sale
    CROSS APPLY OPENJSON(AI_EXTRACT(Description, 'Color', 'Size'))
        WITH (Color varchar(50), Size varchar(20)) AS extracted;
    
  3. Kjør spørringen.

  4. Når kjøringen er fullført, gir du spørringen nytt navn som Color & Size Extraction. Verifiser at Color og Size er fylt i separate kolonner.

Formatbeskrivelse som HTML

  1. Lag en ny spørring, lim inn følgende kode, og kjør den. Koden brukes AI_GENERATE_RESPONSE til å omskrive Description som et HTML-produktsammendrag med en nøkkelattributtliste, klar til å vises på en nettside.

    -- Generate a catalog description formatted as HTML, with a summary and an attribute list.
    SELECT
        SaleKey,
        Description,
        AI_GENERATE_RESPONSE(
            'Rewrite as a short e-commerce catalog description. Format the result as HTML: wrap the summary in a <p> tag, then list key attributes as a <dl>, with each <dt> label bolded using <strong> and followed by its <dd> value.',
            Description
        ) AS CatalogDescription
    FROM dbo.fact_sale;
    
  2. Gi spørringen nytt navn som Short Catalog Description Generation. Inspiser CatalogDescription og bekreft at den inkluderer de forespurte <p>, <dl>, <dt>, og <dd> elementene.

Oppsummer informasjon om salgsartikler

  1. Lag en ny spørring, lim inn følgende kode, og kjør den. Koden brukes AI_GENERATE_RESPONSE til å gjøre om numeriske kolonner, i stedet for Description, til et klartekstoppsummering av salgsobjektet.

    -- Summarize each sales item in plain text, based on numeric columns only.
    DECLARE @prompt nvarchar(max) = N'Summarize this sales item in one short sentence for a business report.';
    
    SELECT
        *,
        AI_GENERATE_RESPONSE(
            @prompt,
            CONCAT(
                'Package: ', Package,
                '. Quantity: ', Quantity,
                '. Dry items: ', TotalDryItems,
                '. Chiller items: ', TotalChillerItems,
                '. Unit price: ', UnitPrice,
                '. Tax rate: ', TaxRate,
                '. Profit: ', Profit,
                '. Total including tax: ', TotalIncludingTax
            )
        ) AS SalesItemSummary
    FROM dbo.fact_sale;
    
  2. Gi spørringen nytt navn som Sales Item Summary Generation. Les noen verdier SalesItemSummary og sjekk at de gjenspeiler de numeriske kolonnene i samme rad.

Bestem prioritet for hver salgsvare

I denne oppgaven bør du bruke AI_GENERATE_RESPONSE en mer avansert spørring som kombinerer flere kolonner for å støtte en forretningsbeslutning, i stedet for å resonnere ut fra én enkelt kolonne.

  1. Lag en ny spørring, lim inn følgende kode, og kjør den. Koden kombinerer fakturadato, leveringsdato, referansedato, linjetotal, fortjeneste og antall kjølervarer som trenger kjølehåndtering i én input, og ber deretter AI om å returnere en prioritert poengsum som blander disse signalene til ett tall. fact_sale Inneholder historiske salg, så @AsOfDate det står for den nåværende forretningsdatoen du ville brukt i en live oppfyllelseskø.

    -- Score sales items for fulfillment priority based on invoice-to-delivery time, line total, profit, and chiller items.
    DECLARE @AsOfDate date = '2016-05-01';
    DECLARE @prompt nvarchar(max) = N'Given the invoice date, delivery date, reference date, line total, profit, and number of chiller items below, return a single integer priority score from 1 (low) to 100 (urgent) for sales-item fulfillment. Consider how much time was allowed from invoice to delivery, and how close the delivery date is to the reference date. Larger line totals, closer delivery dates, higher profit, and more chiller items should raise the score. Return only the number.';
    
    SELECT
        SaleKey,
        InvoiceDateKey,
        DeliveryDateKey,
        TotalIncludingTax,
        Profit,
        TotalChillerItems,
        TRY_CAST(AI_GENERATE_RESPONSE(
            @prompt,
            CONCAT(
                'Invoice date: ', CONVERT(char(10), InvoiceDateKey, 23),
                '. Delivery date: ', CONVERT(char(10), DeliveryDateKey, 23),
                '. Reference date: ', CONVERT(char(10), @AsOfDate, 23),
                '. Line total: ', TotalIncludingTax,
                '. Profit: ', Profit,
                '. Chiller items: ', TotalChillerItems
            )
        ) AS int) AS PriorityScore
    FROM dbo.fact_sale
    ORDER BY PriorityScore DESC;
    
  2. Gi spørringen nytt navn som Sales Item Fulfillment Priority Scoring. Bekreftingsverdiene PriorityScore ligger mellom 1 og 100, med de høyeste poengsummene sortert først.

Persist AI-resultater

Eksemplene så langt gir AI-resultater til en SELECT. For å gjenbruke disse resultatene uten å måtte beregne dem på nytt hver gang, skriv dem tilbake med UPDATE.

Rett grammatikkfeil i beskrivelsen

  1. Lag en ny spørring, lim inn følgende kode, og kjør den. Koden brukes AI_FIX_GRAMMAR til å korrigere Description på stedet, og beholder originalteksten når AI ikke har noe å fikse.

    -- Fix grammar issues in the description, in place.
    UPDATE dbo.fact_sale
    SET Description = ISNULL(AI_FIX_GRAMMAR(Description), Description)
    WHERE Description IS NOT NULL;
    
  2. Gi spørringen nytt navn som Grammar Correction Update. Sammenlign noen rader der Description det er endret, og bekreft at korreksjonen er korrekt.

Generer nye kolonner

Denne oppgaven legger først til to destinasjonskolonner, og fyller dem deretter i én oppdatering.

  1. Lag en ny spørring, lim inn følgende kode, og kjør den. Koden legger til kolonner for en oversatt beskrivelse og en produktkategori.

    -- Add columns for the translated description and the product category.
    ALTER TABLE dbo.fact_sale ADD DescriptionFr nvarchar(max) NULL, ProductCategory nvarchar(50) NULL;
    
  2. Gi spørringen nytt navn som Add Translation & Category Columns.

  3. Lag en ny spørring, lim inn følgende kode, og kjør den. Koden fyller begge kolonnene i én oppdatering, ved å bruke AI_TRANSLATE for Description og AI_CLASSIFY for å sortere hver rad i et fast sett med produktkategorier som samsvarer med det som faktisk står i denne tabellen, som novelty-krus, klær og emballasjeutstyr.

    -- Populate the translated description and product category columns.
    UPDATE dbo.fact_sale
    SET
        DescriptionFr = AI_TRANSLATE(Description, 'fr'),
        ProductCategory = AI_CLASSIFY(
            Description,
            'Apparel', 'Footwear', 'Novelty & Gifts', 'Packaging Materials', 'Toys & Costumes', 'Office Supplies'
        )
    WHERE Description IS NOT NULL;
    
  4. Gi spørringen nytt navn som Populate Translation & Category Columns. Bekreft DescriptionFr og ProductCategory er fylt for hver rad.

Neste trinn: