Bruk multimodal input med AI-funksjoner (forhåndsvisning)

Viktig!

Denne funksjonen er i forhåndsversjon.

AI-funksjoner anvender enlinjes, LLM-drevne transformasjoner på store pandaer eller PySpark DataFrames med høy samtidighet som standard. Med multimodal input kan du også behandle bilder, PDF-er og tekstfiler for å klassifisere dokumenter, oppsummere PDF-er, hente ut informasjon fra bilder og mer.

Bruk denne tabellen for å hoppe til multimodale eksempler og detaljert dokumentasjon.

Funksjon Beskrivelse Detaljert dokumentasjon
ai.analyze_sentiment Oppdag følelser i filer. Eksempel. pandaer, PySpark
ai.classify Klassifiser filer ved å bruke etikettene dine. Eksempel. pandaer, PySpark
ai.extract Trekk ut felt fra filer. Eksempel. pandaer, PySpark
ai.fix_grammar Korrekt rettskrivning, grammatikk og tegnsetting i filer. Eksempel. pandaer, PySpark
ai.generate_response Generer svar basert på filinnhold. Eksempel. pandaer, PySpark
ai.summarize Oppsummer filinnholdet. Eksempel. pandaer, PySpark
ai.translate Oversett filinnholdet. Eksempel. pandaer, PySpark
aifunc.load Last filer fra en mappe inn i en strukturert tabell. Eksempel. Syntaks og parametere
aifunc.list_file_paths Få filstier fra en mappe. Eksempel. Syntaks og parametere
ai.infer_schema Utledes et ekstraksjonsskjema fra filinnholdet. Eksempel. Syntaks og parametere

Støttede filtyper

Multimodale AI-funksjoner støtter følgende filtyper:

  • Bilder: jpg, jpeg, png, statisk gif, webp
  • Dokumenter: pdf
  • Tekstfiler: md, txt, csv, tsv, json, xml, py og andre tekstfiler

Bemerkning

  • Multimodale kall med filsti-innganger fungerer med API-et responses , som er standard. Ikke sett api_type til for chat_completions filsti-input.
  • Office-filformater (som .docx, .pptxog .xlsx) støttes ikke for øyeblikket.
  • Du kan konvertere .docx og .pptx filer til PDF og .xlsx filer til CSV før du bruker dem med multimodale AI-funksjoner.
  • Hver inndatafil er begrenset til 50 MB i størrelse.

Støttede URL-protokoller

Multimodale innganger er strenger som bruker en av disse URL-protokollene:

  • lokale filstier
  • http(s)
  • WASP
  • ABF(er)

Forutsetninger

Multimodale AI-funksjoner har de samme forutsetningene som tekstbaserte AI-funksjoner. For hele listen, se Forutsetninger.

Sett opp filene dine

Organiser filene dine i en mappe som kan refereres til via en sti eller en glob-lignende streng.

Tips

Bruk AI Functions Starter Notebooks for ende-til-ende eksempler på AI Functions som bruker alle AI-funksjoner. Startnotatbøkene inkluderer én notatbok for pandaer og én for PySpark.

Eksempel

Du kan lagre filer i et Lakehouse festet til notatboken din.

folder_path = "/lakehouse/default/Files"

Last inn filene dine

For å bruke AI-funksjoner med multimodal input, kan du enten laste filinnholdet inn i en strukturert tabell eller referere til filstiene direkte i DataFrame-en din. Følgende eksempler viser begge tilnærmingene.

Last filer inn i en tabell

Bruk aifunc.load funksjonen til å lese filer fra en mappe og generere en strukturert tabell. Funksjonen kan selv utlede tabellstrukturen, eller du kan gi en prompt for å veilede uttrekkingen, eller et skjema for konsistent struktur. Denne tilnærmingen er nyttig når du ønsker at AI-en skal hente ut spesifikk informasjon fra filene og presentere den i et strukturert format.

df, schema = aifunc.load(folder_path)
# or
df, schema = aifunc.load(folder_path, prompt="Give me candidate's name and the most recent company they worked for.")
display(df)

Last inn filstier i en kolonne

Alternativt kan du bruke aifunc.list_file_paths den til å hente en liste over filstier fra en mappe og laste dem inn i en DataFrame-kolonne. Denne tilnærmingen er nyttig når du vil kjøre AI-funksjoner på tvers av hver fil.

Bemerkning

De fleste multimodale funksjoner aksepterer filstier med column_type="path" i pandas eller input_col_type/col_types="path" i PySpark.

