Partager via


Découverte d’annuaires

DevUI peut détecter automatiquement les agents et les flux de travail à partir d’une structure de répertoires. Cela vous permet d’organiser plusieurs entités et de les lancer avec une seule commande.

Bientôt disponible

La documentation DevUI pour C# sera bientôt disponible. Consultez la documentation Python ultérieurement ou reportez-vous à la documentation Python pour obtenir des conseils conceptuels.

Structure de répertoires

Pour que vos agents et flux de travail soient découverts par DevUI, ils doivent être organisés dans une structure de répertoire spécifique. Chaque entité doit avoir un __init__.py fichier qui exporte la variable requise (agent ou workflow).

entities/
    weather_agent/
        __init__.py      # Must export: agent = Agent(...)
        agent.py         # Agent implementation (optional, can be in __init__.py)
        .env             # Optional: API keys, config vars
    my_workflow/
        __init__.py      # Must export: workflow = WorkflowBuilder(start_executor=...)...
        workflow.py      # Workflow implementation (optional)
        .env             # Optional: environment variables
    .env                 # Optional: shared environment variables

Exemple d’agent

Créez un répertoire pour votre agent avec les éléments suivants __init__.py:

weather_agent/__init__.py :

from agent_framework import Agent
from agent_framework.openai import OpenAIChatClient

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

agent = Agent(
    name="weather_agent",
    chat_client=OpenAIChatClient(),
    tools=[get_weather],
    instructions="You are a helpful weather assistant."
)

La condition clé est que le __init__.py fichier doit exporter une variable nommée agent (pour les agents) ou workflow (pour les flux de travail).

Exemple de flux de travail

my_workflow/__init__.py :

from agent_framework.workflows import WorkflowBuilder

workflow = (
    WorkflowBuilder(start_executor="my_executor")
    .add_executor(...)
    .add_edge(...)
    .build()
)

Variables d’environnement

DevUI charge automatiquement les .env fichiers s’ils sont présents :

  1. Niveau .envd'entité : placé dans le répertoire agent/workflow, chargé uniquement pour cette entité
  2. Niveau .envparent : placé dans le répertoire racine des entités, chargé pour toutes les entités

Exemple de fichier .env :

OPENAI_API_KEY=sk-...
AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/

Conseil / Astuce

Créez un .env.example fichier pour documenter les variables d’environnement requises sans exposer les valeurs réelles. Ne validez jamais les fichiers .env avec des informations d’identification réelles dans la gestion du code source.

Lancement avec la découverte d’annuaires

Une fois la structure de répertoire configurée, lancez DevUI :

# Discover all entities in ./entities directory
devui ./entities

# With custom port
devui ./entities --port 9000

# With auto-reload for development
devui ./entities --reload

Lorsque DevUI commence par aucune entité découverte, il affiche un exemple de galerie avec des exemples organisés à partir du référentiel Agent Framework. Vous pouvez:

  • Parcourir les exemples d’agents et les flux de travail disponibles
  • Télécharger des exemples pour passer en revue et personnaliser
  • Exécuter des exemples localement pour commencer rapidement

Résolution des problèmes

Entité non découverte

  • Assurez-vous que le fichier __init__.py exporte la variable agent ou workflow.
  • Rechercher les erreurs de syntaxe dans vos fichiers Python
  • Vérifiez que le répertoire se trouve directement sous le chemin d’accès passé à devui

Variables d’environnement non chargées

  • Vérifiez que le .env fichier se trouve à l’emplacement correct
  • Vérifier les autorisations de fichier
  • Utiliser --reload l’indicateur pour récupérer les modifications pendant le développement

Étapes suivantes