Class: TypeSafeClient
Официальный клиент для работы с TypeSafe AI API.
Конструкторы
Конструктор
new TypeSafeClient(config?): TypeSafeClient;
Создает экземпляр клиента для работы с TypeSafe AI API.
Явные параметры имеют приоритет над переменными окружения, затем используются настройки SDK по умолчанию.
Пустые или состоящие только из пробелов переменные окружения игнорируются.
Параметры
config?
TypeSafeClientConfig = {}
Возвращаемое значение
TypeSafeClient
Исключения
API-ключ отсутствует, конфигурация недействительна или среда выполнения не поддерживается.
Свойства
baseURL
readonly baseURL: string;
API root with trailing slashes removed.
defaultHeaders
readonly defaultHeaders: Readonly<Record<string, string>>;
Additional headers sent with each request.
defaultModel
readonly defaultModel: string;
Модель, используемая, когда в запросе не указан параметр model.
fetch
readonly fetch: Fetch;
Реализация HTTP fetch.
logger
readonly logger: Logger;
Настроенный логгер, отфильтрованный по logLevel.
logLevel
readonly logLevel: LogLevel;
Настроенный уровень детализации логирования.
models
readonly models: Models;
Список моделей, доступных аккаунту.
retry
readonly retry: RetryPolicy;
Настройки повторных попыток с примененными переопределениями конструктора.
timeout
readonly timeout: number;
Таймаут на попытку в миллисекундах.
Методы
systemOne()
systemOne<Q>(request, options?): APIPromise<SystemOneResult<Q>>;
Отвечает на типизированные вопросы относительно текста или структурированного состояния (state).
Параметры типов
Q
Q extends Questions
Параметры
request
Состояние (state), словарь вопросов и опциональное переопределение модели.
options?
RequestOptions = {}
Настройки таймаута, повторов, заголовков и отмены для конкретного вызова.
Возвращаемое значение
APIPromise<SystemOneResult<Q>>
Типизированные ответы с распределением вероятностей, уверенностью и расходом токенов.
Исключения
Вопросы пусты, либо критерии оценки содержат менее двух записей.
Исключения
Сервер вернул ответ с кодом, отличным от 2xx, после всех повторных попыток.
Исключения
Запрос не может подключиться или превысил время ожидания после всех повторных попыток.
Исключения
Вызывающая сторона прерывает запрос.
Пример
const { answers } = await client.systemOne({
state: "I was charged twice. Please help.",
questions: { billing: noul("Is this about billing?") },
});
console.log(answers.billing.noul);