/** * @zhin.js/ai - Base Provider * AI Provider 抽象基类 */ import type { AIProvider, ProviderConfig, ChatCompletionRequest, ChatCompletionResponse, ChatCompletionChunk } from '../types.js'; /** * Provider 基类 * 提供通用的 HTTP 请求和流式解析能力 */ export declare abstract class BaseProvider implements AIProvider { abstract name: string; abstract models: string[]; protected config: ProviderConfig; protected abortControllers: Map; constructor(config?: ProviderConfig); abstract chat(request: ChatCompletionRequest): Promise; abstract chatStream(request: ChatCompletionRequest): AsyncIterable; /** * 构建请求头(公共逻辑) */ private buildHeaders; /** * 发起请求并返回 Response(公共逻辑) */ protected request(url: string, options?: RequestInit & { json?: unknown; }, controller?: AbortController): Promise; /** * 发送 HTTP 请求并解析 JSON */ protected fetch(url: string, options?: RequestInit & { json?: unknown; }): Promise; /** * 读取响应正文(用于需自行解析 JSON / SSE 的场景) */ protected fetchText(url: string, options?: RequestInit & { json?: unknown; }): Promise; /** * 发送流式请求 */ protected fetchStream(url: string, options?: RequestInit & { json?: unknown; }): AsyncIterable; /** * 取消所有进行中的请求 */ cancelAll(): void; /** * 释放所有进行中的请求和资源 */ dispose(): void; /** * 健康检查 */ healthCheck(): Promise; /** * 列出可用模型(子类可覆盖) */ listModels(): Promise; } //# sourceMappingURL=base.d.ts.map