Delen via


DevUI - Een voorbeeld-app voor het uitvoeren van agents en werkstromen

DevUI is een lichtgewicht, zelfstandige voorbeeldtoepassing voor het uitvoeren van agents en werkstromen in het Microsoft Agent Framework. Het biedt een webinterface voor interactief testen, samen met een openAI-compatibele API-back-end, zodat u visueel fouten kunt opsporen, testen en herhalen op agents en werkstromen die u bouwt voordat u ze in uw toepassingen integreert.

Belangrijk

DevUI is een voorbeeld-app die u helpt bij het visualiseren en opsporen van fouten in uw agents en werkstromen tijdens de ontwikkeling. Het is niet bedoeld voor productiegebruik.

Binnenkort beschikbaar

De DevUI-documentatie voor C# is binnenkort beschikbaar. Kom later terug of raadpleeg de Python-documentatie voor conceptuele richtlijnen.

Dashboard van Agent Framework DevUI met agentenoverzicht en tracering

Features

  • Webinterface: interactieve gebruikersinterface voor het testen van agents en werkstromen
  • Flexibele invoertypen: ondersteuning voor tekst, bestandsuploads en aangepaste invoertypen op basis van de eerste uitvoerfunctie van uw werkstroom
  • Directory-Based Ontdekking: Agenten en werkstromen automatisch detecteren uit een mapstructuur
  • In-Memory registratie: entiteiten programmatisch registreren zonder bestandssysteeminstallatie
  • OpenAI-Compatible-API: de OpenAI Python SDK gebruiken om te communiceren met uw agents
  • Voorbeeldgalerie: Gecureerde voorbeelden bekijken en downloaden wanneer er geen entiteiten worden gedetecteerd
  • Tracering: OpenTelemetry-traceringen weergeven voor foutopsporing en waarneembaarheid

Invoertypen

DevUI past de invoerinterface aan op basis van het entiteitstype:

  • Agents: Ondersteuning voor tekstinvoer en bestandsbijlagen (afbeeldingen, documenten, enzovoort) voor multimodale interacties
  • Werkstromen: De invoerinterface wordt automatisch gegenereerd op basis van het invoertype van de eerste uitvoerder. DevUI introspecteert de werkstroom en weerspiegelt het verwachte invoerschema, zodat u eenvoudig werkstromen kunt testen met gestructureerde of aangepaste invoertypen.

Met deze dynamische invoerafhandeling kunt u uw agents en werkstromen precies testen zoals ze invoer in uw toepassing zouden ontvangen.

Installatie

DevUI installeren vanuit PyPI:

pip install agent-framework-devui --pre

Snel aan de slag

Optie 1: Programmatische registratie

Start DevUI met agents die zijn geregistreerd in het geheugen:

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

Optie 2: Directory Discovery (CLI)

Als u agents en werkstromen in een mapstructuur hebt georganiseerd, start u DevUI vanaf de opdrachtregel:

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

Zie Mapdetectie voor meer informatie over de vereiste mapstructuur.

De OpenAI SDK gebruiken

DevUI biedt een OpenAI-compatibele Antwoorden-API. U kunt de OpenAI Python SDK gebruiken om te communiceren met uw agents:

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)

Zie API-naslaginformatie voor meer informatie over de API.

CLI-opties (Command Line Interface-opties)

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

Volgende stappen