diff --git a/src/ts/process/request.ts b/src/ts/process/request.ts index 59858fac..91678e15 100644 --- a/src/ts/process/request.ts +++ b/src/ts/process/request.ts @@ -1194,8 +1194,7 @@ export async function requestChatDataMain(arg:requestDataArgument, model:'model' let fullRes = '' - for(const data of res.data){ - + const processDataItem = (data:any) => { if(data?.candidates?.[0]?.content?.parts?.[0]?.text){ fullRes += data.candidates[0].content.parts[0].text } @@ -1213,6 +1212,15 @@ export async function requestChatDataMain(arg:requestDataArgument, model:'model' } } + // traverse responded data if it contains multipart contents + if (typeof (res.data)[Symbol.iterator] === 'function') { + for(const data of res.data){ + processDataItem(data) + } + } else { + processDataItem(res.data) + } + return { type: 'success', result: fullRes