import { default as OpenAI } from 'openai'; import { RequestOptions } from 'openai/core'; import { Stream } from 'openai/streaming'; import { APIResource } from '../../resource'; export declare class Completions extends APIResource { protected resources: Record; /** * Creates a model response for the given chat conversation. * * See https://help.aliyun.com/zh/dashscope/developer-reference/api-details */ create(body: ChatCompletionCreateParamsNonStreaming, options?: RequestOptions): Promise; create(body: ChatCompletionCreateParamsStreaming, options?: RequestOptions): Promise>; } export interface ChatCompletionCreateParamsNonStreaming extends OpenAI.ChatCompletionCreateParamsNonStreaming { model: ChatModel; top_k?: number | null; chat_id?: string | null; } export interface ChatCompletionCreateParamsStreaming extends OpenAI.ChatCompletionCreateParamsStreaming { model: ChatModel; top_k?: number | null; chat_id?: string | null; } export type ChatCompletionCreateParams = ChatCompletionCreateParamsNonStreaming | ChatCompletionCreateParamsStreaming; export type ChatModel = 'spark-1.5' | 'spark-2' | 'spark-3'; export declare namespace ChatCompletions { type ChatCompletionParameters = { header: { app_id: string; uid?: string; }; parameter: { chat: { domain: string; temperature?: number | null; max_tokens?: number | null; top_k?: number | null; chat_id?: string | null; }; }; payload: { message: { text: OpenAI.ChatCompletionMessageParam[]; }; functions?: { text: OpenAI.ChatCompletionCreateParams.Function[]; }; }; }; type ChatCompletionResponse = { header: { code: number; message: string; sid: string; status: number; }; payload: { choices: { status: number; seq: number; text: OpenAI.ChatCompletionMessage[]; }; usage: { text: { question_tokens: number; prompt_tokens: number; completion_tokens: number; total_tokens: number; }; }; }; }; }