diff --git a/packages/core/src/Embedding.ts b/packages/core/src/Embedding.ts
index 89d8fbc2751e87bbc2f93a6ae24cedd66b2e9666..d2d07c0980b256b40c3e78b2dbb4ce9edbd82f89 100644
--- a/packages/core/src/Embedding.ts
+++ b/packages/core/src/Embedding.ts
@@ -259,11 +259,13 @@ export class OpenAIEmbedding extends BaseEmbedding {
         });
     } else {
       this.apiKey = init?.apiKey ?? undefined;
-      this.session = getOpenAISession({
-        apiKey: this.apiKey,
-        maxRetries: this.maxRetries,
-        timeout: this.timeout,
-      });
+      this.session =
+        init?.session ??
+        getOpenAISession({
+          apiKey: this.apiKey,
+          maxRetries: this.maxRetries,
+          timeout: this.timeout,
+        });
     }
   }