file_path_series = aifunc.list_file_paths(folder_path)
df = pd.DataFrame({"file_path": file_path_series}).reset_index(drop=True)
display(df)

Viktig!

Når filstiene dine lagres som streng-URL-er i en DataFrame-kolonne, må du eksplisitt be AI-funksjonen om å behandle verdiene som filstier i stedet for ren tekst.

For serie-nivå AI-funksjoner (som opererer på én kolonne), sett parameteren column_type :

df["result"] = df["file_path"].ai.analyze_sentiment(column_type="path")

For DataFrame-nivå AI-funksjoner (som opererer på flere kolonner), bruk parameteren column_type_dict :

df["result"] = df.ai.generate_response(
    prompt="Describe the content.",
    column_type_dict={"file_path": "path"},
)

Bemerkning

Hvis du bruker aifunc.list_file_paths() det til å lage kolonnen for filstien, blir de returnerte yarl.URL objektene automatisk oppdaget som filstier. Du trenger bare å spesifisere column_type="path" når kolonnen din inneholder vanlige streng-URL-er.

Nye multimodale funksjoner

aifunc.load: Last filer inn i en tabell

Funksjonen aifunc.load leser alle filer fra en mappesti og genererer en strukturert tabell fra innholdet. Du kan eventuelt gi en prompt for å veilede utvinningen, eller et skjema for konsistent struktur.

Syntaks

df, schema = aifunc.load(folder_path, prompt=None, schema=None)

Parametere

Navn Beskrivelse
folder_path (obligatorisk) En strengsti til en mappe eller en glob-lignende mønstergjenkjenningsfil.
prompt (valgfritt) En streng som styrer tabellgenereringsprosessen. Bruk den til å spesifisere hvilke felt som skal pakkes ut fra filene.
schema (valgfritt) Et skjemaobjekt (returnert av et tidligere load kall) som definerer tabellstrukturen. Når funksjonen er oppgitt, bruker den dette skjemaet direkte.

Returer

En tuple av (DataFrame, schema). DataFrame inneholder de strukturerte dataene som er hentet ut fra filene. Skjemaet kan gjenbrukes i påfølgende load kall for konsistente resultater.

Eksempel

# This code uses AI. Always review output for mistakes.

# Basic load – let the AI infer the table structure
df, schema = aifunc.load(folder_path)
display(df)
# This code uses AI. Always review output for mistakes.

# Guided load – provide a prompt to specify what to extract
guided_df, guided_schema = aifunc.load(
    folder_path,
    prompt="Give me candidate's name and the most recent company they worked for.",
)
display(guided_df)

aifunc.list_file_paths: Listefiler

Funksjonen aifunc.list_file_paths henter alle gyldige filstier fra en spesifisert mappe. Du kan bruke de returnerte filstiene som input til hvilken som helst multimodal AI-funksjon. Funksjonen støtter også glob-lignende mønstre.

Syntaks

file_path_series = aifunc.list_file_paths(folder_path)

Parametere

Navn Beskrivelse
folder_path (obligatorisk) En strengsti til en mappe eller en glob-lignende mønstergjenkjenningsfil.

Returer

En pandas-serie av yarl.URL objekter, indeksert etter deres strengrepresentasjoner. Disse yarl.URL objektene behandles automatisk som filstier av AI-funksjoner, så du trenger ikke å spesifisere column_type="path".

Eksempel

# This code uses AI. Always review output for mistakes.

file_path_series = aifunc.list_file_paths(folder_path)
custom_df = pd.DataFrame({"file_path": file_path_series}).reset_index(drop=True)
display(custom_df)

ai.infer_schema: Utleder skjema fra filer

Funksjonen ai.infer_schema utleder et felles skjema fra filinnholdet. Det utledede skjemaet representeres som en liste over aifunc.ExtractLabel objekter du kan sende direkte til ai.extract for strukturert datautvinning.

Syntaks

schema = df["file_path"].ai.infer_schema(column_type="path")

Parametere

Navn Beskrivelse
prompt (valgfritt) En streng for å styre skjemainferens. Hvis den ikke er oppgitt, utleder funksjonen skjemaet kun ut fra filinnholdet.
n_samples (valgfritt) Et heltall som spesifiserer hvor mange elementer som skal prøves for inferens. Standard er 3.
column_type (valgfritt) Sett til "path" for å behandle kolonneverdier som filstier.

Returer

En liste over aifunc.ExtractLabel objekter som beskriver det utledede skjemaet. Du kan sende denne listen for å ai.extract hente ut strukturerte data fra filer.

Eksempel

# This code uses AI. Always review output for mistakes.

