@@ -24,6 +24,7 @@ import {
2424 Usage ,
2525 UserError ,
2626 withGenerationSpan ,
27+ getLogger ,
2728} from '@openai/agents' ;
2829import { isZodObject } from '@openai/agents/utils' ;
2930
@@ -337,11 +338,17 @@ export function getResponseFormat(
337338 */
338339export class AiSdkModel implements Model {
339340 #model: LanguageModelV1 ;
341+ #logger = getLogger ( 'openai-agents:extensions:ai-sdk' ) ;
340342 constructor ( model : LanguageModelV1 ) {
341343 this . #model = model ;
342344 }
343345
344346 async getResponse ( request : ModelRequest ) {
347+ if ( this . #logger. dontLogModelData ) {
348+ this . #logger. debug ( 'Request received' ) ;
349+ } else {
350+ this . #logger. debug ( 'Request:' , request ) ;
351+ }
345352 return withGenerationSpan ( async ( span ) => {
346353 try {
347354 span . spanData . model = this . #model. provider + ':' + this . #model. modelId ;
@@ -440,7 +447,7 @@ export class AiSdkModel implements Model {
440447 span . spanData . output = output ;
441448 }
442449
443- return {
450+ const response = {
444451 responseId : result . response ?. id ?? 'FAKE_ID' ,
445452 usage : new Usage ( {
446453 inputTokens : Number . isNaN ( result . usage ?. promptTokens )
@@ -459,7 +466,15 @@ export class AiSdkModel implements Model {
459466 } ) ,
460467 output,
461468 providerData : result ,
462- } ;
469+ } as const ;
470+
471+ if ( this . #logger. dontLogModelData ) {
472+ this . #logger. debug ( 'Response ready' ) ;
473+ } else {
474+ this . #logger. debug ( 'Response:' , response ) ;
475+ }
476+
477+ return response ;
463478 } catch ( error ) {
464479 if ( error instanceof Error ) {
465480 span . setError ( {
@@ -494,6 +509,11 @@ export class AiSdkModel implements Model {
494509 async * getStreamedResponse (
495510 request : ModelRequest ,
496511 ) : AsyncIterable < ResponseStreamEvent > {
512+ if ( this . #logger. dontLogModelData ) {
513+ this . #logger. debug ( 'Request received (streamed)' ) ;
514+ } else {
515+ this . #logger. debug ( 'Request (streamed):' , request ) ;
516+ }
497517 const span = request . tracing ? createGenerationSpan ( ) : undefined ;
498518 try {
499519 if ( span ) {
@@ -664,6 +684,12 @@ export class AiSdkModel implements Model {
664684 span . spanData . output = outputs ;
665685 }
666686
687+ if ( this . #logger. dontLogModelData ) {
688+ this . #logger. debug ( 'Response ready (streamed)' ) ;
689+ } else {
690+ this . #logger. debug ( 'Response (streamed):' , finalEvent . response ) ;
691+ }
692+
667693 yield finalEvent ;
668694 } catch ( error ) {
669695 if ( span ) {
0 commit comments