Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Avviso
Prompt flow in Microsoft Foundry e Azure Machine Learning sarà ritirato il 20 aprile 2027. Prompt flow non è più consigliato per i nuovi sviluppi. Esegui la migrazione di applicazioni e distribuzioni Prompt flow esistenti ad Microsoft Agent Framework prima del 20 aprile 2027.
Le immagini container di prompt flow non ricevono più aggiornamenti, inclusi gli aggiornamenti di sicurezza e dei pacchetti. Questo vale per le immagini runtime di Prompt flow, tra cui promptflow-runtime, promptflow-runtime-stable e promptflow-python.
Dopo il 20 aprile 2027, Prompt flow, inclusi l'esperienza di creazione sul Web in Microsoft Foundry e Azure Machine Learning, le estensioni per VS Code e le immagini del contenitore correlate di Prompt flow, non sarà più supportato né disponibile.
Se l'applicazione dipende dalle distribuzioni di Prompt flow o dalle immagini di runtime, pianifica di spostare tali carichi di lavoro verso alternative supportate, ad esempio Microsoft Agent Framework, prima della data di ritiro. Per linee guida sulla migrazione, vedere la guida alla migrazione di Prompt flow e gli esempi di codice per la migrazione.
Prompt Flow è uno strumento di sviluppo che semplifica l'intero ciclo di sviluppo di applicazioni di intelligenza artificiale basate su modelli di linguaggio di grandi dimensioni. Prompt Flow offre una soluzione completa che semplifica il processo di creazione di prototipi, sperimentazione, iterazione e distribuzione delle applicazioni di intelligenza artificiale.
Questo articolo illustra le differenze principali tra Prompt Flow e Agent Framework, esegue il mapping dei concetti di Prompt Flow agli equivalenti di Agent Framework, illustra Azure Machine Learning considerazioni specifiche e descrive un piano di migrazione.
Per iniziare la migrazione, esaminare la mappatura del concetto per comprendere gli equivalenti dell’Agent Framework per il flusso corrente, quindi seguire Ricostruisci e convalida il tuo flusso di lavoro del Prompt Flow in Microsoft Agent Framework per istruzioni dettagliate.
Prerequisiti
- Un'applicazione Prompt Flow esistente in esecuzione su Azure Machine Learning.
- Python 3.10 o versione successiva.
- Una sottoscrizione ad Azure con una risorsa di Azure OpenAI.
- Microsoft Agent Framework SDK:
pip install agent-framework.
Perché eseguire la migrazione
Agent Framework sostituisce il grafo visivo basato su YAML di Prompt Flow con un framework di Python (e .NET) code-first che fornisce:
-
Flussi di lavoro sicuri per i tipi:
WorkflowBuilderconvalida il grafico di esecuzione in fase di compilazione, rilevando le incompatibilità di tipo e i nodi non raggiungibili prima del runtime. - Supporto agente integrato: crea agenti di intelligenza artificiale con
AzureOpenAIChatClient().as_agent()e registra funzioni Python come strumenti senza registrazione separata dello strumento in YAML. -
Tracciamento OpenTelemetry nativo: l'Agent Framework emette automaticamente span per ogni invocazione dell'executor e chiamata LLM. Connettersi ad Application Insights con una singola
configure_azure_monitor()chiamata. - distribuzione Flexible: creare pacchetti di flussi di lavoro come applicazioni FastAPI standard e distribuirli in App contenitore di Azure, Funzioni di Azure o in qualsiasi host contenitore.
-
Orchestrazione multi-agente: route, fan-out, fan-in e diramazione condizionale tra agenti specializzati che usano
add_edge(),add_fan_out_edges()eadd_fan_in_edges().
Nota
Agent Framework è un framework code-first e non include un editor grafico visivo. Se il team si basa sull'esperienza di creazione visiva di Prompt Flow, pianificare la transizione alla definizione del flusso di lavoro basata su codice.
Azure Machine Learning considerazioni
Usare AzureOpenAIChatClient per gli endpoint Azure OpenAI
Azure Machine Learning *Prompt Flow* si connette agli endpoint Azure OpenAI (https://<resource>.openai.azure.com). In Agent Framework usare AzureOpenAIChatClient per questi endpoint.
import os
from agent_framework.azure import AzureOpenAIChatClient
from azure.identity import DefaultAzureCredential
client = AzureOpenAIChatClient(
endpoint=os.environ["AZURE_OPENAI_ENDPOINT"],
model=os.environ["AZURE_OPENAI_CHAT_DEPLOYMENT"],
credential=DefaultAzureCredential(),
)
Nota
Se si esegue la migrazione a un endpoint del progetto Foundry Microsoft (https://<resource>.services.ai.azure.com), usare invece FoundryChatClient.
Variabili di ambiente
Prompt Flow utilizza le connessioni all'area di lavoro di Azure Machine Learning per archiviare le credenziali. Agent Framework legge le credenziali dalle variabili di ambiente. Esportare i valori di connessione e archiviarli in un .env file:
AZURE_OPENAI_ENDPOINT=https://<your-resource>.openai.azure.com/
AZURE_OPENAI_CHAT_DEPLOYMENT=<your-deployment-name>
APPLICATIONINSIGHTS_CONNECTION_STRING=<your-connection-string>
Carica queste variabili all'inizio della tua applicazione con load_dotenv() dal pacchetto python-dotenv. Per le distribuzioni di produzione, archiviare i segreti in Azure Key Vault anziché .env file.
Tracciamento
Prompt Flow usa la cronologia di esecuzione predefinita di Azure Machine Learning per monitorare le esecuzioni dei flussi. Agent Framework sostituisce questa funzionalità con la traccia basata su OpenTelemetry. Chiama configure_azure_monitor() con la stringa di connessione di Application Insights per inviare tracce, intervalli e metriche.
from azure.monitor.opentelemetry import configure_azure_monitor
configure_azure_monitor(
connection_string=os.environ["APPLICATIONINSIGHTS_CONNECTION_STRING"],
)
Endpoint online gestiti
Le distribuzioni di Prompt Flow sugli endpoint online gestiti di Azure Machine Learning non hanno un equivalente diretto nel Framework Agente. Creare il pacchetto del flusso di lavoro di Agent Framework come applicazione FastAPI e distribuirlo in App contenitore di Azure, Funzioni di Azure o qualsiasi host contenitore.
Mapping dei concetti chiave
La tabella seguente esegue il mapping dei concetti di Prompt Flow agli equivalenti di Agent Framework.
| Concetto di prompt flow | Equivalente dell'Agent Framework | Dettagli |
|---|---|---|
| Flow (YAML / grafico visivo) | WorkflowBuilder |
Fluent Builder che collega le istanze dell'executor con .add_edge(), quindi .build(). Passare l'executor di avvio al costruttore tramite start_executor=. |
| Nodo (qualsiasi passaggio) |
Executor classe con un @handler metodo |
Una classe per passaggio logico. |
| Nodo LLM | AzureOpenAIChatClient().as_agent(instructions=...) |
L'agente sostituisce il modello di prompt del sistema. |
| nodo Python | Logica Python all'interno di un Executor@handler |
Nessun frammento YAML o registrazione di file separata. |
| Nodo di comando | Formattazione di stringhe all'interno di un Executor@handler |
Logica del template inline. |
| Incorporare nodi di Ricerca Testo + Vettore |
AzureAISearchContextProvider tramite context_providers=[...] |
Gestisce automaticamente l'incorporamento e la ricerca. |
| Se/nodo condizionale | .add_edge(source, target, condition=fn) |
La funzione condizione riceve il messaggio in uscita. |
| Nodi paralleli (nessuna dipendenza) | .add_fan_out_edges(source, [targetA, targetB]) |
Trasmette un messaggio a più executor contemporaneamente. |
| Unisci/aggrega nodo | .add_fan_in_edges([sourceA, sourceB], target) |
Attende tutte le fonti elencate prima di procedere ulteriormente. |
| Input del flusso | Annotazione del tipo nel parametro Executor dell'@handler di avvio |
Il tipo di parametro del primo gestore definisce l'input del flusso di lavoro. |
| Output del flusso |
await ctx.yield_output(value) nel terminale Executor |
Usare WorkflowContext[Never, str] per gli esecutori del terminale. |
| Connessioni (credenziali) | Variabili di ambiente lette automaticamente dai client di Agent Framework | Archiviare in .env; caricare con load_dotenv(). |
| Flusso di valutazione | Valutatori di Azure AI Evaluation SDK | Usare SimilarityEvaluator, CoherenceEvaluator, GroundednessEvaluatore altri per assegnare punteggi agli output. |
| Endpoint gestito online | FastAPI Wrapper + App contenitore di Azure | Distribuzione di contenitori standard. |
Parametri di tipo WorkflowContext
WorkflowContext usa parametri di tipo per controllare la modalità di comunicazione di un executor:
| Digitare | Comportamento |
|---|---|
WorkflowContext (nessun parametro di tipo) |
Solo effetti collaterali. Nessun messaggio inviato a valle e nessun output del flusso di lavoro restituito. |
WorkflowContext[str] |
Invia un str verso il basso attraverso ctx.send_message(). |
WorkflowContext[Never, str] |
Restituisce un oggetto str come output finale del flusso di lavoro tramite ctx.yield_output(). |
WorkflowContext[str, str] |
Entrambi inviano un messaggio a valle e producono un output del flusso di lavoro. |
Importare Never da typing (Python 3.11+) o typing_extensions (Python 3.10). Il Never tipo indica che un executor non invia messaggi downstream. Usarlo negli executor del terminale che producono solo l'output finale del flusso di lavoro.
Piano di migrazione
Una migrazione tipica passa attraverso cinque passaggi. Seguite i passaggi in ordine. Ogni passaggio presenta un controllo che conferma l'intenzione di procedere. I primi passaggi (controllo, ricompilazione, convalida) si concentrano sul raggiungimento della parità funzionale con il flusso esistente. I passaggi successivi (operazioni, cutover) gestiscono la preparazione dell'ambiente di produzione e la migrazione del traffico.
Per le procedure pratiche complete per ogni passaggio, vedere gli articoli seguenti:
- Ricostruire e convalidare il workflow di Prompt Flow in Microsoft Agent Framework (controllo, ricostruzione, convalida)
- Distribuire e gestire il flusso di lavoro di Agent Framework migrato (eseguire la migrazione delle operazioni, passaggio finale)
Controlla e mappa. Esportare il file
flow.dag.yamle mappare ogni nodo nel relativo equivalente di Agent Framework usando la tabella di mapping dei concetti presente in questo articolo. Identificare i nodi che necessitano di logica personalizzata e nodi che eseguono il mapping direttamente ai componenti di Agent Framework predefiniti. Prima di procedere, confermare che la tabella di mappatura dei nodi includa ogni nodo del flusso.Ricostruire. Implementare il flusso di lavoro nuovamente usando le classi
WorkflowBuildereExecutor. Inizia con un percorso lineare unico nel tuo flusso, quindi aggiungi rami, espansioni e connessioni condizionali. Procedi quando i file Python producono un output funzionante che rispecchia il comportamento del Prompt Flow.Convalidare. Eseguire il flusso di richiesta originale e il nuovo flusso di lavoro di Agent Framework side-by-side con gli stessi input. Usare gli analizzatori di Azure AI Evaluation SDK (ad esempio
SimilarityEvaluator) per assegnare punteggi alla parità di output. Punta a un punteggio di somiglianza medio di almeno 3,5 (su 5) nel tuoparity_results.csvprima di continuare.Eseguire la migrazione delle operazioni. Collegare la traccia OpenTelemetry con
configure_azure_monitor(), distribuire su App contenitore di Azure e aggiungere un controllo di qualità CI/CD che esegue la valutazione della parità su ogni richiesta pull. Verificare che le tracce vengano visualizzate in Application Insights, che la distribuzione sia funzionante e che la pipeline sia completata con successo.Cutover. Passare il traffico di produzione alla distribuzione di Agent Framework. Dopo aver confermato l'operazione stabile, rimuovere gli endpoint online gestiti da Prompt Flow, le connessioni all'area di lavoro e le risorse di calcolo.
Contenuto correlato
Inizia con la guida pratica, quindi configura il tracciamento per la tua distribuzione. Usare la documentazione di Agent Framework e gli esempi di migrazione come riferimento.
- Ricostruisci e convalida il flusso di lavoro del Prompt Flow in Microsoft Agent Framework
- Distribuire e gestire il flusso di lavoro di Agent Framework migrato
- Che cos'è il flusso di prompt di Azure Machine Learning?
- documentazione di Microsoft Agent Framework
- repository GitHub di Microsoft Agent Framework
- Azure AI Evaluation SDK