# Infer a schema from file contents
schema = df["file_path"].ai.infer_schema(column_type="path")
for label in schema:
    print(label)

# Use the inferred schema with ai.extract
extracted_df = df["file_path"].ai.extract(*schema, column_type="path")
display(extracted_df)

Bruk multimodal input med eksisterende AI-funksjoner

Følgende eksempler viser hvordan man kan bruke multimodal input med hver av de støttede AI-funksjonene.

ai.analyze_sentiment: Oppdage følelser fra filer

For fullstendige parametere, se pandas eller PySpark.

# This code uses AI. Always review output for mistakes.

animal_urls = [
    "<image-url-golden-retriever>",  # Replace with URL to an image of a golden retriever
    "<image-url-giant-panda>",  # Replace with URL to an image of a giant panda
    "<image-url-bald-eagle>",  # Replace with URL to an image of a bald eagle
]
animal_df = pd.DataFrame({"file_path": animal_urls})

animal_df["sentiment"] = animal_df["file_path"].ai.analyze_sentiment(column_type="path")
display(animal_df)

ai.classify: Classify files

For fullstendige parametere, se pandas eller PySpark.

# This code uses AI. Always review output for mistakes.

custom_df["highest_degree"] = custom_df["file_path"].ai.classify(
    "Master", "PhD", "Bachelor", "Other",
    column_type="path",
)
display(custom_df)

ai.extract: Trekk ut enheter fra filer

For fullstendige parametere, se pandas eller PySpark.

# This code uses AI. Always review output for mistakes.

extracted = custom_df["file_path"].ai.extract(
    aifunc.ExtractLabel(
        "name",
        description="The full name of the candidate, first letter capitalized.",
        max_items=1,
    ),
    "companies_worked_for",
    aifunc.ExtractLabel(
        "year_of_experience",
        description="The total years of professional work experience the candidate has, excluding internships.",
        type="integer",
        max_items=1,
    ),
    column_type="path",
)
display(extracted)

ai.fix_grammar: Fiks grammatikk i filer

For fullstendige parametere, se pandas eller PySpark.

# This code uses AI. Always review output for mistakes.

custom_df["corrections"] = custom_df["file_path"].ai.fix_grammar(column_type="path")
display(custom_df)

ai.generate_response: Bruk tilpassede prompts på filer

For fullstendige parametere, se pandas eller PySpark.

# This code uses AI. Always review output for mistakes.

# Series-level: generate a response from each file
animal_df["animal_name"] = animal_df["file_path"].ai.generate_response(
    prompt="What type of animal is in this image? Give me only the animal's common name.",
    column_type="path",
)
display(animal_df)
# This code uses AI. Always review output for mistakes.

# DataFrame-level: use all columns as context
animal_df["description"] = animal_df.ai.generate_response(
    prompt="Describe this animal's natural habitat and one interesting fact about it.",
    column_type_dict={"file_path": "path"},
)
display(animal_df)

ai.summarize: Oppsummere filer

For fullstendige parametere, se pandas eller PySpark.

# This code uses AI. Always review output for mistakes.

# Summarize file content from a single column
custom_df["summary"] = custom_df["file_path"].ai.summarize(
    instructions="Summarize this file in one sentence for a support analyst.",
    column_type="path",
)
display(custom_df)

Du kan oppsummere verdier på tvers av alle kolonner i en DataFrame ved å utelate inndatakolonnen og spesifisere filstikolonner med column_type_dict (pandas) eller col_types (PySpark):

# This code uses AI. Always review output for mistakes.

custom_df["summary"] = custom_df.ai.summarize(
    column_type_dict={"file_path": "path"},
)
display(custom_df)

ai.translate: Oversett filer

For fullstendige parametere, se pandas eller PySpark.

# This code uses AI. Always review output for mistakes.

custom_df["chinese_version"] = custom_df["file_path"].ai.translate(
    "Chinese",
    column_type="path",
)
display(custom_df)

Evaluer utdatakvalitet

Bruk AI Functions Eval Notebooks for strukturerte arbeidsflyter som bruker LLM-as-a-Judge for å vurdere multimodale resultater og beregne målinger som nøyaktighet, presisjon, gjenkalling, F1, koherens, konsistens og relevans. Du kan bruke disse arbeidsflytene til å validere kvaliteten på klassifisering, ekstraksjon, oppsummering og andre AI-funksjonsresultater før du går over til produksjon.

Overvåk kostnader og kapasitetsbruk

Bruk fakturering for AI-funksjoner for å forstå kostnader, kjøretidsbruk og kapasitetsovervåking.