This commit is contained in:
2025-12-21 23:46:19 +08:00
parent 02ef7b3476
commit b4033e146e

View File

@@ -50,10 +50,10 @@ export class BaseChat implements BaseChatInterface, Usage {
* 默认apiKey * 默认apiKey
*/ */
apiKey: string; apiKey: string;
prompt_tokens: number; prompt_tokens: number = 0;
total_tokens: number; total_tokens: number = 0;
completion_tokens: number; completion_tokens: number = 0;
responseText: string; responseText: string = '';
utils = AIUtils; utils = AIUtils;
constructor(options: BaseChatOptions) { constructor(options: BaseChatOptions) {
this.baseURL = options.baseURL; this.baseURL = options.baseURL;
@@ -105,9 +105,8 @@ export class BaseChat implements BaseChatInterface, Usage {
const res = await response.json() as ChatMessageComplete; const res = await response.json() as ChatMessageComplete;
this.prompt_tokens = res.usage?.prompt_tokens ?? 0; this.setChatUsage(res.usage);
this.total_tokens = res.usage?.total_tokens ?? 0;
this.completion_tokens = res.usage?.completion_tokens ?? 0;
this.responseText = res.choices[0]?.message?.content || ''; this.responseText = res.choices[0]?.message?.content || '';
return res; return res;
} }
@@ -191,6 +190,11 @@ export class BaseChat implements BaseChatInterface, Usage {
completion_tokens: this.completion_tokens, completion_tokens: this.completion_tokens,
}; };
} }
setChatUsage(usage: { prompt_tokens?: number; total_tokens?: number; completion_tokens?: number }) {
this.prompt_tokens = usage.prompt_tokens ?? this.prompt_tokens;
this.total_tokens = usage.total_tokens ?? this.total_tokens;
this.completion_tokens = usage.completion_tokens ?? this.completion_tokens;
}
getHeaders(headers?: Record<string, string>) { getHeaders(headers?: Record<string, string>) {
return { return {