Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel enthält eine vollständige Befehlszeilenreferenz für den runevals Befehl, der Teil des @microsoft/m365-copilot-eval Pakets ist.
Hinweis
Die Agent-Auswertungs-CLI befindet sich derzeit in der Vorschauphase. Features und Funktionen können geändert werden.
Synopsis
runevals [options]
runevals cache-info
runevals cache-clear
runevals cache-dir
Beschreibung
Der runevals Befehl wertet Microsoft 365 Copilot Agents aus, indem Testeingabeaufforderungen und Bewertungsantworten mithilfe von Azure KI + Machine Learning-Auswertungsmetriken gesendet werden. Das Tool unterstützt die Batchauswertung aus JSON-Dateien, Inlineeingabeaufforderungen und interaktive Tests.
Optionen
-V, --version
Geben Sie die Versionsnummer des CLI-Tools aus.
Beispiel:
runevals --version
Ausgabe:
1.3.0-preview.1
--log-level [level]
Legen Sie den Ausführlichkeitsgrad der Protokollierung fest. Verfügbare Ebenen: debug, info, warning, error.
-
Standard: Wenn Sie das Flag ohne Einen Wert verwenden, wird standardmäßig verwendet
info. - debug: Ausführliche Debuginformationen, einschließlich API-Nutzlasten.
- info: Allgemeine Informationen zum Auswertungsfortschritt.
- Warnung: Nur Warnmeldungen.
- error: Nur Fehlermeldungen.
Beispiele:
# Info level (default when flag is present)
runevals --log-level
# Debug level
runevals --log-level debug
# Error level only
runevals --log-level error
Warnung
Die debug Ebene kann unformatierte API-Nutzlasten und Antwortdaten in der Konsolenausgabe enthalten. Die Redaction ist musterbasiert und fängt möglicherweise nicht alle PII oder Anmeldeinformationen ab. Geben Sie die Debugausgabe nicht ohne manuelle Überprüfung öffentlich frei.
--prompts <prompts...>
Geben Sie eine oder mehrere Eingabeaufforderungen direkt in der Befehlszeile für schnelle Tests an, ohne eine Datei zu erstellen.
Beispiele:
# Single prompt
runevals --prompts "What is Microsoft 365?"
# Multiple prompts
runevals --prompts "What is Teams?" "What is SharePoint?" "What is OneDrive?"
--expected <responses...>
Geben Sie erwartete Antworten zu den mit --promptsangegebenen Eingabeaufforderungen an. Die Anzahl der Antworten muss mit der Anzahl der Eingabeaufforderungen übereinstimmen.
Beispiel:
runevals --prompts "What is Microsoft Graph?" \
--expected "Microsoft Graph is the API gateway to Microsoft 365 data and intelligence."
Mehrere Eingabeaufforderungen und Antworten:
runevals --prompts "What is Teams?" "What is SharePoint?" \
--expected "Teams is a collaboration platform" "SharePoint is a content management system"
--prompts-file <file>
Geben Sie eine benutzerdefinierte JSON-Datei mit Testeingabeaufforderungen an. Diese Datei überschreibt die automatische Ermittlung.
Beispiel:
runevals --prompts-file ./tests/my-custom-tests.json
Dateiformat:
[
{
"prompt": "Test question",
"expected_response": "Expected answer"
}
]
Das vollständige Datasetschema finden Sie unter Datasetschema und Testentwurf.
-o, --output <file>
Geben Sie den Pfad und das Format der Ausgabedatei an. Das Format wird durch die Dateierweiterung bestimmt.
Unterstützte Formate:
-
.html- HTML-Bericht (Standard, automatisch im Browser geöffnet) -
.json– JSON-Ergebnisse -
.csv- CSV-Tabelle
Beispiele:
# HTML output
runevals --output ./reports/results.html
# JSON output
runevals --output ./results/eval-results.json
# CSV output
runevals --output ./data/scores.csv
Standardverhalten:
Ohne --outputspeichert der Befehl Ergebnisse in ./.evals/YYYY-MM-DD_HH-MM-SS.html.
-i, --interactive
Wechseln Sie in den interaktiven Modus für manuelle Eingaben und Tests von Eingabeaufforderungen.
Beispiel:
runevals --interactive
Im interaktiven Modus werden Sie aufgefordert, Eingabeaufforderungen einzeln einzugeben, sodass Sie explorative Tests durchführen können.
--m365-agent-id <id>
Überschreiben Sie die Agent-ID, um einen bestimmten Agent auszuwerten. Dieser Parameter ist nützlich, wenn mehrere Agents getestet werden oder wenn die Agent-ID nicht automatisch erkannt werden kann.
Beispiel:
runevals --m365-agent-id "U_0dc4a8a2-b95f-edac-91c8-d802023ec2d4"
Agent-ID-Formate:
- Benutzerbereich:
U_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx - Mandantenbereich:
T_agent-name.declarativeAgent
--env <environment>
Geben Sie die zu ladende Umgebungskonfiguration an. Dieser Parameter lädt env/.env.<environment>.
Standard: dev (lädt env/.env.dev)
Beispiele:
# Load env/.env.dev (default)
runevals --env dev
# Load env/.env.prod
runevals --env prod
# Load env/.env.staging
runevals --env staging
Rangfolge der Umgebungsdatei:
-
.env.local(automatisch für Agents-Toolkit-Projekte erkannt) -
.env.local.user(Geheimnisse, falls vorhanden automatisch geladen) -
env/.env.<environment>(angegeben durch--env) - Systemumgebungsvariablen
--init-only
Initialisiert die Python-Umgebung und lädt Abhängigkeiten herunter, ohne Auswertungen auszuführen. Diese Option ist nützlich für:
- Vorbereiten des Caches in CI/CD-Pipelines
- Beheben von Installationsproblemen
- Überprüfen des Setups vor dem Ausführen von Tests
Beispiel:
runevals --init-only
Kombinieren Sie für die Problembehandlung diese Option mit --log-level debug:
runevals --init-only --log-level debug
-h, --help
Zeigt Hilfeinformationen zu verfügbaren Befehlen und Optionen an.
Beispiel:
runevals --help
Cachebefehle
Das Auswertungstool verwendet einen lokalen Cache für die Python-Runtime und Abhängigkeiten. Diese Befehle helfen Ihnen beim Verwalten des Caches.
cache-info
Zeigt Statistiken zur zwischengespeicherten Python-Umgebung an, einschließlich Größe, Speicherort und installierten Paketen.
Beispiel:
runevals cache-info
Ausgabe:
Cache Information
Location: C:\Users\YourName\.m365-copilot-eval\cache
Size: 245 MB
Python Version: 3.11.5
Packages: 42 installed
Last updated: 2026-04-10 14:23:15
cache-clear
Entfernt die zwischengespeicherte Python-Umgebung und alle heruntergeladenen Abhängigkeiten. Verwenden Sie diesen Befehl, um Installationsprobleme zu beheben oder Speicherplatz frei zu geben.
Beispiel:
runevals cache-clear
Nachverfolgung:
Initialisieren Sie nach dem Löschen des Caches erneut:
runevals --init-only
cache-dir
Gibt den absoluten Pfad zum Cacheverzeichnis aus. Dieses Feature ist nützlich für Skripts oder manuelle Überprüfungen.
Beispiel:
runevals cache-dir
Ausgabe:
C:\Users\YourName\.m365-copilot-eval\cache
Verwendung in Skripts:
# Check cache directory permissions (Unix/macOS)
chmod -R u+w $(runevals cache-dir)
# View cache contents
ls -lah $(runevals cache-dir)
Umgebungsvariablen
Das Tool liest die Konfiguration aus Umgebungsdateien und Systemvariablen. Schritt-für-Schritt-Anweisungen zum Abrufen dieser Werte finden Sie unter Erforderliche Umgebungsvariablen.
Erforderliche Variablen
| Variable | Beschreibung | Beispiel |
|---|---|---|
TENANT_ID |
Microsoft Entra Mandanten-ID | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx |
AZURE_AI_OPENAI_ENDPOINT |
endpunkt-URL für Azure OpenAI in Foundry Models | https://your-resource.openai.azure.com/ |
AZURE_AI_API_KEY |
Azure OpenAI-API-Schlüssel | your-api-key-here |
Optionale Variablen
| Variable | Beschreibung | Default |
|---|---|---|
M365_AGENT_ID |
Auszuwertende Agent-ID | Automatisch erkannt von M365_TITLE_ID |
M365_TITLE_ID |
Agent-Titel-ID (Agents Toolkit) | Keine |
AZURE_AI_API_VERSION |
Azure OpenAI-API-Version | 2024-12-01-preview |
AZURE_AI_MODEL_NAME |
Modell für Auswertungen | gpt-4o-mini |
Beispiele
Grundlegende Nutzung
Auswerten mithilfe der automatisch ermittelten Datasetdatei:
cd /path/to/your-agent-project
runevals
Umgebung angeben
Verwenden Der Konfiguration der Produktionsumgebung:
runevals --env prod
Benutzerdefinierte Datasetdatei
Verwenden Sie eine bestimmte Testdatei:
runevals --prompts-file ./tests/regression-tests.json
Inlinetests
Schnelltest mit Inlineeingabeaufforderungen:
runevals --prompts "What is Microsoft 365?" \
--expected "Microsoft 365 is a cloud-based productivity suite"
Interaktiver Modus
Geben Sie Eingabeaufforderungen manuell ein:
runevals --interactive
Benutzerdefiniertes Ausgabeformat
Generieren von JSON-Ergebnissen:
runevals --output ./results/eval-$(date +%Y%m%d).json
Debug-Modus
Ausführung mit detaillierter Protokollierung:
runevals --log-level debug --output ./debug-results.json
Nur Setup
Python-Umgebung ohne Ausführen von Tests vorab zwischenspeichern:
runevals --init-only --log-level info
Agent-ID überschreiben
Testen eines bestimmten Agents:
runevals --m365-agent-id "U_0dc4a8a2-b95f-edac-91c8-d802023ec2d4"
Kombinierte Optionen
Umfassende Auswertung mit benutzerdefinierten Einstellungen:
runevals \
--env staging \
--prompts-file ./evals/full-suite.json \
--output ./reports/staging-eval-$(date +%Y%m%d).html \
--log-level info \
--m365-agent-id "T_my-agent.declarativeAgent"
Exitcodes
| Code | Bedeutung |
|---|---|
0 |
Erfolgreich |
1 |
Allgemeiner Fehler |
2 |
Ungültige Argumente |
3 |
Umgebungskonfigurationsfehler |
4 |
Agent nicht gefunden |
5 |
Authentifizierungsfehler |
10 |
Fehler beim Einrichten der Python-Umgebung |
Problembehandlung
Informationen zu häufigen Problemen mit installation, Authentifizierung, Laufzeitfehlern, Cacheproblemen und Proxyeinrichtung finden Sie im Artikel Problembehandlung .