Del via


Brug AI-funktioner (forhåndsvisning)

Gælder for:✅ SQL Analytics-slutpunkt og warehouse i Microsoft Fabric

Vigtigt!

Denne funktion er i prøveversion.

Fabric Data Warehouse og SQL-analyse-endpointet tilbyder indbyggede AI-funktioner, som du kan bruge til at analysere, klassificere, opsummere og transformere tekst direkte i SQL-forespørgsler. Ved at bruge disse funktioner kan du udføre avanceret tekstbehandling uden at forlade dit datamiljø. I denne vejledning kan du lære, hvordan du bruger AI-funktioner til at transformere tekst.

Funktion Formål Syntakseksempel
ai_analyze_sentiment Opdag stemning i inputteksten ai_analyze_sentiment(<text>)
ai_classify Klassificer tekst baseret på de angivne etiketter ai_classify(<text>, <class1>, <class2>, ...)
ai_extract Udtræk enheder som JSON-egenskaber ai_extract(<text>, <class1>, <class2>, ...)
ai_summarize Opsummer tekst ai_summarize(<text>)
ai_generate_response Generer svar baseret på prompt ai_generate_response(<prompt>, <data>)
ai_translate Oversæt inputtekst til det angivne målsprog ai_translate(<text>, <lang>)
ai_fix_grammar Ret grammatik i teksten ai_fix_grammar(<text>)

Disse funktioner kalder eksterne AI-API'er for at behandle tekst, hvilket kan påvirke forespørgselsydelsen. For at optimere effektiviteten bør du undgå at anvende gentagne teksttransformationer i SELECT forespørgsler på det samme datasæt. I stedet kan du forudberegne og materialisere resultaterne af AI-funktioner som separate kolonner eller i staging-tabeller.

Advarsel!

Funktionerne returneres NULL , hvis AI-modellen ikke kan behandle teksten. Almindelige årsager inkluderer:

  • Ansvarlige AI-regler blokerer upassende indhold i inputteksten.
  • Inputteksten overstiger token-grænserne. Den nuværende model understøtter op til 15 KB tekst.

Den typiske behandlingshastighed for AI-funktioner er 20-100 rækker per sekund. Hvis du oplever langsommere ydeevne, skal du rapportere den problematiske forespørgsel som et problem.

Tjek AI-funktionernes forudsætninger for at aktivere AI-funktioner i dit arbejdsområde. AI-funktioner til Azure OpenAI Service er tilgængelige i nogle regioner.

Analysér synspunkt

Funktionen ai_analyze_sentiment(text) analyserer sentiment fra inputtet text og returnerer en af følgende værdier: positive, negative, , mixedeller neutral.

Eksempel:

SELECT ai_analyze_sentiment('This hotel was great!') AS sentiment;

Forventet resultat:positive

Klassificer tekst

Funktionen ai_classify(text, class1, class2, ...) klassificerer inputtet text i en af de angivne kategorier.

Eksempel:

SELECT ai_classify('Room was dirty', 'service','dirt','food') AS classification;

Forventet resultat:dirt

Udtræk enheder fra tekst

Funktionen ai_extract(text, class1, class2, ...) udtrækker enheder fra inputtet text baseret på de specificerede klasser.

Eksempel:

SELECT ai_extract('Check-in was late and room dirty', 'sentiment','problem') AS extraction;

Forventet resultat:{"sentiment":"Negative","problem":"Dirty room"}

Generer respons

Funktionen genererer ai_generate_response(prompt, data) et svar baseret på en given prompt og valgfri data.

Eksempel:

SELECT ai_generate_response('Reply in 20 words:', 'The room was noisy.') AS response;

Forventet resultat: 'Vi undskylder oprigtigt for ulejligheden forårsaget af støjen og er forpligtet til at forbedre vores lydisoleringsforanstaltninger.'

Opsummer tekst

Funktionen ai_summarize(text) opsummerer inputtet text i en kortfattet version.

