Merk
Tilgang til denne siden krever autorisasjon. Du kan prøve å logge på eller endre kataloger.
Tilgang til denne siden krever autorisasjon. Du kan prøve å endre kataloger.
Gjelder for:✅ SQL Analytics-endepunkt og Warehouse i Microsoft Fabric
Viktig!
Denne funksjonen er i forhåndsversjon.
Fabric Data Warehouse og SQL-analyse-endpoint tilbyr innebygde AI-funksjoner som du kan bruke til å analysere, klassifisere, oppsummere og transformere tekst direkte i SQL-spørringer. Ved å bruke disse funksjonene kan du utføre avansert tekstbehandling uten å forlate datamiljøet ditt. I denne veiledningen lærer du hvordan du bruker AI-funksjoner for å transformere tekst.
| Funksjon | Formål | Syntakseksempel |
|---|---|---|
ai_analyze_sentiment |
Oppdag sentiment i inndatateksten | ai_analyze_sentiment(<text>) |
ai_classify |
Klassifiser tekst basert på oppgitte etiketter | ai_classify(<text>, <class1>, <class2>, ...) |
ai_extract |
Trekk ut enheter som JSON-egenskaper | ai_extract(<text>, <class1>, <class2>, ...) |
ai_summarize |
Oppsummer tekst | ai_summarize(<text>) |
ai_generate_response |
Generer svar basert på prompt | ai_generate_response(<prompt>, <data>) |
ai_translate |
Oversett inndatatekst til det angitte målspråket | ai_translate(<text>, <lang>) |
ai_fix_grammar |
Korriger grammatikk i teksten | ai_fix_grammar(<text>) |
Disse funksjonene kaller eksterne AI-API-er for å behandle tekst, noe som kan påvirke spørringsytelsen. For å optimalisere effektiviteten, unngå å bruke repeterende teksttransformasjoner i SELECT spørringer på samme datasett. I stedet, forhåndsberegne og materialisere resultatene av AI-funksjoner som separate kolonner eller i staging-tabeller.
Advarsel!
Funksjonene returneres NULL hvis AI-modellen ikke kan behandle teksten. Vanlige grunner inkluderer:
- Ansvarlige AI-regler blokkerer upassende innhold i inndatateksten.
- Inndatateksten overskrider tokengrensene. Den nåværende modellen støtter opptil 15 KB tekst.
Typisk prosesseringshastighet for AI-funksjoner er 20–100 rader per sekund. Hvis du opplever tregere ytelse, rapporter den problematiske søken som et spørsmål.
Sjekk forutsetningene for AI-funksjoner for å aktivere AI-funksjoner i arbeidsplassen din. AI-funksjoner for Azure OpenAI Service er tilgjengelige i noen regioner.
Analyser sentiment
Funksjonen ai_analyze_sentiment(text) analyserer sentiment fra inputen text og returnerer en av følgende verdier: positive, negative, , mixedeller neutral.
Eksempel:
SELECT ai_analyze_sentiment('This hotel was great!') AS sentiment;
Forventet resultat:positive
Klassifisere tekst
Funksjonen ai_classify(text, class1, class2, ...) klassifiserer inputen text i en av de oppgitte kategoriene.
Eksempel:
SELECT ai_classify('Room was dirty', 'service','dirt','food') AS classification;
Forventet resultat:dirt
Trekk ut entiteter fra tekst
Funksjonen ai_extract(text, class1, class2, ...) trekker ut enheter fra input text basert på de spesifiserte klassene.
Eksempel:
SELECT ai_extract('Check-in was late and room dirty', 'sentiment','problem') AS extraction;
Forventet resultat:{"sentiment":"Negative","problem":"Dirty room"}
Generer respons
Funksjonen ai_generate_response(prompt, data) genererer et svar basert på en gitt prompt og valgfri data.
Eksempel:
SELECT ai_generate_response('Reply in 20 words:', 'The room was noisy.') AS response;
Forventet resultat: 'Vi beklager oppriktig ulempen støyen har forårsaket, og er forpliktet til å forbedre våre lydisoleringstiltak.'
Oppsummer tekst
Funksjonen ai_summarize(text) oppsummerer inputen text i en konsis versjon.
Eksempel:
SELECT ai_summarize('The hotel was clean and staff were friendly.') AS summary;
Forventet resultat: 'Rent hotell, vennlig personale.'
Oversette tekst
Funksjonen ai_translate(text, lang_code) oversettes text til det angitte språket ved hjelp av lang_code.
Støttede språkkoder er de (tysk), en (engelsk), fr (fransk), it (italiensk), (spansk), eles (gresk), pl (polsk), sv (svensk), fi (finsk) og cs (tsjekkisk).
Eksempel:
SELECT ai_translate('The hotel was great','de') AS translation_de;
Forventet resultat: 'Das Hotel war großartig.'
Korriger grammatikk
Funksjonen ai_fix_grammar(text) korrigerer grammatikk i inngangen text.
Eksempel:
SELECT ai_fix_grammar('Th room are clean and staff were nice') AS fixed_text;
Forventet resultat: 'Rommene er rene, og personalet var hyggelig.'
Eksempler
A. Importer data og transformér tekstkolonnen ved hjelp av AI-funksjoner
Dette eksempelet laster data fra en Lakehouse-fil inn i hotel_reviews tabellen i lageret.
Den velger fra en fil i seksjonen /Files , og anvender deretter AI-funksjonene for å berike 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. Oppdater tekstkolonnen ved hjelp av AI-funksjonen
Følgende eksempel retter grammatikkfeilene i kolonnen reviews_text :
UPDATE HotelDW.dbo.hotel_reviews
SET reviews_text = ISNULL(ai_fix_grammar(reviews_text), reviews_text);
AI-funksjonene kan returnere NULL hvis en feil oppstår, så unngå å overskrive eksisterende verdier med NULL.
Bruk mønsteret ISNULL(<ai function>, <original value>) for å bevare originalteksten når AI-funksjoner ikke kan returnere resultater.
C. Trekk ut verdier fra tekst
I dette eksempelet ai_extract analyserer funksjonen gjennomgangsteksten og returnerer et JSON-objekt som inneholder egenskapene sentiment, time_reported, og problem. Funksjonen OPENJSON parser deretter denne JSON-en og mapper disse egenskapene til separate kolonner for enkel spørring og analyse.
Dette eksempelskriptet setter inn de uttrukne verdiene 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) );
Funksjonen ai_extract anvender uklare kontekstuelle regler for å identifisere og trekke ut temaer fra tekst uten å kreve manuell parsing eller komplekse regulære uttrykk. Denne tilnærmingen forenkler tekstanalyse ved å bruke AI-drevet semantisk forståelse i stedet for rigid mønstergjenkjenning, noe som gjør den mer robust og tilpasningsdyktig til naturlige språkvariasjoner.