Documentação

Classe: TypeSafeClient

Cliente para a API do TypeSafe AI.

Construtores

Construtor

new TypeSafeClient(config?): TypeSafeClient;

Cria um cliente para a API do TypeSafe AI.

As opções explícitas têm precedência sobre as variáveis de ambiente e, em seguida, sobre os padrões do SDK. Valores de ambiente vazios ou só com espaços são ignorados.

Parâmetros

config?

TypeSafeClientConfig = {}

Retorno

TypeSafeClient

Lança

A chave de API está ausente, a configuração é inválida, ou o runtime não é compatível.

Propriedades

baseURL

readonly baseURL: string;

Raiz da API sem as barras finais.


defaultHeaders

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

Cabeçalhos adicionais enviados com cada requisição.


defaultModel

readonly defaultModel: string;

Modelo usado quando uma requisição omite model.


fetch

readonly fetch: Fetch;

Implementação de fetch HTTP.


logger

readonly logger: Logger;

O logger configurado, filtrado por logLevel.


logLevel

readonly logLevel: LogLevel;

Nível de detalhe do log configurado.


models

readonly models: Models;

Os modelos disponíveis para a conta.


retry

readonly retry: RetryPolicy;

Configurações de nova tentativa com as sobrescritas do construtor aplicadas.


timeout

readonly timeout: number;

Tempo limite por tentativa em milissegundos.

Métodos

systemOne()

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

Responde perguntas nomeadas sobre texto ou estado estruturado.

Parâmetros de tipo

Q

Q extends Questions

Parâmetros

request

SystemOneRequest<Q>

Estado, perguntas e uma sobrescrita de modelo opcional.

options?

RequestOptions = {}

Configurações de tempo limite, nova tentativa, cabeçalhos e cancelamento por chamada.

Retorno

APIPromise<SystemOneResult<Q>>

Respostas tipadas por nome de pergunta e critérios, com o modelo e o uso de tokens.

Lança

As perguntas estão vazias, ou os critérios de score não são uma lista com pelo menos duas entradas.

Lança

O servidor retorna uma resposta que não é 2xx após as novas tentativas.

Lança

A requisição não consegue conectar ou atinge o tempo limite após as novas tentativas.

Lança

O chamador aborta a requisição.

Exemplo

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