Eksempel:

SELECT ai_summarize('The hotel was clean and staff were friendly.') AS summary;

Forventet resultat: 'Rent hotel, venligt personale.'

Oversætte tekst

Funktionen ai_translate(text, lang_code) oversættes text til det angivne sprog ved hjælp af lang_code.

Understøttede sprogkoder er de (tysk), en (engelsk), fr (fransk), it (italiensk), es (spansk), el (græsk), pl (polsk), sv (svensk), fi (finsk) og cs (tjekkisk).

Eksempel:

SELECT ai_translate('The hotel was great','de') AS translation_de;

Forventet resultat: 'Das Hotel war großartig.'

Fix grammatik

Funktionen ai_fix_grammar(text) retter grammatikken i inputtet text.

Eksempel:

SELECT ai_fix_grammar('Th room are clean and staff were nice') AS fixed_text;

Forventet resultat: 'Værelserne er rene, og personalet var flinkt.'

Eksempler

A. Importer data og transformér tekstkolonne ved hjælp af AI-funktioner

Dette eksempel indlæser data fra en Lakehouse-fil i hotel_reviews tabellen i lageret. Den vælger fra en fil i sektionen /Files og anvender derefter AI-funktionerne for at berige dataene:

CREATE TABLE HotelDW.dbo.hotel_reviews
AS
SELECT
    city, latitude, longitude, name, reviews_rating, reviews_text,
    ai_summarize(reviews_text) AS reviews_summary,
    ai_classify( reviews_text, 'service', 'dirt', 'food', 'air conditioning', 'other') AS reviews_classification,
    ai_analyze_sentiment(reviews_text) AS reviews_sentiment,
    ai_translate(reviews_text, 'de') AS reviews_text_de,
    ai_translate(reviews_text, 'es') AS reviews_text_es,
    ai_translate(reviews_text, 'fr') AS reviews_text_fr,
    ai_translate(reviews_text, 'it') AS reviews_text_it
FROM OPENROWSET( BULK '/Files/csv/hotel_reviews_demo.csv', DATA_SOURCE = 'TextLakehouse', HEADER_ROW = TRUE);

B. Opdater tekstkolonne ved hjælp af AI-funktionen

Følgende eksempel retter grammatikfejlene i kolonnen reviews_text :

UPDATE HotelDW.dbo.hotel_reviews
SET reviews_text = ISNULL(ai_fix_grammar(reviews_text), reviews_text);

AI-funktionerne kan returnere, NULL hvis der opstår en fejl, så undgå at overskrive eksisterende værdier med NULL.

Brug mønsteret ISNULL(<ai function>, <original value>) til at bevare den oprindelige tekst, når AI-funktioner ikke kan returnere resultater.

C. Udtræk værdier fra tekst

I dette eksempel analyserer funktionen gennemgangsteksten og returnerer et JSON-objekt, ai_extract der indeholder egenskaberne sentiment, time_reported, og problem. Funktionen OPENJSON parser derefter denne JSON og mapper disse egenskaber til separate kolonner for nem forespørgsel og analyse.

Dette eksempelscript indsætter de udtrukne værdier som separate kolonner i måltabellen.

INSERT INTO gold.hotel_reviews
SELECT sentiment, time_reported, problem
FROM hotel_reviews
CROSS APPLY 
OPENJSON(
    ai_extract(reviews_text, 'sentiment', 'time_reported', 'problem')
) WITH ( sentiment VARCHAR(1000), time_reported VARCHAR(100), problem VARCHAR(1000) );

Funktionen ai_extract anvender fuzzy kontekstuelle regler for at identificere og udtrække emner fra tekst uden at kræve manuel parsing eller komplekse regulære udtryk. Denne tilgang forenkler tekstanalyse ved at bruge AI-drevet semantisk forståelse i stedet for rigid mønstermatchning, hvilket gør den mere robust og tilpasningsdygtig til naturlige sproglige variationer.