Klasse: TypeSafeClient
Client für die TypeSafe AI API.
Konstruktoren
Konstruktor
new TypeSafeClient(config?): TypeSafeClient;
Erstellt einen Client für die TypeSafe AI API.
Explizite Optionen haben Vorrang vor Umgebungsvariablen und danach vor den SDK-Standardwerten. Leere Umgebungswerte oder solche, die nur aus Leerzeichen bestehen, werden ignoriert.
Parameter
config?
TypeSafeClientConfig = {}
Rückgabewert
TypeSafeClient
Löst aus
Der API-Schlüssel fehlt, die Konfiguration ist ungültig oder die Laufzeitumgebung wird nicht unterstützt.
Eigenschaften
baseURL
readonly baseURL: string;
API-Wurzel ohne abschließende Schrägstriche.
defaultHeaders
readonly defaultHeaders: Readonly<Record<string, string>>;
Zusätzliche Header, die bei jeder Anfrage gesendet werden.
defaultModel
readonly defaultModel: string;
Modell, das verwendet wird, wenn eine Anfrage model weglässt.
fetch
readonly fetch: Fetch;
HTTP-fetch-Implementierung.
logger
readonly logger: Logger;
Der konfigurierte Logger, gefiltert auf logLevel.
logLevel
readonly logLevel: LogLevel;
Konfigurierte Log-Ausführlichkeit.
models
readonly models: Models;
Die für das Konto verfügbaren Modelle.
retry
readonly retry: RetryPolicy;
Retry-Einstellungen mit angewendeten Konstruktor-Überschreibungen.
timeout
readonly timeout: number;
Zeitlimit pro Versuch in Millisekunden.
Methoden
systemOne()
systemOne<Q>(request, options?): APIPromise<SystemOneResult<Q>>;
Beantwortet benannte Fragen zu Text oder strukturiertem Zustand.
Typparameter
Q
Q extends Questions
Parameter
request
Zustand, Fragen und eine optionale Modell-Überschreibung.
options?
RequestOptions = {}
Zeitlimit, Retry-, Header- und Abbrucheinstellungen pro Aufruf.
Rückgabewert
APIPromise<SystemOneResult<Q>>
Antworten, typisiert nach Fragenname und criteria, samt Modell und Token-Nutzung.
Löst aus
Die Fragen sind leer, oder die score-criteria sind keine Liste mit mindestens zwei Einträgen.
Löst aus
Der Server liefert nach Wiederholungen eine Nicht-2xx-Antwort.
Löst aus
Die Anfrage kann nach Wiederholungen keine Verbindung herstellen oder läuft in ein Zeitlimit.
Löst aus
Der Aufrufer bricht die Anfrage ab.
Beispiel
const { answers } = await client.systemOne({
state: "I was charged twice. Please help.",
questions: { billing: noul("Is this about billing?") },
});
console.log(answers.billing.noul);