Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:✅ Magazyn w systemie Microsoft Fabric
W tym tutorialu nauczysz się, jak korzystać z wbudowanych funkcji AI w T-SQL do rozumowania w danych tabel magazynowych w języku naturalnym. Użyj tabeli dbo.fact_sale do eksploracji funkcji AI w prostych SELECT zapytaniach, użyj ich w bardziej zaawansowanym zapytaniu analitycznym i zapisuj wyniki w kolumnach.
Note
Ten samouczek stanowi część kompleksowego scenariusza . Aby ukończyć ten samouczek, najpierw musisz wykonać następujące tutoriale:
Eksploruj dane z funkcjami AI
W tym zadaniu naucz się, jak używać kilku wbudowanych funkcji AI w prostych SELECT zapytaniach, aby sprawdzić, co zwracają, bez zmiany tabeli.
Upewnij się, że obszar roboczy utworzony w pierwszym samouczku jest otwarty.
Kategorie wyodrębnione z opisu
Na wstążce Narzędzia główne wybierz pozycję Nowe zapytanie SQL.
W edytorze zapytań wklej następujący kod. Kod używa
AI_EXTRACTdo wyodrębniania koloru i rozmiaru z opisów, takich jakAlien officer hoodie (Black) XXL.AI_EXTRACTzwraca obiekt JSON, więc używamyOPENJSONdo przekształcenia atrybutów w osobne kolumny.-- 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;Uruchamianie zapytania.
Po zakończeniu wykonywania zmień nazwę zapytania na
Color & Size Extraction. Sprawdź, czyColoriSizeznajdują się w oddzielnych kolumnach.
Sformatuj opis jako HTML
Stwórz nowe zapytanie, wklej poniższy kod i uruchom je. Kod wykorzystuje
AI_GENERATE_RESPONSE, aby przekształcićDescriptionw podsumowanie produktu w formacie HTML z listą kluczowych atrybutów, gotowe do wyświetlenia na stronie internetowej.-- 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;Zmień nazwę zapytania na
Short Catalog Description Generation. SprawdźCatalogDescriptioni potwierdź, że zawiera żądane elementy<p>,<dl>,<dt>oraz<dd>.
Podsumuj informacje o produktach sprzedażowych
Stwórz nowe zapytanie, wklej poniższy kod i uruchom je. Ten kod używa
AI_GENERATE_RESPONSE, aby przekształcić kolumny liczbowe, zamiastDescription, w podsumowanie pozycji sprzedaży w postaci zwykłego tekstu.-- 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;Zmień nazwę zapytania na
Sales Item Summary Generation. Przeczytaj kilkaSalesItemSummarywartości i upewnij się, że odzwierciedlają kolumny numeryczne w tym samym wierszu.
Określ priorytet każdego produktu sprzedażowego
W tym zadaniu użyj AI_GENERATE_RESPONSE w bardziej zaawansowanym zapytaniu, które łączy kilka kolumn, aby wesprzeć podjęcie decyzji biznesowej, zamiast opierać rozumowanie na pojedynczej kolumnie.
Stwórz nowe zapytanie, wklej poniższy kod i uruchom je. Kod łączy datę faktury, datę dostawy, datę odniesienia, łączną liczbę linii, zysk oraz liczbę produktów chłodniczych wymagających obsługi w lodówce w jednym wejściu, a następnie prosi AI o zwrócenie wyniku priorytetu, który łączy te sygnały w jedną liczbę.
fact_salezawiera historyczne dane sprzedażowe, więc@AsOfDatepełni funkcję bieżącej daty operacyjnej używanej w produkcyjnej kolejce realizacji.-- 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;Zmień nazwę zapytania na
Sales Item Fulfillment Priority Scoring. Wartości potwierdzeńPriorityScoremieszczą się w przedziale od 1 do 100, a najwyższe wyniki są posortowane jako pierwsze.
Zachowywanie wyników AI
Dotychczasowe przykłady zwracają wyniki SI w elemencie SELECT. Aby wykorzystać te wyniki bez ich ponownego obliczania za każdym razem, zapisz je z powrotem za pomocą UPDATE.
Naprawa błędów gramatycznych w opisie
Stwórz nowe zapytanie, wklej poniższy kod i uruchom je. Kod używa
AI_FIX_GRAMMAR, aby poprawiaćDescriptionna miejscu, zachowując oryginalny tekst, gdy AI nie ma nic do poprawienia.-- 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;Zmień nazwę zapytania na
Grammar Correction Update. Porównaj kilka wierszy, gdzieDescriptionzostały zmienione, i popewnij, że korekta jest poprawna.
Generuj nowe kolumny
To zadanie najpierw dodaje dwie kolumny docelowe, a następnie wypełnia je w jednej aktualizacji.
Stwórz nowe zapytanie, wklej poniższy kod i uruchom je. Kod dodaje kolumny dla przetłumaczonego opisu oraz kategorii produktu.
-- Add columns for the translated description and the product category. ALTER TABLE dbo.fact_sale ADD DescriptionFr nvarchar(max) NULL, ProductCategory nvarchar(50) NULL;Zmień nazwę zapytania na
Add Translation & Category Columns.Stwórz nowe zapytanie, wklej poniższy kod i uruchom je. Kod wypełnia obie kolumny w ramach jednej aktualizacji, używając
AI_TRANSLATEdlaDescriptionorazAI_CLASSIFY, aby przyporządkować każdy wiersz do ustalonego zestawu kategorii produktów, które odpowiadają temu, co rzeczywiście znajduje się w tej tabeli, takich jak kubki okolicznościowe, odzież i materiały opakowaniowe.-- 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;Zmień nazwę zapytania na
Populate Translation & Category Columns. Upewnij się, żeDescriptionFriProductCategorysą wypełnione w każdym wierszu.