@@ -30,6 +30,7 @@ interface HandleGenerateResponseParams {
3030 response : Response ;
3131 isChat : boolean ;
3232 threadId : string | null ;
33+ rawResponse : boolean ;
3334}
3435
3536export class Request {
@@ -58,10 +59,11 @@ export class Request {
5859 }
5960
6061 if ( ! options . body ) {
61- return this . handleGenerateResponse ( {
62+ return this . handleRunResponse ( {
6263 response,
6364 isChat : false ,
6465 threadId : null ,
66+ rawResponse : options . body ?. rawResponse ?? false ,
6567 } ) ;
6668 }
6769
@@ -78,10 +80,11 @@ export class Request {
7880 return this . handleStreamResponse ( { response} ) as T ;
7981 }
8082
81- return this . handleGenerateResponse ( {
83+ return this . handleRunResponse ( {
8284 response,
83- isChat : options . body . chat ,
85+ isChat : options . body ? .chat ,
8486 threadId,
87+ rawResponse : options . body ?. rawResponse ?? false ,
8588 } ) ;
8689 }
8790
@@ -109,7 +112,7 @@ export class Request {
109112 return fetch ( url , {
110113 method : options . method ,
111114 headers,
112- body : JSON . stringify ( options . body )
115+ body : JSON . stringify ( options . body ) ,
113116 // signal: AbortSignal.timeout(this.config.timeout || 30000),
114117 } ) ;
115118 }
@@ -177,10 +180,11 @@ export class Request {
177180 return result ;
178181 }
179182
180- private async handleGenerateResponse ( {
183+ private async handleRunResponse ( {
181184 response,
182185 isChat,
183186 threadId,
187+ rawResponse,
184188 } : HandleGenerateResponseParams ) : Promise < any > {
185189 const generateResponse = await response . json ( ) ;
186190 const buildResponse = generateResponse . raw
@@ -190,16 +194,19 @@ export class Request {
190194 }
191195 : generateResponse ;
192196
193- // Chat.
194- if ( isChat && threadId ) {
195- return {
196- threadId,
197- ...buildResponse ,
197+ const result : any = {
198+ ...buildResponse ,
199+ } ;
200+
201+ result . threadId = threadId ;
202+
203+ if ( rawResponse ) {
204+ result . rawResponse = {
205+ headers : Object . fromEntries ( response . headers . entries ( ) ) ,
198206 } ;
199207 }
200208
201- // Generate.
202- return buildResponse ;
209+ return result ;
203210 }
204211
205212 async post < T > ( options : Omit < RequestOptions , 'method' > ) : Promise < T > {
0 commit comments