strumento Python per i flussi nel portale di Microsoft Foundry (versione classica)

Si applica solo a:Portale di Foundry (versione classica). Questo articolo non è disponibile per il nuovo portale foundry. Altre informazioni sul nuovo portale.

Nota

I collegamenti in questo articolo potrebbero aprire contenuto nella nuova documentazione di Microsoft Foundry anziché nella documentazione di Foundry (versione classica) visualizzata.

Avviso

Lo sviluppo delle funzionalità di Prompt Flow è terminato il 20 aprile 2026. La funzionalità verrà ritirata completamente il 20 aprile 2027. Alla data di ritiro, Prompt Flow passa alla modalità di sola lettura. I flussi esistenti continueranno a funzionare fino a tale data.

Azione consigliata: Eseguire la migrazione dei carichi di lavoro di Prompt Flow a Microsoft Agent Framework prima del 20 aprile 2027.

Lo strumento di flusso di prompt di Python fornisce frammenti di codice personalizzati come nodi eseguibili indipendenti. È possibile creare rapidamente Python strumenti, modificare il codice e verificare i risultati.

Prerequisiti

Importante

Questo articolo fornisce il supporto legacy per i progetti basati su hub. Non funzionerà per i progetti Foundry. Vedere Come si conosce il tipo di progetto di cui si dispone?

nota di compatibilità SDK: gli esempi di codice richiedono una versione specifica Microsoft Foundry SDK. Se si verificano problemi di compatibilità, valutare la possibilità di eseguire la migrazione da un progetto basato su hub a un progetto Foundry.

Compilare con lo strumento di Python

  1. Creare o aprire un flusso in Microsoft Foundry. Per altre informazioni, vedere Creare un flusso.

  2. Selezionare + Python per aggiungere lo strumento Python al flusso.

    Screenshot che mostra lo strumento di Python aggiunto a un flusso in Foundry portal.

  3. Immettere i valori per i parametri di input dello strumento di Python descritti nella tabella Inputs. Ad esempio, nella casella di testo Code immettere il codice Python seguente:

    from promptflow import tool
    
    @tool
    def my_python_tool(message: str) -> str:
        return 'hello ' + message
    

    Per altre informazioni, vedere requisiti di input del codice Python.

  4. Aggiungi altri strumenti al flusso in base alle esigenze. In alternativa, selezionare Esegui per eseguire il flusso.

  5. Gli output sono descritti nella tabella Output. In base all'esempio precedente del codice in Python, se il messaggio di input è "world", l'output è hello world.

Ingressi

L'elenco di input cambia in base agli argomenti della funzione dello strumento, dopo aver salvato il codice. L'aggiunta di tipo a argomenti e return valori consente allo strumento di visualizzare correttamente i tipi.

Nome Digitare Descrizione Obbligatorio
Codice Stringa Frammento di codice Python.
Ingressi - Elenco dei parametri della funzione dello strumento e delle relative assegnazioni. -

Output

L'output è il valore return della funzione dello strumento Python. Si consideri ad esempio la funzione dello strumento di Python seguente:

from promptflow import tool

@tool
def my_python_tool(message: str) -> str:
    return 'hello ' + message

Se il messaggio di input è "world", l'output è hello world.

Tipi

Digitare esempio di Python Descrizione
Int param: int Tipo Integer
Bool param: bool Tipo booleano
Stringa param: str Tipo di string
Doppio parametro: float Tipo double
Elenco param: list o param: List[T] Tipo di elenco
Oggetto param: dict o param: Dict[K, V] Tipo di oggetto
Connessione param: CustomConnection Il tipo di connessione viene gestito appositamente.

Considerare i parametri con l'annotazione tipo Connection come input di connessione. Questo trattamento significa:

  • L'estensione del prompt flow mostra un selettore della connessione.
  • Durante il tempo di esecuzione, il flusso del prompt tenta di trovare la connessione con lo stesso nome dal valore del parametro passato.

Nota

L'annotazione Union[...] del tipo supporta solo il tipo di connessione. Un esempio è param: Union[CustomConnection, OpenAIConnection].

Requisiti di input del codice Python

Questa sezione descrive i requisiti per l'input di codice Python per lo strumento Python.

  • Il codice dello strumento Python deve essere completo, incluse le necessarie importazioni di moduli.
  • Il codice dello strumento Python deve contenere una funzione decorata con @tool (funzione dello strumento) che funge da punto di ingresso per l'esecuzione. Applicare il decoratore @tool una sola volta all'interno del frammento di codice.
  • Assegna i parametri della funzione dello strumento Python nella sezione Inputs.
  • La funzione dello strumento Python deve avere un'istruzione di ritorno e un valore, che è l'output dello strumento.

Il codice Python seguente è un esempio di procedure consigliate:

from promptflow import tool

@tool
def my_python_tool(message: str) -> str:
    return 'hello ' + message

Utilizzare una connessione personalizzata nello strumento Python

Se si sviluppa uno strumento di Python che richiede la chiamata a servizi esterni con autenticazione, usare la connessione personalizzata in un flusso di richiesta. Usando questa connessione, è possibile archiviare in modo sicuro la chiave di accesso e recuperarla nel codice Python.

Creare una connessione personalizzata

Creare una connessione personalizzata che archivia tutte le chiavi API del modello linguistico di grandi dimensioni o altre credenziali necessarie.

Importante

Questo articolo fornisce il supporto legacy per i progetti basati su hub. Non funzionerà per i progetti Foundry. Vedere Come si conosce il tipo di progetto di cui si dispone?

nota di compatibilità SDK: gli esempi di codice richiedono una versione specifica Microsoft Foundry SDK. Se si verificano problemi di compatibilità, valutare la possibilità di eseguire la migrazione da un progetto basato su hub a un progetto Foundry.

  1. Passare alla pagina Centro gestione per il progetto.

  2. Nell'intestazione Hub o Project selezionare Risorse connesse.

  3. Selezionare + Nuova connessione.

  4. Selezionare Servizio personalizzato . È possibile definire il nome della connessione. Selezionare Aggiungi coppie chiave-valore per aggiungere più coppie chiave-valore per archiviare le credenziali e le chiavi.

    Nota

    Assicurarsi che almeno una coppia chiave-valore sia impostata come segreto. In caso contrario, la connessione non viene creata correttamente. Per impostare una coppia chiave-valore come segreto, selezionare è segreto per crittografare e archiviare il valore della chiave.

Utilizzare una connessione personalizzata in Python

Per utilizzare una connessione personalizzata nel codice Python:

  1. Nella sezione del codice del nodo Python importare la libreria di connessione personalizzata usando from promptflow.connections import CustomConnection. Definire un parametro di input del tipo CustomConnection nella funzione dello strumento.
  2. Analizzare l'input nella sezione di ingresso. Seleziona quindi la connessione personalizzata di destinazione nel menu a discesa dei valori.

Per esempio:

from promptflow import tool
from promptflow.connections import CustomConnection

@tool
def my_python_tool(message: str, myconn: CustomConnection) -> str:
    # Get authentication key-values from the custom connection
    connection_key1_value = myconn.key1
    connection_key2_value = myconn.key2

Passaggi successivi