Skip to content

Commit 3e2b680

Browse files
authored
fix(openai): declarative defaultOptions (#8633)
1 parent 23959ff commit 3e2b680

File tree

2 files changed

+301
-262
lines changed

2 files changed

+301
-262
lines changed

libs/langchain-openai/src/chat_models.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3333,7 +3333,7 @@ export class ChatOpenAI<
33333333
return [...super.lc_serializable_keys, "useResponsesApi"];
33343334
}
33353335

3336-
constructor(fields?: ChatOpenAIFields) {
3336+
constructor(protected fields?: ChatOpenAIFields) {
33373337
super(fields);
33383338
this.useResponsesApi = fields?.useResponsesApi ?? false;
33393339
this.responses = fields?.responses ?? new ChatOpenAIResponses(fields);
@@ -3404,7 +3404,8 @@ export class ChatOpenAI<
34043404
override withConfig(
34053405
config: Partial<CallOptions>
34063406
): Runnable<BaseLanguageModelInput, AIMessageChunk, CallOptions> {
3407-
this.defaultOptions = { ...this.defaultOptions, ...config };
3408-
return this;
3407+
const newModel = new ChatOpenAI<CallOptions>(this.fields);
3408+
newModel.defaultOptions = { ...this.defaultOptions, ...config };
3409+
return newModel;
34093410
}
34103411
}

0 commit comments

Comments
 (0)