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