Condividi tramite


DevUI - Un'app di esempio per l'esecuzione di agenti e flussi di lavoro

DevUI è un'applicazione di esempio leggera e autonoma per l'esecuzione di agenti e flussi di lavoro in Microsoft Agent Framework. Fornisce un'interfaccia Web per i test interattivi insieme a un back-end dell'API compatibile con OpenAI, che consente di eseguire il debug, il test e l'iterazione visivamente sugli agenti e sui flussi di lavoro compilati prima di integrarli nelle applicazioni.

Importante

DevUI è un'app di esempio che consente di visualizzare ed eseguire il debug degli agenti e dei flussi di lavoro durante lo sviluppo. Non è destinato all'uso in produzione.

Prossimamente

La documentazione di DevUI per C# sarà presto disponibile. Si prega di controllare più tardi o fare riferimento alla documentazione di Python per indicazioni concettuali.

Dashboard DevUI di Agent Framework che mostra la directory e la traccia dell'agente

Funzionalità

  • Interfaccia Web: interfaccia utente interattiva per i test di agenti e flussi di lavoro
  • Tipi di input flessibili: supporto per testo, caricamenti di file e tipi di input personalizzati in base al primo executor del flusso di lavoro
  • Individuazione basata su directory: Individuare automaticamente gli agenti e i flussi di lavoro tramite una struttura di directory
  • Registrazione in memoria: registrare entità programmaticamente senza l'installazione del file system
  • APIOpenAI-Compatible: usare OpenAI Python SDK per interagire con gli agenti
  • Raccolta di esempi: Esplorare e scaricare esempi curati quando non vengono individuate entità
  • Tracciamento: visualizzare delle tracce OpenTelemetry per debug e osservabilità

Tipi di input

DevUI adatta l'interfaccia di input in base al tipo di entità:

  • Agenti: supportano l'input di testo e gli allegati di file (immagini, documenti e così via) per le interazioni multipli
  • Flussi di lavoro: l'interfaccia di input viene generata automaticamente in base al tipo di input del primo executor. DevUI introspetta il flusso di lavoro e riflette lo schema di input previsto, semplificando il test dei flussi di lavoro con tipi di input strutturati o personalizzati.

Questa gestione dinamica degli input consente di testare gli agenti e i flussi di lavoro esattamente come riceverebbero input nell'applicazione.

Installazione

Installare DevUI da PyPI:

pip install agent-framework-devui --pre

Avvio rapido

Opzione 1: Registrazione a livello di codice

Avviare DevUI con agenti registrati in memoria:

from agent_framework import Agent
from agent_framework.openai import OpenAIChatClient
from agent_framework.devui import serve

def get_weather(location: str) -> str:
    """Get weather for a location."""
    return f"Weather in {location}: 72F and sunny"

# Create your agent
agent = Agent(
    name="WeatherAgent",
    chat_client=OpenAIChatClient(),
    tools=[get_weather]
)

# Launch DevUI
serve(entities=[agent], auto_open=True)
# Opens browser to http://localhost:8080

Opzione 2: Scoperta della directory (CLI)

Se si dispone di agenti e flussi di lavoro organizzati in una struttura di directory, avviare DevUI dalla riga di comando:

# Launch web UI + API server
devui ./agents --port 8080
# Web UI: http://localhost:8080
# API: http://localhost:8080/v1/*

Per informazioni dettagliate sulla struttura della directory richiesta, vedere Scoperta della directory.

Uso di OpenAI SDK

DevUI offre un'API risposte compatibile con OpenAI. È possibile usare OpenAI Python SDK per interagire con gli agenti:

from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:8080/v1",
    api_key="not-needed"  # API key not required for local DevUI
)

response = client.responses.create(
    metadata={"entity_id": "weather_agent"},  # Your agent/workflow name
    input="What's the weather in Seattle?"
)

# Extract text from response
print(response.output[0].content[0].text)

Per altri dettagli sull'API, vedere Informazioni di riferimento sulle API.

Opzioni CLI

devui [directory] [options]

Options:
  --port, -p      Port (default: 8080)
  --host          Host (default: 127.0.0.1)
  --headless      API only, no UI
  --no-open       Don't automatically open browser
  --tracing       Enable OpenTelemetry tracing
  --reload        Enable auto-reload
  --mode          developer|user (default: developer)
  --auth          Enable Bearer token authentication
  --auth-token    Custom authentication token

Passaggi successivi