Condividi tramite


Usare ai.generate_response con pandas

La ai.generate_response funzione usa l'intelligenza artificiale generativa per generare risposte di testo personalizzate basate sulle proprie istruzioni, con una singola riga di codice.

Annotazioni

Informazioni generali

La ai.generate_response funzione può estendere la classe DataFrame pandas e la classe pandas Series .

Per generare risposte di testo personalizzate riga per riga, è possibile chiamare questa funzione su una serie Pandas o su un intero DataFrame Pandas.

Se si chiama la funzione su un intero dataframe pandas, il prompt può essere una stringa letterale e la funzione considera tutte le colonne del dataframe durante la generazione di risposte. Il prompt può anche essere una stringa di formato, in cui la funzione considera solo i valori di colonna visualizzati tra parentesi graffe nel prompt.

La funzione restituisce una serie pandas che contiene risposte di testo personalizzate per ogni riga di input. Le risposte di testo possono essere archiviate in una nuova colonna DataFrame.

Suggerimento

Informazioni su come creare richieste più efficaci per ottenere risposte di qualità superiore seguendo i suggerimenti di OpenAI per gpt-4.1.

Sintassi

df["response"] = df.ai.generate_response(prompt="Instructions for a custom response based on all column values")

Parametri

Nome Description
prompt
Obbligatorio
Stringa che contiene istruzioni di richiesta da applicare ai valori di testo di input per le risposte personalizzate.
is_prompt_template
Opzionale
Valore booleano che indica se il prompt è una stringa di formato o una stringa letterale. Se questo parametro è impostato su True, la funzione considera solo i valori di riga specifici di ogni nome di colonna visualizzato nella stringa di formato. In questo caso, tali nomi di colonna devono essere visualizzati tra parentesi graffe e altre colonne vengono ignorate. Se questo parametro è impostato sul valore predefinito di , la funzione considera tutti i valori di Falsecolonna come contesto per ogni riga di input.
response_format
Opzionale
Dizionario che specifica la struttura prevista della risposta del modello. Il type campo può essere impostato su "text" per testo in formato libero, "json_object" per assicurarsi che l'output sia un oggetto JSON valido o uno schema JSON personalizzato per applicare una struttura di risposta specifica. Se questo parametro non viene specificato, la risposta viene restituita come testo normale.

Restituzioni

La funzione restituisce un dataframe pandas che contiene risposte di testo personalizzate alla richiesta di ogni riga di testo di input.

Example

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

df = pd.DataFrame([
        ("Scarves"),
        ("Snow pants"),
        ("Ski goggles")
    ], columns=["product"])

df["response"] = df.ai.generate_response("Write a short, punchy email subject line for a winter sale.")
display(df)

Questa cella di codice di esempio fornisce l'output seguente:

Screenshot che mostra un data frame con colonne 'product' e 'response'. La colonna 'response' contiene una riga di oggetto incisiva per il prodotto.

Esempio di formato di risposta

L'esempio seguente illustra come usare il response_format parametro per specificare formati di risposta diversi, tra cui testo normale, un oggetto JSON e uno schema JSON personalizzato.

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

df = pd.DataFrame([
        ("Alex Rivera is a 24-year-old soccer midfielder from Barcelona who scored 12 goals last season."),
        ("Jordan Smith, a 29-year-old basketball guard from Chicago, averaged 22 points per game."),
        ("William O'Connor is a 22-year-old tennis player from Dublin who won 3 ATP titles this year.")
    ], columns=["bio"])

# response_format : text
df["card_text"] = df.ai.generate_response(
    "Create a player card with the player's details and a motivational quote", 
    response_format={"type": "text"}
)

# response_format : json object
df["card_json_object"] = df.ai.generate_response(
    "Create a player card with the player's details and a motivational quote in JSON", 
    response_format={"type": "json_object"} # Requires "json" in the prompt
)

# response_format : specified json schema
df["card_json_schema"] = df.ai.generate_response(
    "Create a player card with the player's details and a motivational quote", 
    response_format={
        "type": "json_schema",
            "json_schema": {
            "name": "player_card_schema",
            "strict": True,
            "schema": {
                "type": "object",
                "properties": {
                    "name": {"type": "string"},
                    "age": {"type": "integer"},
                    "sport": {"type": "string"},
                    "position": {"type": "string"},
                    "hometown": {"type": "string"},
                    "stats": {"type": "string", "description": "Key performance metrics or achievements"},
                    "motivational_quote": {"type": "string"}
                },
                "required": ["name", "age", "sport", "position", "hometown", "stats", "motivational_quote"],
                "additionalProperties": False,
            },
        },
    },
)

display(df)

Questa cella di codice di esempio fornisce l'output seguente:

Screenshot che mostra un frame di dati con una colonna