Documentação

Classe: TypeSafeClient

Cliente para a API da TypeSafe AI.

Construtores

Construtor

new TypeSafeClient(config?): TypeSafeClient;

Cria um cliente para a API da TypeSafe AI.

As opções explícitas têm precedência sobre as variáveis de ambiente e, depois, sobre os valores predefinidos do SDK. Os valores de ambiente vazios ou apenas com espaços são ignorados.

Parâmetros

config?

TypeSafeClientConfig = {}

Devolve

TypeSafeClient

Lança

Falta a chave de API, a configuração é inválida ou o runtime não é suportado.

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 pedido.


defaultModel

readonly defaultModel: string;

Modelo utilizado quando um pedido 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;

Verbosidade do registo configurada.


models

readonly models: Models;

Os modelos disponíveis para a conta.


retry

readonly retry: RetryPolicy;

Definições de repetição com as substituições do construtor aplicadas.


timeout

readonly timeout: number;

Tempo limite por tentativa, em milissegundos.

Métodos

systemOne()

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

Responde a perguntas com nome sobre texto ou estado estruturado.

Parâmetros de tipo

Q

Q extends Questions

Parâmetros

request

SystemOneRequest<Q>

Estado, perguntas e uma substituição opcional do modelo.

options?

RequestOptions = {}

Definições de tempo limite, repetição, cabeçalhos e cancelamento por chamada.

Devolve

APIPromise<SystemOneResult<Q>>

Respostas tipadas pelo nome da pergunta e pelos critérios, com o modelo e a utilização 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 devolve uma resposta não-2xx após as repetições.

Lança

O pedido não consegue estabelecer ligação ou excede o tempo limite após as repetições.

Lança

O chamador aborta o pedido.

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);