类:TypeSafeClient
TypeSafe AI API 的客户端。
构造函数
构造函数
new TypeSafeClient(config?): TypeSafeClient;
创建一个用于 TypeSafe AI API 的客户端。
显式指定的选项优先于环境变量,环境变量又优先于 SDK 默认值。 空的环境变量值或只含空白字符的环境变量值会被忽略。
参数
config?
TypeSafeClientConfig = {}
返回值
TypeSafeClient
抛出
缺少 API 密钥、配置无效,或运行环境不受支持。
属性
baseURL
readonly baseURL: string;
API 根地址,已移除末尾的斜杠。
defaultHeaders
readonly defaultHeaders: Readonly<Record<string, string>>;
每次请求都会额外发送的请求头。
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>>;
就文本或结构化状态回答具名问题。
类型参数
Q
Q extends Questions
参数
request
状态、问题,以及可选的模型覆盖项。
options?
RequestOptions = {}
单次调用的超时、重试、请求头与取消设置。
返回值
APIPromise<SystemOneResult<Q>>
按问题名称与 criteria 定型的答案,附带模型和 token 用量。
抛出
问题为空,或 score 的 criteria 不是至少包含两项的列表。
抛出
重试之后服务器仍返回非 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);