Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:✅ Warehouse in Microsoft Fabric
In deze tutorial leer je hoe je ingebouwde AI-functies in T-SQL kunt gebruiken om warehouse-tabeldata in natuurlijke taal te redeneren. Gebruik de dbo.fact_sale tabel om AI-functies te verkennen in eenvoudige SELECT queries, gebruik ze in een meer geavanceerde analytics-query en bewaar de resultaten in kolommen.
Note
Deze handleiding maakt deel uit van een end-to-end scenario. Om deze tutorial te voltooien, moet je eerst deze tutorials voltooien:
Verken data met AI-functies
Leer bij deze taak hoe je enkele van de ingebouwde AI-functies kunt gebruiken in eenvoudige SELECT queries om te onderzoeken wat ze teruggeven, zonder de tabel te veranderen.
Zorg ervoor dat de werkruimte die u hebt gemaakt in de eerste handleiding open is.
Extractie van categorieën uit de beschrijving
Selecteer op het lint Startnieuwe SQL-query.
Plak de volgende code in de query-editor. De code gebruikt
AI_EXTRACTom de kleur en grootte uit beschrijvingen zoalsAlien officer hoodie (Black) XXLte halen.AI_EXTRACTgeeft een JSON-object terug, dus gebruikOPENJSONhet om de attributen om te zetten in aparte kolommen.-- 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;Voer de query uit.
Wanneer de uitvoering is voltooid, wijzigt u de naam van de query als
Color & Size Extraction. Controleer ofColorenSizein afzonderlijke kolommen worden ingevuld.
Formaatbeschrijving als HTML
Maak een nieuwe query aan, plak de volgende code en voer deze uit. De code gebruikt
AI_GENERATE_RESPONSEomDescriptionom te zetten naar een productsamenvatting in HTML met een lijst met belangrijke attributen, klaar om op een webpagina te worden weergegeven.-- 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;Wijzig de naam van de query als
Short Catalog Description Generation. InspecteerCatalogDescriptionen bevestig dat het de gevraagde<p>,<dl>,<dt>, en<dd>elementen bevat.
Gegevens van verkoopitem samenvatten
Maak een nieuwe query aan, plak de volgende code en voer deze uit. De code gebruikt
AI_GENERATE_RESPONSEom numerieke kolommen om te zetten in plaats vanDescription, in een platte tekstoverzicht van het verkoopitem.-- 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;Wijzig de naam van de query als
Sales Item Summary Generation. Lees een paarSalesItemSummarywaarden en bevestig dat ze de numerieke kolommen in dezelfde rij weergeven.
Bepaal de prioriteit van elk verkoopitem
Gebruik bij deze taak AI_GENERATE_RESPONSE een geavanceerdere query die meerdere kolommen combineert om een zakelijke beslissing te ondersteunen, in plaats van te redeneren over één enkele kolom.
Maak een nieuwe query aan, plak de volgende code en voer deze uit. De code combineert de factuurdatum, de leverdatum, een referentiedatum, het lijntotaal, de winst en het aantal koelproducten dat gekoeld moeten worden verwerkt in één invoer, en vraagt vervolgens AI om een prioriteitsscore terug te geven die deze signalen tot één getal samenvoegt.
fact_salebevat historische verkoopgegevens, dus@AsOfDatestaat voor de actuele bedrijfsdatum die je in een live fulfillmentwachtrij zou gebruiken.-- 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;Wijzig de naam van de query als
Sales Item Fulfillment Priority Scoring. Bevestig dat de waarden vanPriorityScoretussen 1 en 100 liggen, gesorteerd met de hoogste scores eerst.
Persist AI-resultaten
De voorbeelden tot nu toe leveren AI-resultaten op in een SELECT. Om die resultaten opnieuw te gebruiken zonder ze elke keer opnieuw te berekenen, schrijf je ze terug met UPDATE.
Herstel grammaticale fouten in de beschrijving
Maak een nieuwe query aan, plak de volgende code en voer deze uit. De code gebruikt
AI_FIX_GRAMMARomDescriptionrechtstreeks te corrigeren, waarbij de oorspronkelijke tekst behouden blijft wanneer AI niets hoeft te corrigeren.-- 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;Wijzig de naam van de query als
Grammar Correction Update. Vergelijk een paar rijen waarinDescriptionis gewijzigd en controleer of de correctie juist is.
Genereer nieuwe kolommen
Deze taak voegt eerst twee bestemmingskolommen toe en vult deze vervolgens in één enkele update.
Maak een nieuwe query aan, plak de volgende code en voer deze uit. De code voegt kolommen toe voor een vertaalde beschrijving en een productcategorie.
-- Add columns for the translated description and the product category. ALTER TABLE dbo.fact_sale ADD DescriptionFr nvarchar(max) NULL, ProductCategory nvarchar(50) NULL;Wijzig de naam van de query als
Add Translation & Category Columns.Maak een nieuwe query aan, plak de volgende code en voer deze uit. De code vult beide kolommen in één enkele update, waarbij
AI_TRANSLATEvoorDescriptionenAI_CLASSIFYwordt gebruikt om elke rij te sorteren in een vaste set productcategorieën die overeenkomen met wat er daadwerkelijk in deze tabel staat, zoals novelty mokken, kleding en verpakkingsbenodigdheden.-- 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;Wijzig de naam van de query als
Populate Translation & Category Columns. Bevestig datDescriptionFrenProductCategoryvoor elke rij zijn ingevuld.