aisapi
Version:
A JavaScript/TypeScript API library for multiple AI providers
83 lines • 2.86 kB
TypeScript
import { BaseProvider } from './base';
import { TextGenerationParams, TextGenerationResponse, ImageGenerationParams, ImageGenerationResponse, ProviderOptions, ChatCompletionParams, AudioTranscriptionParams, AudioTranscriptionResponse, TextToSpeechParams, TextToSpeechResponse, EmbeddingParams, EmbeddingResponse, ImageEditParams, ImageVariationParams, ModelsResponse, ModelInfo } from '../types';
/**
* OpenAI专用配置选项
*/
export interface OpenAIOptions extends ProviderOptions {
model?: string;
organization?: string;
}
/**
* OpenAI服务接口实现
*/
export declare class OpenAIProvider extends BaseProvider {
readonly name = "OpenAI";
private model;
private organization?;
/**
* 创建一个新的OpenAI服务实例
*/
constructor(options?: OpenAIOptions);
/**
* 获取默认API地址
*/
protected getDefaultBaseUrl(): string;
/**
* 准备API请求头
*/
protected getHeaders(): Record<string, string>;
/**
* 生成文本(旧版API,保留是为了兼容)
*/
generateText(params: TextGenerationParams): Promise<TextGenerationResponse>;
/**
* 对话聊天接口(推荐使用这个)
*/
chatCompletion(params: ChatCompletionParams): Promise<TextGenerationResponse>;
/**
* 生成图片 - 调用DALL·E
*/
generateImage(params: ImageGenerationParams): Promise<ImageGenerationResponse>;
/**
* 图片编辑 - 上传并修改现有图片
*/
editImage(params: ImageEditParams): Promise<ImageGenerationResponse>;
/**
* 图片变体 - 基于上传图片生成相似但不同的版本
*/
createImageVariation(params: ImageVariationParams): Promise<ImageGenerationResponse>;
/**
* 语音识别 - 把录音转成文字
*/
transcribeAudio(params: AudioTranscriptionParams): Promise<AudioTranscriptionResponse>;
/**
* 语音合成 - 把文字转成自然语音
*/
textToSpeech(params: TextToSpeechParams): Promise<TextToSpeechResponse>;
/**
* 生成向量嵌入 - 把文本转为AI可理解的数值向量
*/
createEmbedding(params: EmbeddingParams): Promise<EmbeddingResponse>;
/**
* 测试API密钥是否有效
*/
validateApiKey(): Promise<boolean>;
/**
* 获取可用的模型列表
*/
listModels(): Promise<ModelsResponse>;
/**
* 获取特定模型的详细信息
*/
getModel(modelId: string): Promise<ModelInfo>;
/**
* 直接获取JSON格式的回复
*/
generateJSON(params: TextGenerationParams): Promise<any>;
/**
* 创建流式对话 - 即时获取生成中的回复
* 返回可监听的数据流
*/
createStreamingChatCompletion(params: ChatCompletionParams): Promise<ReadableStream<any>>;
}
//# sourceMappingURL=openai.d.ts.map