Documentación

Clase: TypeSafeClient

Cliente para la API de TypeSafe AI.

Constructores

Constructor

new TypeSafeClient(config?): TypeSafeClient;

Crea un cliente para la API de TypeSafe AI.

Las opciones explícitas tienen prioridad sobre las variables de entorno y, después, sobre los valores predeterminados del SDK. Los valores de entorno vacíos o con solo espacios se ignoran.

Parámetros

config?

TypeSafeClientConfig = {}

Devuelve

TypeSafeClient

Lanza

Falta la clave de API, la configuración no es válida o el runtime no es compatible.

Propiedades

baseURL

readonly baseURL: string;

Raíz de la API sin las barras finales.


defaultHeaders

readonly defaultHeaders: Readonly<Record<string, string>>;

Cabeceras adicionales que se envían con cada solicitud.


defaultModel

readonly defaultModel: string;

Modelo que se usa cuando una solicitud omite model.


fetch

readonly fetch: Fetch;

Implementación de fetch HTTP.


logger

readonly logger: Logger;

El logger configurado, filtrado por logLevel.


logLevel

readonly logLevel: LogLevel;

Nivel de detalle del registro configurado.


models

readonly models: Models;

Los modelos disponibles para la cuenta.


retry

readonly retry: RetryPolicy;

Ajustes de reintento con las sobrescrituras del constructor aplicadas.


timeout

readonly timeout: number;

Tiempo de espera por intento en milisegundos.

Métodos

systemOne()

systemOne<Q>(request, options?): APIPromise<SystemOneResult<Q>>;

Responde preguntas con nombre sobre texto o estado estructurado.

Parámetros de tipo

Q

Q extends Questions

Parámetros

request

SystemOneRequest<Q>

Estado, preguntas y una sobrescritura de modelo opcional.

options?

RequestOptions = {}

Tiempo de espera, reintentos, cabeceras y cancelación por llamada.

Devuelve

APIPromise<SystemOneResult<Q>>

Respuestas tipadas por nombre de pregunta y criterios, con el modelo y el uso de tokens.

Lanza

Las preguntas están vacías, o los criterios de score no son una lista de al menos dos entradas.

Lanza

El servidor devuelve una respuesta que no es 2xx después de los reintentos.

Lanza

La solicitud no puede conectarse o agota el tiempo de espera después de los reintentos.

Lanza

Quien llama cancela la solicitud.

Ejemplo

const { answers } = await client.systemOne({
  state: "I was charged twice. Please help.",
  questions: { billing: noul("Is this about billing?") },
});
console.log(answers.billing.noul);