UNPKG

taskflow-ai

Version:

TaskFlow AI - 智能PRD文档解析与任务管理助手,支持多模型AI协同、MCP编辑器集成,专为开发团队设计的CLI工具

64 lines (63 loc) 1.94 kB
import { ModelCallOptions, ModelRequestParams, ModelResponse } from '../../../types/model'; import { ModelType } from '../../../types/config'; /** * 模型适配器接口 * 为不同的大模型API提供统一的调用接口 */ export interface ModelAdapter { /** * 获取模型类型 */ getModelType(): ModelType; /** * 执行聊天请求 * @param params 请求参数 * @param options 调用选项 */ chat(params: ModelRequestParams, options?: ModelCallOptions): Promise<ModelResponse>; /** * 流式聊天请求 * @param params 请求参数 * @param onData 数据回调函数 * @param options 调用选项 */ chatStream(params: ModelRequestParams, onData: (content: string, done: boolean) => void, options?: ModelCallOptions): Promise<void>; /** * 验证API密钥 */ validateApiKey(): Promise<boolean>; } /** * 基础模型适配器抽象类 * 提供模型适配器的通用实现 */ export declare abstract class BaseModelAdapter implements ModelAdapter { protected modelType: ModelType; constructor(modelType: ModelType); /** * 获取模型类型 */ getModelType(): ModelType; /** * 执行聊天请求 * @param params 请求参数 * @param options 调用选项 */ abstract chat(params: ModelRequestParams, options?: ModelCallOptions): Promise<ModelResponse>; /** * 流式聊天请求 * @param params 请求参数 * @param onData 数据回调函数 * @param options 调用选项 */ abstract chatStream(params: ModelRequestParams, onData: (content: string, done: boolean) => void, options?: ModelCallOptions): Promise<void>; /** * 验证API密钥 */ abstract validateApiKey(): Promise<boolean>; /** * 处理HTTP请求错误 * @param error 错误对象 */ protected handleRequestError(error: unknown): never; }