promptflow.tracing Modul#
- class promptflow.tracing.ThreadPoolExecutorWithContext(max_workers=None, thread_name_prefix='', initializer=None, initargs=())#
Bases:
ThreadPoolExecutor
- promptflow.tracing.start_trace(*, resource_attributes: Optional[dict] = None, collection: Optional[str] = None, **kwargs)#
Promptflow-Instrumentierung.
- Parameter:
resource_attributes (Optional[dict]) – Geben Sie die Ressourcenattribute für den aktuellen Prozess an.
collection (Optional[str]) – Geben Sie die Sammlung für das aktuelle Tracing an.
- promptflow.tracing.trace(func: Optional[Callable] = None) Callable#
Ein Dekorator, um einer Funktion eine Spur hinzuzufügen.
Wenn eine Funktion von diesem Dekorator umschlossen wird, werden der Funktionsname, die Eingaben, die Ausgaben, die Startzeit, die Endzeit und Fehler (falls vorhanden) aufgezeichnet.
Es kann sowohl für synchrone als auch für asynchrone Funktionen verwendet werden. Für synchrone Funktionen gibt es eine synchrone Funktion zurück. Für asynchrone Funktionen gibt es eine asynchrone Funktion zurück.
- Parameter:
func (Callable) – Die zu verfolgende Funktion.
- Gibt zurück:
Die umschlossene Funktion mit aktivierter Spur.
- Rückgabetyp:
Callable
- Beispiele:
Verwendung synchroner Funktionen
@trace def greetings(user_id): name = get_name(user_id) return f"Hello, {name}"
Verwendung asynchroner Funktionen
@trace async def greetings_async(user_id): name = await get_name_async(user_id) return f"Hello, {name}"