mirror of
https://github.com/enricoros/big-AGI.git
synced 2026-05-10 21:50:14 -07:00
Aix: potentially fix a beam issue
This commit is contained in:
@@ -56,6 +56,7 @@ export interface AixChatGenerateContent_DMessage extends Pick<DMessage, 'fragmen
|
||||
|
||||
type StreamMessageStatus = {
|
||||
outcome: 'success' | 'aborted' | 'errored',
|
||||
lastDMessage: AixChatGenerateContent_DMessage,
|
||||
errorMessage?: string
|
||||
};
|
||||
|
||||
@@ -81,6 +82,8 @@ export async function aixChatGenerateContent_DMessage_FromHistory(
|
||||
onStreamingUpdate: (update: AixChatGenerateContent_DMessage, isDone: boolean) => void,
|
||||
): Promise<StreamMessageStatus> {
|
||||
|
||||
let errorMessage: string | undefined;
|
||||
|
||||
let lastDMessage: AixChatGenerateContent_DMessage = {
|
||||
fragments: [],
|
||||
generator: {
|
||||
@@ -112,25 +115,22 @@ export async function aixChatGenerateContent_DMessage_FromHistory(
|
||||
// this can only be a large, user-visible error, such as LLM not found
|
||||
console.warn('[DEV] aixChatGenerateContentStreaming error:', { error });
|
||||
|
||||
lastDMessage.fragments.push(createErrorContentFragment(`Issue: ${error.message || (typeof error === 'string' ? error : 'Chat stopped.')}`));
|
||||
errorMessage = error.message || (typeof error === 'string' ? error : 'Chat stopped.');
|
||||
lastDMessage.fragments.push(createErrorContentFragment(`Issue: ${errorMessage}`));
|
||||
lastDMessage.generator = {
|
||||
...lastDMessage.generator,
|
||||
tokenStopReason: 'issue',
|
||||
};
|
||||
lastDMessage.pendingIncomplete = false;
|
||||
|
||||
return {
|
||||
outcome: 'errored',
|
||||
errorMessage: error.message,
|
||||
};
|
||||
}
|
||||
|
||||
// TODO: check something beyond this return status (as exceptions almost never happen here)
|
||||
// - e.g. the generator.aix may have error/token stop codes
|
||||
|
||||
return {
|
||||
outcome: 'success',
|
||||
errorMessage: undefined,
|
||||
outcome: errorMessage ? 'errored' : lastDMessage.generator?.tokenStopReason === 'client-abort' ? 'aborted' : 'success',
|
||||
lastDMessage: lastDMessage,
|
||||
errorMessage: errorMessage || undefined,
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user