Zdieľať cez


Použite ai.extract s PySpark

Funkcia ai.extract využíva generatívnu umelú inteligenciu na skenovanie vstupného textu a extrahovanie konkrétnych typov informácií označených štítkami, ktoré vyberiete (napríklad miesta alebo názvy). Používa iba jeden riadok kódu.

Poznámka

Overview

Táto ai.extract funkcia je k dispozícii pre údajové rámce Spark. Ako parameter musíte zadať názov existujúceho vstupného stĺpca spolu so zoznamom typov entít, ktoré sa majú extrahovať z každého riadka textu.

Funkcia vráti nový údajový rámec so samostatným stĺpcom pre každý zadaný typ entity, ktorý obsahuje extrahované hodnoty pre každý vstupný riadok.

Syntax

df.ai.extract(labels=["entity1", "entity2", "entity3"], input_col="input")

Parametre

Name Popis
labels
Povinné
Polereťazcov, ktoré predstavuje množinu typov entít, ktoré sa majú extrahovať z textových hodnôt vo vstupnom stĺpci.
input_col
Povinné
Reťazec, ktorý obsahuje názov existujúceho stĺpca so vstupnými textovými hodnotami na vyhľadanie vlastných entít.
aifunc.ExtractLabel
Voliteľné
Jedna alebo viac definícií štítkov popisujúcich polia, ktoré treba extrahovať. Pre viac informácií pozri tabuľku parametrov ExtractLabel.
error_col
Voliteľné
Reťazec, ktorý obsahuje názov nového stĺpca na uloženie všetkých chýb OpenAI, ktoré sú výsledkom spracovania každého riadka vstupného textu. Ak tento parameter nenastavíte, pre chybový stĺpec sa vygeneruje predvolený názov. Ak vstupný riadok neobsahuje žiadne chyby, hodnota v tomto stĺpci je null.

Parametre ExtractLabel

Name Popis
label
Povinné
Reťazec, ktorý reprezentuje entitu na extrakciu z hodnot vstupného textu.
description
Voliteľné
Reťazec, ktorý pridáva ďalší kontext pre AI model. Môže obsahovať požiadavky, kontext alebo inštrukcie, ktoré má AI zvážiť pri extrakcii.
max_items
Voliteľné
Int, ktorý určuje maximálny počet položiek na extrakciu pre tento štítok.
type
Voliteľné
Typ JSON schémy pre extrahovanú hodnotu. Podporované typy pre túto triedu zahŕňajú string, number, integer, boolean, object, a .array
properties
Voliteľné
Viac JSON schémových vlastností pre tento typ ako slovník. Môže obsahovať podporované vlastnosti ako "items" pre polia, "vlastnosti" pre objekty, "enum" pre enum typy a ďalšie. Pozri príklad použitia v tomto článku.
raw_col
Voliteľné
Reťazec, ktorý nastavuje názov stĺpca pre surovú odpoveď LLM. Surová odpoveď poskytuje zoznam slovníkových párov pre každú entitnú značku, vrátane "reason" a "extraction_text".

Vrátené hodnoty

Funkcia vráti údajový rámec Spark s novým stĺpcom pre každý zadaný typ entity. Stĺpec alebo stĺpce obsahujú entity extrahované pre každý riadok vstupného textu. Ak funkcia identifikuje viac ako jednu zhodu pre entitu, vráti iba jednu z týchto zhôd. Ak sa zhoda nenájde, výsledok je null.

Predvolený typ návratu je zoznam reťazcov pre každý štítok. Ak používatelia zvolia v konfigurácii aifunc.ExtractLabel iný typ, napríklad "type=integer", výstupom bude zoznam python int. Ak používatelia v konfigurácii aifunc.ExtractLabel špecifikujú "max_items=1", pre daný štítok sa vráti iba jeden prvok typu.

Príklad

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

df = spark.createDataFrame([
        ("MJ Lee lives in Tuscon, AZ, and works as a software engineer for Contoso.",),
        ("Kris Turner, a nurse at NYU Langone, is a resident of Jersey City, New Jersey.",)
    ], ["descriptions"])

df_entities = df.ai.extract(labels=["name", "profession", "city"], input_col="descriptions")
display(df_entities)

Táto príkladová bunka kódu poskytuje nasledujúci výstup:

Snímka obrazovky zobrazujúca nový údajový rámec so stĺpcami