From d31b5eb2dfe9445f58bc4fa59f3bfff28963f6db Mon Sep 17 00:00:00 2001 From: anadi45 Date: Thu, 19 Dec 2024 01:26:00 +0530 Subject: [PATCH 1/2] fix: include model_name in response_metadata --- libs/langchain-openai/src/chat_models.ts | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/libs/langchain-openai/src/chat_models.ts b/libs/langchain-openai/src/chat_models.ts index 4a0d438f0ba5..dc6fe0c9b83a 100644 --- a/libs/langchain-openai/src/chat_models.ts +++ b/libs/langchain-openai/src/chat_models.ts @@ -167,13 +167,15 @@ function openAIResponseToChatMessage( if (includeRawResponse !== undefined) { additional_kwargs.__raw_response = rawResponse; } - let response_metadata: Record | undefined; - if (rawResponse.system_fingerprint) { - response_metadata = { - usage: { ...rawResponse.usage }, - system_fingerprint: rawResponse.system_fingerprint, - }; - } + const response_metadata: Record | undefined = { + model_name: rawResponse.model, + ...AIMessage( + rawResponse.system_fingerprint && { + usage: { ...rawResponse.usage }, + system_fingerprint: rawResponse.system_fingerprint, + } + ), + }; if (message.audio) { additional_kwargs.audio = message.audio; @@ -1414,6 +1416,7 @@ export class ChatOpenAI< // Only include system fingerprint in the last chunk for now // to avoid concatenation issues generationInfo.system_fingerprint = data.system_fingerprint; + generationInfo.model_name = data.model; } if (this.logprobs) { generationInfo.logprobs = choice.logprobs; From 867a1b7c5d4f66df5b1ea1dbfa61acbd3291d506 Mon Sep 17 00:00:00 2001 From: anadi45 Date: Thu, 19 Dec 2024 01:53:40 +0530 Subject: [PATCH 2/2] fix: AIMessage typo --- libs/langchain-openai/src/chat_models.ts | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/libs/langchain-openai/src/chat_models.ts b/libs/langchain-openai/src/chat_models.ts index dc6fe0c9b83a..7fd7f7da8809 100644 --- a/libs/langchain-openai/src/chat_models.ts +++ b/libs/langchain-openai/src/chat_models.ts @@ -169,12 +169,12 @@ function openAIResponseToChatMessage( } const response_metadata: Record | undefined = { model_name: rawResponse.model, - ...AIMessage( - rawResponse.system_fingerprint && { - usage: { ...rawResponse.usage }, - system_fingerprint: rawResponse.system_fingerprint, - } - ), + ...(rawResponse.system_fingerprint + ? { + usage: { ...rawResponse.usage }, + system_fingerprint: rawResponse.system_fingerprint, + } + : {}), }; if (message.audio) {