@langchain/openai 1.0.0-alpha.2 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/LICENSE +6 -6
  3. package/dist/azure/chat_models/common.cjs +130 -0
  4. package/dist/azure/chat_models/common.cjs.map +1 -0
  5. package/dist/azure/chat_models/common.d.cts +16 -0
  6. package/dist/azure/chat_models/common.d.cts.map +1 -0
  7. package/dist/azure/chat_models/common.d.ts +16 -0
  8. package/dist/azure/chat_models/common.d.ts.map +1 -0
  9. package/dist/azure/chat_models/common.js +124 -0
  10. package/dist/azure/chat_models/common.js.map +1 -0
  11. package/dist/azure/chat_models/completions.cjs +50 -0
  12. package/dist/azure/chat_models/completions.cjs.map +1 -0
  13. package/dist/azure/chat_models/completions.d.cts +29 -0
  14. package/dist/azure/chat_models/completions.d.cts.map +1 -0
  15. package/dist/azure/chat_models/completions.d.ts +29 -0
  16. package/dist/azure/chat_models/completions.d.ts.map +1 -0
  17. package/dist/azure/chat_models/completions.js +50 -0
  18. package/dist/azure/chat_models/completions.js.map +1 -0
  19. package/dist/azure/{chat_models.cjs → chat_models/index.cjs} +14 -214
  20. package/dist/azure/chat_models/index.cjs.map +1 -0
  21. package/dist/azure/{chat_models.d.ts → chat_models/index.d.cts} +6 -11
  22. package/dist/azure/chat_models/index.d.cts.map +1 -0
  23. package/dist/azure/{chat_models.d.cts → chat_models/index.d.ts} +6 -11
  24. package/dist/azure/chat_models/index.d.ts.map +1 -0
  25. package/dist/azure/{chat_models.js → chat_models/index.js} +6 -205
  26. package/dist/azure/chat_models/index.js.map +1 -0
  27. package/dist/azure/chat_models/responses.cjs +50 -0
  28. package/dist/azure/chat_models/responses.cjs.map +1 -0
  29. package/dist/azure/chat_models/responses.d.cts +29 -0
  30. package/dist/azure/chat_models/responses.d.cts.map +1 -0
  31. package/dist/azure/chat_models/responses.d.ts +29 -0
  32. package/dist/azure/chat_models/responses.d.ts.map +1 -0
  33. package/dist/azure/chat_models/responses.js +50 -0
  34. package/dist/azure/chat_models/responses.js.map +1 -0
  35. package/dist/chat_models/base.cjs +533 -0
  36. package/dist/chat_models/base.cjs.map +1 -0
  37. package/dist/chat_models/base.d.cts +272 -0
  38. package/dist/chat_models/base.d.cts.map +1 -0
  39. package/dist/chat_models/base.d.ts +272 -0
  40. package/dist/chat_models/base.d.ts.map +1 -0
  41. package/dist/chat_models/base.js +532 -0
  42. package/dist/chat_models/base.js.map +1 -0
  43. package/dist/chat_models/completions.cjs +328 -0
  44. package/dist/chat_models/completions.cjs.map +1 -0
  45. package/dist/chat_models/completions.d.cts +33 -0
  46. package/dist/chat_models/completions.d.cts.map +1 -0
  47. package/dist/chat_models/completions.d.ts +33 -0
  48. package/dist/chat_models/completions.d.ts.map +1 -0
  49. package/dist/chat_models/completions.js +327 -0
  50. package/dist/chat_models/completions.js.map +1 -0
  51. package/dist/chat_models/index.cjs +608 -0
  52. package/dist/chat_models/index.cjs.map +1 -0
  53. package/dist/chat_models/index.d.cts +593 -0
  54. package/dist/chat_models/index.d.cts.map +1 -0
  55. package/dist/chat_models/index.d.ts +593 -0
  56. package/dist/chat_models/index.d.ts.map +1 -0
  57. package/dist/chat_models/index.js +608 -0
  58. package/dist/chat_models/index.js.map +1 -0
  59. package/dist/chat_models/responses.cjs +550 -0
  60. package/dist/chat_models/responses.cjs.map +1 -0
  61. package/dist/chat_models/responses.d.cts +77 -0
  62. package/dist/chat_models/responses.d.cts.map +1 -0
  63. package/dist/chat_models/responses.d.ts +77 -0
  64. package/dist/chat_models/responses.d.ts.map +1 -0
  65. package/dist/chat_models/responses.js +549 -0
  66. package/dist/chat_models/responses.js.map +1 -0
  67. package/dist/index.cjs +14 -7
  68. package/dist/index.d.cts +9 -3
  69. package/dist/index.d.ts +9 -3
  70. package/dist/index.js +8 -3
  71. package/dist/langchain-core/dist/callbacks/base.d.ts +1 -0
  72. package/dist/langchain-core/dist/callbacks/manager.d.ts +2 -0
  73. package/dist/langchain-core/dist/language_models/base.d.ts +5 -0
  74. package/dist/langchain-core/dist/language_models/chat_models.d.cts +13 -0
  75. package/dist/langchain-core/dist/language_models/chat_models.d.cts.map +1 -0
  76. package/dist/langchain-core/dist/language_models/chat_models.d.ts +20 -0
  77. package/dist/langchain-core/dist/language_models/chat_models.d.ts.map +1 -0
  78. package/dist/langchain-core/dist/runnables/base.d.ts +7 -0
  79. package/dist/langchain-core/dist/runnables/graph.d.ts +1 -0
  80. package/dist/langchain-core/dist/runnables/types.d.ts +2 -0
  81. package/dist/langchain-core/dist/tools/types.d.ts +5 -0
  82. package/dist/langchain-core/dist/tracers/base.d.ts +2 -0
  83. package/dist/langchain-core/dist/tracers/event_stream.d.ts +1 -0
  84. package/dist/langchain-core/dist/tracers/log_stream.d.ts +3 -0
  85. package/dist/langchain-core/dist/utils/types/index.d.ts +1 -0
  86. package/dist/langchain-core/dist/utils/types/zod.d.ts +1 -0
  87. package/dist/llms.cjs +1 -1
  88. package/dist/llms.d.cts +1 -1
  89. package/dist/llms.js +1 -1
  90. package/dist/utils/message_inputs.cjs +1 -1
  91. package/dist/utils/message_inputs.js +1 -1
  92. package/dist/utils/misc.cjs +4 -1
  93. package/dist/utils/misc.cjs.map +1 -1
  94. package/dist/utils/misc.d.cts.map +1 -1
  95. package/dist/utils/misc.d.ts.map +1 -1
  96. package/dist/utils/misc.js +4 -1
  97. package/dist/utils/misc.js.map +1 -1
  98. package/package.json +11 -10
  99. package/dist/azure/chat_models.cjs.map +0 -1
  100. package/dist/azure/chat_models.d.cts.map +0 -1
  101. package/dist/azure/chat_models.d.ts.map +0 -1
  102. package/dist/azure/chat_models.js.map +0 -1
  103. package/dist/chat_models.cjs +0 -1965
  104. package/dist/chat_models.cjs.map +0 -1
  105. package/dist/chat_models.d.cts +0 -931
  106. package/dist/chat_models.d.cts.map +0 -1
  107. package/dist/chat_models.d.ts +0 -931
  108. package/dist/chat_models.d.ts.map +0 -1
  109. package/dist/chat_models.js +0 -1961
  110. package/dist/chat_models.js.map +0 -1
package/CHANGELOG.md ADDED
@@ -0,0 +1,43 @@
1
+ # @langchain/openai
2
+
3
+ ## 1.0.0
4
+
5
+ This release updates the package for compatibility with LangChain v1.0. See the v1.0 [release notes](https://docs.langchain.com/oss/javascript/releases/langchain-v1) for details on what's new.
6
+
7
+ ## 0.6.16
8
+
9
+ ### Patch Changes
10
+
11
+ - b8ffc1e: fix(openai): Remove raw OpenAI fields from token usage
12
+
13
+ ## 0.6.15
14
+
15
+ ### Patch Changes
16
+
17
+ - e63c7cc: fix(openai): Convert OpenAI responses API usage to tracing format
18
+
19
+ ## 0.6.14
20
+
21
+ ### Patch Changes
22
+
23
+ - d38e9d6: fix(openai): fix streaming in openai
24
+
25
+ ## 0.6.12
26
+
27
+ ### Patch Changes
28
+
29
+ - 41bd944: support base64 embeddings format
30
+ - 707a768: handle undefined disableStreaming to restore streaming functionality
31
+
32
+ ## 0.6.11
33
+
34
+ ### Patch Changes
35
+
36
+ - 65459e3: use proper casing for reasoning effort param
37
+
38
+ ## 0.6.10
39
+
40
+ ### Patch Changes
41
+
42
+ - 4a3f5af: add verbosity to json schema response format (#8754)
43
+ - 424360b: re-add reasoning_effort param
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
- The MIT License
1
+ MIT License
2
2
 
3
- Copyright (c) Harrison Chase
3
+ Copyright (c) LangChain, Inc.
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -9,13 +9,13 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
9
  copies of the Software, and to permit persons to whom the Software is
10
10
  furnished to do so, subject to the following conditions:
11
11
 
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
14
 
15
15
  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
16
  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
17
  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
18
  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
19
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,130 @@
1
+ const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
2
+ const require_azure = require('../../utils/azure.cjs');
3
+ const openai = require_rolldown_runtime.__toESM(require("openai"));
4
+ const __langchain_core_utils_env = require_rolldown_runtime.__toESM(require("@langchain/core/utils/env"));
5
+
6
+ //#region src/azure/chat_models/common.ts
7
+ const AZURE_ALIASES = {
8
+ openAIApiKey: "openai_api_key",
9
+ openAIApiVersion: "openai_api_version",
10
+ openAIBasePath: "openai_api_base",
11
+ deploymentName: "deployment_name",
12
+ azureOpenAIEndpoint: "azure_endpoint",
13
+ azureOpenAIApiVersion: "openai_api_version",
14
+ azureOpenAIBasePath: "openai_api_base",
15
+ azureOpenAIApiDeploymentName: "deployment_name"
16
+ };
17
+ const AZURE_SECRETS = { azureOpenAIApiKey: "AZURE_OPENAI_API_KEY" };
18
+ const AZURE_SERIALIZABLE_KEYS = [
19
+ "azureOpenAIApiKey",
20
+ "azureOpenAIApiVersion",
21
+ "azureOpenAIBasePath",
22
+ "azureOpenAIEndpoint",
23
+ "azureOpenAIApiInstanceName",
24
+ "azureOpenAIApiDeploymentName",
25
+ "deploymentName",
26
+ "openAIApiKey",
27
+ "openAIApiVersion"
28
+ ];
29
+ function _constructAzureFields(fields) {
30
+ this.azureOpenAIApiKey = fields?.azureOpenAIApiKey ?? fields?.openAIApiKey ?? fields?.apiKey ?? (0, __langchain_core_utils_env.getEnvironmentVariable)("AZURE_OPENAI_API_KEY");
31
+ this.azureOpenAIApiInstanceName = fields?.azureOpenAIApiInstanceName ?? (0, __langchain_core_utils_env.getEnvironmentVariable)("AZURE_OPENAI_API_INSTANCE_NAME");
32
+ this.azureOpenAIApiDeploymentName = fields?.azureOpenAIApiDeploymentName ?? fields?.deploymentName ?? (0, __langchain_core_utils_env.getEnvironmentVariable)("AZURE_OPENAI_API_DEPLOYMENT_NAME");
33
+ this.azureOpenAIApiVersion = fields?.azureOpenAIApiVersion ?? fields?.openAIApiVersion ?? (0, __langchain_core_utils_env.getEnvironmentVariable)("AZURE_OPENAI_API_VERSION");
34
+ this.azureOpenAIBasePath = fields?.azureOpenAIBasePath ?? (0, __langchain_core_utils_env.getEnvironmentVariable)("AZURE_OPENAI_BASE_PATH");
35
+ this.azureOpenAIEndpoint = fields?.azureOpenAIEndpoint ?? (0, __langchain_core_utils_env.getEnvironmentVariable)("AZURE_OPENAI_ENDPOINT");
36
+ this.azureADTokenProvider = fields?.azureADTokenProvider;
37
+ if (!this.azureOpenAIApiKey && !this.apiKey && !this.azureADTokenProvider) throw new Error("Azure OpenAI API key or Token Provider not found");
38
+ }
39
+ function _getAzureClientOptions(options) {
40
+ if (!this.client) {
41
+ const openAIEndpointConfig = {
42
+ azureOpenAIApiDeploymentName: this.azureOpenAIApiDeploymentName,
43
+ azureOpenAIApiInstanceName: this.azureOpenAIApiInstanceName,
44
+ azureOpenAIApiKey: this.azureOpenAIApiKey,
45
+ azureOpenAIBasePath: this.azureOpenAIBasePath,
46
+ azureADTokenProvider: this.azureADTokenProvider,
47
+ baseURL: this.clientConfig.baseURL,
48
+ azureOpenAIEndpoint: this.azureOpenAIEndpoint
49
+ };
50
+ const endpoint = require_azure.getEndpoint(openAIEndpointConfig);
51
+ const params = {
52
+ ...this.clientConfig,
53
+ baseURL: endpoint,
54
+ timeout: this.timeout,
55
+ maxRetries: 0
56
+ };
57
+ if (!this.azureADTokenProvider) params.apiKey = openAIEndpointConfig.azureOpenAIApiKey;
58
+ if (!params.baseURL) delete params.baseURL;
59
+ let env = (0, __langchain_core_utils_env.getEnv)();
60
+ if (env === "node" || env === "deno") env = `(${env}/${process.version}; ${process.platform}; ${process.arch})`;
61
+ const defaultHeaders = require_azure.normalizeHeaders(params.defaultHeaders);
62
+ params.defaultHeaders = {
63
+ ...params.defaultHeaders,
64
+ "User-Agent": defaultHeaders["User-Agent"] ? `langchainjs-azure-openai/2.0.0 (${env})${defaultHeaders["User-Agent"]}` : `langchainjs-azure-openai/2.0.0 (${env})`
65
+ };
66
+ this.client = new openai.AzureOpenAI({
67
+ apiVersion: this.azureOpenAIApiVersion,
68
+ azureADTokenProvider: this.azureADTokenProvider,
69
+ deployment: this.azureOpenAIApiDeploymentName,
70
+ ...params
71
+ });
72
+ }
73
+ const requestOptions = {
74
+ ...this.clientConfig,
75
+ ...options
76
+ };
77
+ if (this.azureOpenAIApiKey) {
78
+ requestOptions.headers = {
79
+ "api-key": this.azureOpenAIApiKey,
80
+ ...requestOptions.headers
81
+ };
82
+ requestOptions.query = {
83
+ "api-version": this.azureOpenAIApiVersion,
84
+ ...requestOptions.query
85
+ };
86
+ }
87
+ return requestOptions;
88
+ }
89
+ function _serializeAzureChat(input) {
90
+ const json = input;
91
+ function isRecord(obj) {
92
+ return typeof obj === "object" && obj != null;
93
+ }
94
+ if (isRecord(json) && isRecord(json.kwargs)) {
95
+ delete json.kwargs.azure_openai_base_path;
96
+ delete json.kwargs.azure_openai_api_deployment_name;
97
+ delete json.kwargs.azure_openai_api_key;
98
+ delete json.kwargs.azure_openai_api_version;
99
+ delete json.kwargs.azure_open_ai_base_path;
100
+ if (!json.kwargs.azure_endpoint && this.azureOpenAIEndpoint) json.kwargs.azure_endpoint = this.azureOpenAIEndpoint;
101
+ if (!json.kwargs.azure_endpoint && this.azureOpenAIBasePath) {
102
+ const parts = this.azureOpenAIBasePath.split("/openai/deployments/");
103
+ if (parts.length === 2 && parts[0].startsWith("http")) {
104
+ const [endpoint] = parts;
105
+ json.kwargs.azure_endpoint = endpoint;
106
+ }
107
+ }
108
+ if (!json.kwargs.azure_endpoint && this.azureOpenAIApiInstanceName) json.kwargs.azure_endpoint = `https://${this.azureOpenAIApiInstanceName}.openai.azure.com/`;
109
+ if (!json.kwargs.deployment_name && this.azureOpenAIApiDeploymentName) json.kwargs.deployment_name = this.azureOpenAIApiDeploymentName;
110
+ if (!json.kwargs.deployment_name && this.azureOpenAIBasePath) {
111
+ const parts = this.azureOpenAIBasePath.split("/openai/deployments/");
112
+ if (parts.length === 2) {
113
+ const [, deployment] = parts;
114
+ json.kwargs.deployment_name = deployment;
115
+ }
116
+ }
117
+ if (json.kwargs.azure_endpoint && json.kwargs.deployment_name && json.kwargs.openai_api_base) delete json.kwargs.openai_api_base;
118
+ if (json.kwargs.azure_openai_api_instance_name && json.kwargs.azure_endpoint) delete json.kwargs.azure_openai_api_instance_name;
119
+ }
120
+ return json;
121
+ }
122
+
123
+ //#endregion
124
+ exports.AZURE_ALIASES = AZURE_ALIASES;
125
+ exports.AZURE_SECRETS = AZURE_SECRETS;
126
+ exports.AZURE_SERIALIZABLE_KEYS = AZURE_SERIALIZABLE_KEYS;
127
+ exports._constructAzureFields = _constructAzureFields;
128
+ exports._getAzureClientOptions = _getAzureClientOptions;
129
+ exports._serializeAzureChat = _serializeAzureChat;
130
+ //# sourceMappingURL=common.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.cjs","names":["fields?: AzureChatOpenAIFields","options: OpenAICoreRequestOptions | undefined","openAIEndpointConfig: OpenAIEndpointConfig","getEndpoint","normalizeHeaders","AzureOpenAIClient","input: Serialized","obj: unknown"],"sources":["../../../src/azure/chat_models/common.ts"],"sourcesContent":["import { AzureOpenAI as AzureOpenAIClient } from \"openai\";\nimport { getEnv, getEnvironmentVariable } from \"@langchain/core/utils/env\";\nimport type { Serialized } from \"@langchain/core/load/serializable\";\nimport { ChatOpenAICallOptions } from \"../../chat_models/index.js\";\nimport {\n OpenAIEndpointConfig,\n getEndpoint,\n normalizeHeaders,\n} from \"../../utils/azure.js\";\nimport { AzureOpenAIChatInput, OpenAICoreRequestOptions } from \"../../types.js\";\nimport {\n BaseChatOpenAI,\n BaseChatOpenAIFields,\n} from \"../../chat_models/base.js\";\n\nexport const AZURE_ALIASES = {\n openAIApiKey: \"openai_api_key\",\n openAIApiVersion: \"openai_api_version\",\n openAIBasePath: \"openai_api_base\",\n deploymentName: \"deployment_name\",\n azureOpenAIEndpoint: \"azure_endpoint\",\n azureOpenAIApiVersion: \"openai_api_version\",\n azureOpenAIBasePath: \"openai_api_base\",\n azureOpenAIApiDeploymentName: \"deployment_name\",\n};\n\nexport const AZURE_SECRETS = {\n azureOpenAIApiKey: \"AZURE_OPENAI_API_KEY\",\n};\n\nexport const AZURE_SERIALIZABLE_KEYS = [\n \"azureOpenAIApiKey\",\n \"azureOpenAIApiVersion\",\n \"azureOpenAIBasePath\",\n \"azureOpenAIEndpoint\",\n \"azureOpenAIApiInstanceName\",\n \"azureOpenAIApiDeploymentName\",\n \"deploymentName\",\n \"openAIApiKey\",\n \"openAIApiVersion\",\n];\n\nexport interface AzureChatOpenAIFields\n extends BaseChatOpenAIFields,\n Partial<AzureOpenAIChatInput> {\n /**\n * Whether to use the responses API for all requests. If `false` the responses API will be used\n * only when required in order to fulfill the request.\n */\n useResponsesApi?: boolean;\n}\n\nexport function _constructAzureFields(\n this: Partial<AzureOpenAIChatInput>,\n fields?: AzureChatOpenAIFields\n) {\n this.azureOpenAIApiKey =\n fields?.azureOpenAIApiKey ??\n fields?.openAIApiKey ??\n fields?.apiKey ??\n getEnvironmentVariable(\"AZURE_OPENAI_API_KEY\");\n\n this.azureOpenAIApiInstanceName =\n fields?.azureOpenAIApiInstanceName ??\n getEnvironmentVariable(\"AZURE_OPENAI_API_INSTANCE_NAME\");\n\n this.azureOpenAIApiDeploymentName =\n fields?.azureOpenAIApiDeploymentName ??\n fields?.deploymentName ??\n getEnvironmentVariable(\"AZURE_OPENAI_API_DEPLOYMENT_NAME\");\n\n this.azureOpenAIApiVersion =\n fields?.azureOpenAIApiVersion ??\n fields?.openAIApiVersion ??\n getEnvironmentVariable(\"AZURE_OPENAI_API_VERSION\");\n\n this.azureOpenAIBasePath =\n fields?.azureOpenAIBasePath ??\n getEnvironmentVariable(\"AZURE_OPENAI_BASE_PATH\");\n\n this.azureOpenAIEndpoint =\n fields?.azureOpenAIEndpoint ??\n getEnvironmentVariable(\"AZURE_OPENAI_ENDPOINT\");\n\n this.azureADTokenProvider = fields?.azureADTokenProvider;\n\n if (!this.azureOpenAIApiKey && !this.apiKey && !this.azureADTokenProvider) {\n throw new Error(\"Azure OpenAI API key or Token Provider not found\");\n }\n}\n\nexport function _getAzureClientOptions(\n this: BaseChatOpenAI<ChatOpenAICallOptions> & Partial<AzureOpenAIChatInput>,\n options: OpenAICoreRequestOptions | undefined\n): OpenAICoreRequestOptions {\n if (!this.client) {\n const openAIEndpointConfig: OpenAIEndpointConfig = {\n azureOpenAIApiDeploymentName: this.azureOpenAIApiDeploymentName,\n azureOpenAIApiInstanceName: this.azureOpenAIApiInstanceName,\n azureOpenAIApiKey: this.azureOpenAIApiKey,\n azureOpenAIBasePath: this.azureOpenAIBasePath,\n azureADTokenProvider: this.azureADTokenProvider,\n baseURL: this.clientConfig.baseURL,\n azureOpenAIEndpoint: this.azureOpenAIEndpoint,\n };\n\n const endpoint = getEndpoint(openAIEndpointConfig);\n\n const params = {\n ...this.clientConfig,\n baseURL: endpoint,\n timeout: this.timeout,\n maxRetries: 0,\n };\n\n if (!this.azureADTokenProvider) {\n params.apiKey = openAIEndpointConfig.azureOpenAIApiKey;\n }\n\n if (!params.baseURL) {\n delete params.baseURL;\n }\n\n let env = getEnv();\n if (env === \"node\" || env === \"deno\") {\n env = `(${env}/${process.version}; ${process.platform}; ${process.arch})`;\n }\n\n const defaultHeaders = normalizeHeaders(params.defaultHeaders);\n params.defaultHeaders = {\n ...params.defaultHeaders,\n \"User-Agent\": defaultHeaders[\"User-Agent\"]\n ? `langchainjs-azure-openai/2.0.0 (${env})${defaultHeaders[\"User-Agent\"]}`\n : `langchainjs-azure-openai/2.0.0 (${env})`,\n };\n\n this.client = new AzureOpenAIClient({\n apiVersion: this.azureOpenAIApiVersion,\n azureADTokenProvider: this.azureADTokenProvider,\n deployment: this.azureOpenAIApiDeploymentName,\n ...params,\n });\n }\n const requestOptions = {\n ...this.clientConfig,\n ...options,\n } as OpenAICoreRequestOptions;\n if (this.azureOpenAIApiKey) {\n requestOptions.headers = {\n \"api-key\": this.azureOpenAIApiKey,\n ...requestOptions.headers,\n };\n requestOptions.query = {\n \"api-version\": this.azureOpenAIApiVersion,\n ...requestOptions.query,\n };\n }\n return requestOptions;\n}\n\nexport function _serializeAzureChat(\n this: BaseChatOpenAI<ChatOpenAICallOptions> & Partial<AzureOpenAIChatInput>,\n input: Serialized\n) {\n const json = input;\n\n function isRecord(obj: unknown): obj is Record<string, unknown> {\n return typeof obj === \"object\" && obj != null;\n }\n\n if (isRecord(json) && isRecord(json.kwargs)) {\n delete json.kwargs.azure_openai_base_path;\n delete json.kwargs.azure_openai_api_deployment_name;\n delete json.kwargs.azure_openai_api_key;\n delete json.kwargs.azure_openai_api_version;\n delete json.kwargs.azure_open_ai_base_path;\n\n if (!json.kwargs.azure_endpoint && this.azureOpenAIEndpoint) {\n json.kwargs.azure_endpoint = this.azureOpenAIEndpoint;\n }\n if (!json.kwargs.azure_endpoint && this.azureOpenAIBasePath) {\n const parts = this.azureOpenAIBasePath.split(\"/openai/deployments/\");\n if (parts.length === 2 && parts[0].startsWith(\"http\")) {\n const [endpoint] = parts;\n json.kwargs.azure_endpoint = endpoint;\n }\n }\n if (!json.kwargs.azure_endpoint && this.azureOpenAIApiInstanceName) {\n json.kwargs.azure_endpoint = `https://${this.azureOpenAIApiInstanceName}.openai.azure.com/`;\n }\n if (!json.kwargs.deployment_name && this.azureOpenAIApiDeploymentName) {\n json.kwargs.deployment_name = this.azureOpenAIApiDeploymentName;\n }\n if (!json.kwargs.deployment_name && this.azureOpenAIBasePath) {\n const parts = this.azureOpenAIBasePath.split(\"/openai/deployments/\");\n if (parts.length === 2) {\n const [, deployment] = parts;\n json.kwargs.deployment_name = deployment;\n }\n }\n\n if (\n json.kwargs.azure_endpoint &&\n json.kwargs.deployment_name &&\n json.kwargs.openai_api_base\n ) {\n delete json.kwargs.openai_api_base;\n }\n if (\n json.kwargs.azure_openai_api_instance_name &&\n json.kwargs.azure_endpoint\n ) {\n delete json.kwargs.azure_openai_api_instance_name;\n }\n }\n\n return json;\n}\n"],"mappings":";;;;;;AAeA,MAAa,gBAAgB;CAC3B,cAAc;CACd,kBAAkB;CAClB,gBAAgB;CAChB,gBAAgB;CAChB,qBAAqB;CACrB,uBAAuB;CACvB,qBAAqB;CACrB,8BAA8B;AAC/B;AAED,MAAa,gBAAgB,EAC3B,mBAAmB,uBACpB;AAED,MAAa,0BAA0B;CACrC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACD;AAYD,SAAgB,sBAEdA,QACA;CACA,KAAK,oBACH,QAAQ,qBACR,QAAQ,gBACR,QAAQ,iEACe,uBAAuB;CAEhD,KAAK,6BACH,QAAQ,qFACe,iCAAiC;CAE1D,KAAK,+BACH,QAAQ,gCACR,QAAQ,yEACe,mCAAmC;CAE5D,KAAK,wBACH,QAAQ,yBACR,QAAQ,2EACe,2BAA2B;CAEpD,KAAK,sBACH,QAAQ,8EACe,yBAAyB;CAElD,KAAK,sBACH,QAAQ,8EACe,wBAAwB;CAEjD,KAAK,uBAAuB,QAAQ;AAEpC,KAAI,CAAC,KAAK,qBAAqB,CAAC,KAAK,UAAU,CAAC,KAAK,qBACnD,OAAM,IAAI,MAAM;AAEnB;AAED,SAAgB,uBAEdC,SAC0B;AAC1B,KAAI,CAAC,KAAK,QAAQ;EAChB,MAAMC,uBAA6C;GACjD,8BAA8B,KAAK;GACnC,4BAA4B,KAAK;GACjC,mBAAmB,KAAK;GACxB,qBAAqB,KAAK;GAC1B,sBAAsB,KAAK;GAC3B,SAAS,KAAK,aAAa;GAC3B,qBAAqB,KAAK;EAC3B;EAED,MAAM,WAAWC,0BAAY,qBAAqB;EAElD,MAAM,SAAS;GACb,GAAG,KAAK;GACR,SAAS;GACT,SAAS,KAAK;GACd,YAAY;EACb;AAED,MAAI,CAAC,KAAK,sBACR,OAAO,SAAS,qBAAqB;AAGvC,MAAI,CAAC,OAAO,SACV,OAAO,OAAO;EAGhB,IAAI,8CAAc;AAClB,MAAI,QAAQ,UAAU,QAAQ,QAC5B,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,QAAQ,EAAE,EAAE,QAAQ,SAAS,EAAE,EAAE,QAAQ,KAAK,CAAC,CAAC;EAG3E,MAAM,iBAAiBC,+BAAiB,OAAO,eAAe;EAC9D,OAAO,iBAAiB;GACtB,GAAG,OAAO;GACV,cAAc,eAAe,gBACzB,CAAC,gCAAgC,EAAE,IAAI,CAAC,EAAE,eAAe,eAAe,GACxE,CAAC,gCAAgC,EAAE,IAAI,CAAC,CAAC;EAC9C;EAED,KAAK,SAAS,IAAIC,mBAAkB;GAClC,YAAY,KAAK;GACjB,sBAAsB,KAAK;GAC3B,YAAY,KAAK;GACjB,GAAG;EACJ;CACF;CACD,MAAM,iBAAiB;EACrB,GAAG,KAAK;EACR,GAAG;CACJ;AACD,KAAI,KAAK,mBAAmB;EAC1B,eAAe,UAAU;GACvB,WAAW,KAAK;GAChB,GAAG,eAAe;EACnB;EACD,eAAe,QAAQ;GACrB,eAAe,KAAK;GACpB,GAAG,eAAe;EACnB;CACF;AACD,QAAO;AACR;AAED,SAAgB,oBAEdC,OACA;CACA,MAAM,OAAO;CAEb,SAAS,SAASC,KAA8C;AAC9D,SAAO,OAAO,QAAQ,YAAY,OAAO;CAC1C;AAED,KAAI,SAAS,KAAK,IAAI,SAAS,KAAK,OAAO,EAAE;EAC3C,OAAO,KAAK,OAAO;EACnB,OAAO,KAAK,OAAO;EACnB,OAAO,KAAK,OAAO;EACnB,OAAO,KAAK,OAAO;EACnB,OAAO,KAAK,OAAO;AAEnB,MAAI,CAAC,KAAK,OAAO,kBAAkB,KAAK,qBACtC,KAAK,OAAO,iBAAiB,KAAK;AAEpC,MAAI,CAAC,KAAK,OAAO,kBAAkB,KAAK,qBAAqB;GAC3D,MAAM,QAAQ,KAAK,oBAAoB,MAAM,uBAAuB;AACpE,OAAI,MAAM,WAAW,KAAK,MAAM,GAAG,WAAW,OAAO,EAAE;IACrD,MAAM,CAAC,SAAS,GAAG;IACnB,KAAK,OAAO,iBAAiB;GAC9B;EACF;AACD,MAAI,CAAC,KAAK,OAAO,kBAAkB,KAAK,4BACtC,KAAK,OAAO,iBAAiB,CAAC,QAAQ,EAAE,KAAK,2BAA2B,kBAAkB,CAAC;AAE7F,MAAI,CAAC,KAAK,OAAO,mBAAmB,KAAK,8BACvC,KAAK,OAAO,kBAAkB,KAAK;AAErC,MAAI,CAAC,KAAK,OAAO,mBAAmB,KAAK,qBAAqB;GAC5D,MAAM,QAAQ,KAAK,oBAAoB,MAAM,uBAAuB;AACpE,OAAI,MAAM,WAAW,GAAG;IACtB,MAAM,GAAG,WAAW,GAAG;IACvB,KAAK,OAAO,kBAAkB;GAC/B;EACF;AAED,MACE,KAAK,OAAO,kBACZ,KAAK,OAAO,mBACZ,KAAK,OAAO,iBAEZ,OAAO,KAAK,OAAO;AAErB,MACE,KAAK,OAAO,kCACZ,KAAK,OAAO,gBAEZ,OAAO,KAAK,OAAO;CAEtB;AAED,QAAO;AACR"}
@@ -0,0 +1,16 @@
1
+ import { AzureOpenAIChatInput } from "../../types.cjs";
2
+ import { BaseChatOpenAIFields } from "../../chat_models/base.cjs";
3
+ import { Serialized } from "@langchain/core/load/serializable";
4
+
5
+ //#region src/azure/chat_models/common.d.ts
6
+
7
+ interface AzureChatOpenAIFields extends BaseChatOpenAIFields, Partial<AzureOpenAIChatInput> {
8
+ /**
9
+ * Whether to use the responses API for all requests. If `false` the responses API will be used
10
+ * only when required in order to fulfill the request.
11
+ */
12
+ useResponsesApi?: boolean;
13
+ }
14
+ //#endregion
15
+ export { AzureChatOpenAIFields };
16
+ //# sourceMappingURL=common.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.cts","names":["Serialized","ChatOpenAICallOptions","AzureOpenAIChatInput","OpenAICoreRequestOptions","BaseChatOpenAI","BaseChatOpenAIFields","AZURE_ALIASES","AZURE_SECRETS","AZURE_SERIALIZABLE_KEYS","AzureChatOpenAIFields","Partial","_constructAzureFields","_getAzureClientOptions","_serializeAzureChat"],"sources":["../../../src/azure/chat_models/common.d.ts"],"sourcesContent":["import type { Serialized } from \"@langchain/core/load/serializable\";\nimport { ChatOpenAICallOptions } from \"../../chat_models/index.js\";\nimport { AzureOpenAIChatInput, OpenAICoreRequestOptions } from \"../../types.js\";\nimport { BaseChatOpenAI, BaseChatOpenAIFields } from \"../../chat_models/base.js\";\nexport declare const AZURE_ALIASES: {\n openAIApiKey: string;\n openAIApiVersion: string;\n openAIBasePath: string;\n deploymentName: string;\n azureOpenAIEndpoint: string;\n azureOpenAIApiVersion: string;\n azureOpenAIBasePath: string;\n azureOpenAIApiDeploymentName: string;\n};\nexport declare const AZURE_SECRETS: {\n azureOpenAIApiKey: string;\n};\nexport declare const AZURE_SERIALIZABLE_KEYS: string[];\nexport interface AzureChatOpenAIFields extends BaseChatOpenAIFields, Partial<AzureOpenAIChatInput> {\n /**\n * Whether to use the responses API for all requests. If `false` the responses API will be used\n * only when required in order to fulfill the request.\n */\n useResponsesApi?: boolean;\n}\nexport declare function _constructAzureFields(this: Partial<AzureOpenAIChatInput>, fields?: AzureChatOpenAIFields): void;\nexport declare function _getAzureClientOptions(this: BaseChatOpenAI<ChatOpenAICallOptions> & Partial<AzureOpenAIChatInput>, options: OpenAICoreRequestOptions | undefined): OpenAICoreRequestOptions;\nexport declare function _serializeAzureChat(this: BaseChatOpenAI<ChatOpenAICallOptions> & Partial<AzureOpenAIChatInput>, input: Serialized): Serialized;\n"],"mappings":";;;;;;UAkBiBS,qBAAAA,SAA8BJ,sBAAsBK,QAAQR"}
@@ -0,0 +1,16 @@
1
+ import { AzureOpenAIChatInput } from "../../types.js";
2
+ import { BaseChatOpenAIFields } from "../../chat_models/base.js";
3
+ import { Serialized } from "@langchain/core/load/serializable";
4
+
5
+ //#region src/azure/chat_models/common.d.ts
6
+
7
+ interface AzureChatOpenAIFields extends BaseChatOpenAIFields, Partial<AzureOpenAIChatInput> {
8
+ /**
9
+ * Whether to use the responses API for all requests. If `false` the responses API will be used
10
+ * only when required in order to fulfill the request.
11
+ */
12
+ useResponsesApi?: boolean;
13
+ }
14
+ //#endregion
15
+ export { AzureChatOpenAIFields };
16
+ //# sourceMappingURL=common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","names":["Serialized","ChatOpenAICallOptions","AzureOpenAIChatInput","OpenAICoreRequestOptions","BaseChatOpenAI","BaseChatOpenAIFields","AZURE_ALIASES","AZURE_SECRETS","AZURE_SERIALIZABLE_KEYS","AzureChatOpenAIFields","Partial","_constructAzureFields","_getAzureClientOptions","_serializeAzureChat"],"sources":["../../../src/azure/chat_models/common.d.ts"],"sourcesContent":["import type { Serialized } from \"@langchain/core/load/serializable\";\nimport { ChatOpenAICallOptions } from \"../../chat_models/index.js\";\nimport { AzureOpenAIChatInput, OpenAICoreRequestOptions } from \"../../types.js\";\nimport { BaseChatOpenAI, BaseChatOpenAIFields } from \"../../chat_models/base.js\";\nexport declare const AZURE_ALIASES: {\n openAIApiKey: string;\n openAIApiVersion: string;\n openAIBasePath: string;\n deploymentName: string;\n azureOpenAIEndpoint: string;\n azureOpenAIApiVersion: string;\n azureOpenAIBasePath: string;\n azureOpenAIApiDeploymentName: string;\n};\nexport declare const AZURE_SECRETS: {\n azureOpenAIApiKey: string;\n};\nexport declare const AZURE_SERIALIZABLE_KEYS: string[];\nexport interface AzureChatOpenAIFields extends BaseChatOpenAIFields, Partial<AzureOpenAIChatInput> {\n /**\n * Whether to use the responses API for all requests. If `false` the responses API will be used\n * only when required in order to fulfill the request.\n */\n useResponsesApi?: boolean;\n}\nexport declare function _constructAzureFields(this: Partial<AzureOpenAIChatInput>, fields?: AzureChatOpenAIFields): void;\nexport declare function _getAzureClientOptions(this: BaseChatOpenAI<ChatOpenAICallOptions> & Partial<AzureOpenAIChatInput>, options: OpenAICoreRequestOptions | undefined): OpenAICoreRequestOptions;\nexport declare function _serializeAzureChat(this: BaseChatOpenAI<ChatOpenAICallOptions> & Partial<AzureOpenAIChatInput>, input: Serialized): Serialized;\n"],"mappings":";;;;;;UAkBiBS,qBAAAA,SAA8BJ,sBAAsBK,QAAQR"}
@@ -0,0 +1,124 @@
1
+ import { getEndpoint, normalizeHeaders } from "../../utils/azure.js";
2
+ import { AzureOpenAI } from "openai";
3
+ import { getEnv, getEnvironmentVariable } from "@langchain/core/utils/env";
4
+
5
+ //#region src/azure/chat_models/common.ts
6
+ const AZURE_ALIASES = {
7
+ openAIApiKey: "openai_api_key",
8
+ openAIApiVersion: "openai_api_version",
9
+ openAIBasePath: "openai_api_base",
10
+ deploymentName: "deployment_name",
11
+ azureOpenAIEndpoint: "azure_endpoint",
12
+ azureOpenAIApiVersion: "openai_api_version",
13
+ azureOpenAIBasePath: "openai_api_base",
14
+ azureOpenAIApiDeploymentName: "deployment_name"
15
+ };
16
+ const AZURE_SECRETS = { azureOpenAIApiKey: "AZURE_OPENAI_API_KEY" };
17
+ const AZURE_SERIALIZABLE_KEYS = [
18
+ "azureOpenAIApiKey",
19
+ "azureOpenAIApiVersion",
20
+ "azureOpenAIBasePath",
21
+ "azureOpenAIEndpoint",
22
+ "azureOpenAIApiInstanceName",
23
+ "azureOpenAIApiDeploymentName",
24
+ "deploymentName",
25
+ "openAIApiKey",
26
+ "openAIApiVersion"
27
+ ];
28
+ function _constructAzureFields(fields) {
29
+ this.azureOpenAIApiKey = fields?.azureOpenAIApiKey ?? fields?.openAIApiKey ?? fields?.apiKey ?? getEnvironmentVariable("AZURE_OPENAI_API_KEY");
30
+ this.azureOpenAIApiInstanceName = fields?.azureOpenAIApiInstanceName ?? getEnvironmentVariable("AZURE_OPENAI_API_INSTANCE_NAME");
31
+ this.azureOpenAIApiDeploymentName = fields?.azureOpenAIApiDeploymentName ?? fields?.deploymentName ?? getEnvironmentVariable("AZURE_OPENAI_API_DEPLOYMENT_NAME");
32
+ this.azureOpenAIApiVersion = fields?.azureOpenAIApiVersion ?? fields?.openAIApiVersion ?? getEnvironmentVariable("AZURE_OPENAI_API_VERSION");
33
+ this.azureOpenAIBasePath = fields?.azureOpenAIBasePath ?? getEnvironmentVariable("AZURE_OPENAI_BASE_PATH");
34
+ this.azureOpenAIEndpoint = fields?.azureOpenAIEndpoint ?? getEnvironmentVariable("AZURE_OPENAI_ENDPOINT");
35
+ this.azureADTokenProvider = fields?.azureADTokenProvider;
36
+ if (!this.azureOpenAIApiKey && !this.apiKey && !this.azureADTokenProvider) throw new Error("Azure OpenAI API key or Token Provider not found");
37
+ }
38
+ function _getAzureClientOptions(options) {
39
+ if (!this.client) {
40
+ const openAIEndpointConfig = {
41
+ azureOpenAIApiDeploymentName: this.azureOpenAIApiDeploymentName,
42
+ azureOpenAIApiInstanceName: this.azureOpenAIApiInstanceName,
43
+ azureOpenAIApiKey: this.azureOpenAIApiKey,
44
+ azureOpenAIBasePath: this.azureOpenAIBasePath,
45
+ azureADTokenProvider: this.azureADTokenProvider,
46
+ baseURL: this.clientConfig.baseURL,
47
+ azureOpenAIEndpoint: this.azureOpenAIEndpoint
48
+ };
49
+ const endpoint = getEndpoint(openAIEndpointConfig);
50
+ const params = {
51
+ ...this.clientConfig,
52
+ baseURL: endpoint,
53
+ timeout: this.timeout,
54
+ maxRetries: 0
55
+ };
56
+ if (!this.azureADTokenProvider) params.apiKey = openAIEndpointConfig.azureOpenAIApiKey;
57
+ if (!params.baseURL) delete params.baseURL;
58
+ let env = getEnv();
59
+ if (env === "node" || env === "deno") env = `(${env}/${process.version}; ${process.platform}; ${process.arch})`;
60
+ const defaultHeaders = normalizeHeaders(params.defaultHeaders);
61
+ params.defaultHeaders = {
62
+ ...params.defaultHeaders,
63
+ "User-Agent": defaultHeaders["User-Agent"] ? `langchainjs-azure-openai/2.0.0 (${env})${defaultHeaders["User-Agent"]}` : `langchainjs-azure-openai/2.0.0 (${env})`
64
+ };
65
+ this.client = new AzureOpenAI({
66
+ apiVersion: this.azureOpenAIApiVersion,
67
+ azureADTokenProvider: this.azureADTokenProvider,
68
+ deployment: this.azureOpenAIApiDeploymentName,
69
+ ...params
70
+ });
71
+ }
72
+ const requestOptions = {
73
+ ...this.clientConfig,
74
+ ...options
75
+ };
76
+ if (this.azureOpenAIApiKey) {
77
+ requestOptions.headers = {
78
+ "api-key": this.azureOpenAIApiKey,
79
+ ...requestOptions.headers
80
+ };
81
+ requestOptions.query = {
82
+ "api-version": this.azureOpenAIApiVersion,
83
+ ...requestOptions.query
84
+ };
85
+ }
86
+ return requestOptions;
87
+ }
88
+ function _serializeAzureChat(input) {
89
+ const json = input;
90
+ function isRecord(obj) {
91
+ return typeof obj === "object" && obj != null;
92
+ }
93
+ if (isRecord(json) && isRecord(json.kwargs)) {
94
+ delete json.kwargs.azure_openai_base_path;
95
+ delete json.kwargs.azure_openai_api_deployment_name;
96
+ delete json.kwargs.azure_openai_api_key;
97
+ delete json.kwargs.azure_openai_api_version;
98
+ delete json.kwargs.azure_open_ai_base_path;
99
+ if (!json.kwargs.azure_endpoint && this.azureOpenAIEndpoint) json.kwargs.azure_endpoint = this.azureOpenAIEndpoint;
100
+ if (!json.kwargs.azure_endpoint && this.azureOpenAIBasePath) {
101
+ const parts = this.azureOpenAIBasePath.split("/openai/deployments/");
102
+ if (parts.length === 2 && parts[0].startsWith("http")) {
103
+ const [endpoint] = parts;
104
+ json.kwargs.azure_endpoint = endpoint;
105
+ }
106
+ }
107
+ if (!json.kwargs.azure_endpoint && this.azureOpenAIApiInstanceName) json.kwargs.azure_endpoint = `https://${this.azureOpenAIApiInstanceName}.openai.azure.com/`;
108
+ if (!json.kwargs.deployment_name && this.azureOpenAIApiDeploymentName) json.kwargs.deployment_name = this.azureOpenAIApiDeploymentName;
109
+ if (!json.kwargs.deployment_name && this.azureOpenAIBasePath) {
110
+ const parts = this.azureOpenAIBasePath.split("/openai/deployments/");
111
+ if (parts.length === 2) {
112
+ const [, deployment] = parts;
113
+ json.kwargs.deployment_name = deployment;
114
+ }
115
+ }
116
+ if (json.kwargs.azure_endpoint && json.kwargs.deployment_name && json.kwargs.openai_api_base) delete json.kwargs.openai_api_base;
117
+ if (json.kwargs.azure_openai_api_instance_name && json.kwargs.azure_endpoint) delete json.kwargs.azure_openai_api_instance_name;
118
+ }
119
+ return json;
120
+ }
121
+
122
+ //#endregion
123
+ export { AZURE_ALIASES, AZURE_SECRETS, AZURE_SERIALIZABLE_KEYS, _constructAzureFields, _getAzureClientOptions, _serializeAzureChat };
124
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","names":["fields?: AzureChatOpenAIFields","options: OpenAICoreRequestOptions | undefined","openAIEndpointConfig: OpenAIEndpointConfig","AzureOpenAIClient","input: Serialized","obj: unknown"],"sources":["../../../src/azure/chat_models/common.ts"],"sourcesContent":["import { AzureOpenAI as AzureOpenAIClient } from \"openai\";\nimport { getEnv, getEnvironmentVariable } from \"@langchain/core/utils/env\";\nimport type { Serialized } from \"@langchain/core/load/serializable\";\nimport { ChatOpenAICallOptions } from \"../../chat_models/index.js\";\nimport {\n OpenAIEndpointConfig,\n getEndpoint,\n normalizeHeaders,\n} from \"../../utils/azure.js\";\nimport { AzureOpenAIChatInput, OpenAICoreRequestOptions } from \"../../types.js\";\nimport {\n BaseChatOpenAI,\n BaseChatOpenAIFields,\n} from \"../../chat_models/base.js\";\n\nexport const AZURE_ALIASES = {\n openAIApiKey: \"openai_api_key\",\n openAIApiVersion: \"openai_api_version\",\n openAIBasePath: \"openai_api_base\",\n deploymentName: \"deployment_name\",\n azureOpenAIEndpoint: \"azure_endpoint\",\n azureOpenAIApiVersion: \"openai_api_version\",\n azureOpenAIBasePath: \"openai_api_base\",\n azureOpenAIApiDeploymentName: \"deployment_name\",\n};\n\nexport const AZURE_SECRETS = {\n azureOpenAIApiKey: \"AZURE_OPENAI_API_KEY\",\n};\n\nexport const AZURE_SERIALIZABLE_KEYS = [\n \"azureOpenAIApiKey\",\n \"azureOpenAIApiVersion\",\n \"azureOpenAIBasePath\",\n \"azureOpenAIEndpoint\",\n \"azureOpenAIApiInstanceName\",\n \"azureOpenAIApiDeploymentName\",\n \"deploymentName\",\n \"openAIApiKey\",\n \"openAIApiVersion\",\n];\n\nexport interface AzureChatOpenAIFields\n extends BaseChatOpenAIFields,\n Partial<AzureOpenAIChatInput> {\n /**\n * Whether to use the responses API for all requests. If `false` the responses API will be used\n * only when required in order to fulfill the request.\n */\n useResponsesApi?: boolean;\n}\n\nexport function _constructAzureFields(\n this: Partial<AzureOpenAIChatInput>,\n fields?: AzureChatOpenAIFields\n) {\n this.azureOpenAIApiKey =\n fields?.azureOpenAIApiKey ??\n fields?.openAIApiKey ??\n fields?.apiKey ??\n getEnvironmentVariable(\"AZURE_OPENAI_API_KEY\");\n\n this.azureOpenAIApiInstanceName =\n fields?.azureOpenAIApiInstanceName ??\n getEnvironmentVariable(\"AZURE_OPENAI_API_INSTANCE_NAME\");\n\n this.azureOpenAIApiDeploymentName =\n fields?.azureOpenAIApiDeploymentName ??\n fields?.deploymentName ??\n getEnvironmentVariable(\"AZURE_OPENAI_API_DEPLOYMENT_NAME\");\n\n this.azureOpenAIApiVersion =\n fields?.azureOpenAIApiVersion ??\n fields?.openAIApiVersion ??\n getEnvironmentVariable(\"AZURE_OPENAI_API_VERSION\");\n\n this.azureOpenAIBasePath =\n fields?.azureOpenAIBasePath ??\n getEnvironmentVariable(\"AZURE_OPENAI_BASE_PATH\");\n\n this.azureOpenAIEndpoint =\n fields?.azureOpenAIEndpoint ??\n getEnvironmentVariable(\"AZURE_OPENAI_ENDPOINT\");\n\n this.azureADTokenProvider = fields?.azureADTokenProvider;\n\n if (!this.azureOpenAIApiKey && !this.apiKey && !this.azureADTokenProvider) {\n throw new Error(\"Azure OpenAI API key or Token Provider not found\");\n }\n}\n\nexport function _getAzureClientOptions(\n this: BaseChatOpenAI<ChatOpenAICallOptions> & Partial<AzureOpenAIChatInput>,\n options: OpenAICoreRequestOptions | undefined\n): OpenAICoreRequestOptions {\n if (!this.client) {\n const openAIEndpointConfig: OpenAIEndpointConfig = {\n azureOpenAIApiDeploymentName: this.azureOpenAIApiDeploymentName,\n azureOpenAIApiInstanceName: this.azureOpenAIApiInstanceName,\n azureOpenAIApiKey: this.azureOpenAIApiKey,\n azureOpenAIBasePath: this.azureOpenAIBasePath,\n azureADTokenProvider: this.azureADTokenProvider,\n baseURL: this.clientConfig.baseURL,\n azureOpenAIEndpoint: this.azureOpenAIEndpoint,\n };\n\n const endpoint = getEndpoint(openAIEndpointConfig);\n\n const params = {\n ...this.clientConfig,\n baseURL: endpoint,\n timeout: this.timeout,\n maxRetries: 0,\n };\n\n if (!this.azureADTokenProvider) {\n params.apiKey = openAIEndpointConfig.azureOpenAIApiKey;\n }\n\n if (!params.baseURL) {\n delete params.baseURL;\n }\n\n let env = getEnv();\n if (env === \"node\" || env === \"deno\") {\n env = `(${env}/${process.version}; ${process.platform}; ${process.arch})`;\n }\n\n const defaultHeaders = normalizeHeaders(params.defaultHeaders);\n params.defaultHeaders = {\n ...params.defaultHeaders,\n \"User-Agent\": defaultHeaders[\"User-Agent\"]\n ? `langchainjs-azure-openai/2.0.0 (${env})${defaultHeaders[\"User-Agent\"]}`\n : `langchainjs-azure-openai/2.0.0 (${env})`,\n };\n\n this.client = new AzureOpenAIClient({\n apiVersion: this.azureOpenAIApiVersion,\n azureADTokenProvider: this.azureADTokenProvider,\n deployment: this.azureOpenAIApiDeploymentName,\n ...params,\n });\n }\n const requestOptions = {\n ...this.clientConfig,\n ...options,\n } as OpenAICoreRequestOptions;\n if (this.azureOpenAIApiKey) {\n requestOptions.headers = {\n \"api-key\": this.azureOpenAIApiKey,\n ...requestOptions.headers,\n };\n requestOptions.query = {\n \"api-version\": this.azureOpenAIApiVersion,\n ...requestOptions.query,\n };\n }\n return requestOptions;\n}\n\nexport function _serializeAzureChat(\n this: BaseChatOpenAI<ChatOpenAICallOptions> & Partial<AzureOpenAIChatInput>,\n input: Serialized\n) {\n const json = input;\n\n function isRecord(obj: unknown): obj is Record<string, unknown> {\n return typeof obj === \"object\" && obj != null;\n }\n\n if (isRecord(json) && isRecord(json.kwargs)) {\n delete json.kwargs.azure_openai_base_path;\n delete json.kwargs.azure_openai_api_deployment_name;\n delete json.kwargs.azure_openai_api_key;\n delete json.kwargs.azure_openai_api_version;\n delete json.kwargs.azure_open_ai_base_path;\n\n if (!json.kwargs.azure_endpoint && this.azureOpenAIEndpoint) {\n json.kwargs.azure_endpoint = this.azureOpenAIEndpoint;\n }\n if (!json.kwargs.azure_endpoint && this.azureOpenAIBasePath) {\n const parts = this.azureOpenAIBasePath.split(\"/openai/deployments/\");\n if (parts.length === 2 && parts[0].startsWith(\"http\")) {\n const [endpoint] = parts;\n json.kwargs.azure_endpoint = endpoint;\n }\n }\n if (!json.kwargs.azure_endpoint && this.azureOpenAIApiInstanceName) {\n json.kwargs.azure_endpoint = `https://${this.azureOpenAIApiInstanceName}.openai.azure.com/`;\n }\n if (!json.kwargs.deployment_name && this.azureOpenAIApiDeploymentName) {\n json.kwargs.deployment_name = this.azureOpenAIApiDeploymentName;\n }\n if (!json.kwargs.deployment_name && this.azureOpenAIBasePath) {\n const parts = this.azureOpenAIBasePath.split(\"/openai/deployments/\");\n if (parts.length === 2) {\n const [, deployment] = parts;\n json.kwargs.deployment_name = deployment;\n }\n }\n\n if (\n json.kwargs.azure_endpoint &&\n json.kwargs.deployment_name &&\n json.kwargs.openai_api_base\n ) {\n delete json.kwargs.openai_api_base;\n }\n if (\n json.kwargs.azure_openai_api_instance_name &&\n json.kwargs.azure_endpoint\n ) {\n delete json.kwargs.azure_openai_api_instance_name;\n }\n }\n\n return json;\n}\n"],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ const require_completions = require('../../chat_models/completions.cjs');
2
+ const require_common = require('./common.cjs');
3
+
4
+ //#region src/azure/chat_models/completions.ts
5
+ var AzureChatOpenAICompletions = class extends require_completions.ChatOpenAICompletions {
6
+ azureOpenAIApiVersion;
7
+ azureOpenAIApiKey;
8
+ azureADTokenProvider;
9
+ azureOpenAIApiInstanceName;
10
+ azureOpenAIApiDeploymentName;
11
+ azureOpenAIBasePath;
12
+ azureOpenAIEndpoint;
13
+ _llmType() {
14
+ return "azure_openai";
15
+ }
16
+ get lc_aliases() {
17
+ return {
18
+ ...super.lc_aliases,
19
+ ...require_common.AZURE_ALIASES
20
+ };
21
+ }
22
+ get lc_secrets() {
23
+ return {
24
+ ...super.lc_secrets,
25
+ ...require_common.AZURE_SECRETS
26
+ };
27
+ }
28
+ get lc_serializable_keys() {
29
+ return [...super.lc_serializable_keys, ...require_common.AZURE_SERIALIZABLE_KEYS];
30
+ }
31
+ getLsParams(options) {
32
+ const params = super.getLsParams(options);
33
+ params.ls_provider = "azure";
34
+ return params;
35
+ }
36
+ constructor(fields) {
37
+ super(fields);
38
+ require_common._constructAzureFields.call(this, fields);
39
+ }
40
+ _getClientOptions(options) {
41
+ return require_common._getAzureClientOptions.call(this, options);
42
+ }
43
+ toJSON() {
44
+ return require_common._serializeAzureChat.call(this, super.toJSON());
45
+ }
46
+ };
47
+
48
+ //#endregion
49
+ exports.AzureChatOpenAICompletions = AzureChatOpenAICompletions;
50
+ //# sourceMappingURL=completions.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completions.cjs","names":["ChatOpenAICompletions","AZURE_ALIASES","AZURE_SECRETS","AZURE_SERIALIZABLE_KEYS","options: this[\"ParsedCallOptions\"]","fields?: AzureChatOpenAIFields","_constructAzureFields","options: OpenAICoreRequestOptions | undefined","_getAzureClientOptions","_serializeAzureChat"],"sources":["../../../src/azure/chat_models/completions.ts"],"sourcesContent":["import { LangSmithParams } from \"@langchain/core/language_models/chat_models\";\nimport { Serialized } from \"@langchain/core/load/serializable\";\nimport {\n ChatOpenAICompletions,\n ChatOpenAICompletionsCallOptions,\n} from \"../../chat_models/completions.js\";\nimport { AzureOpenAIChatInput, OpenAICoreRequestOptions } from \"../../types.js\";\nimport {\n _constructAzureFields,\n _getAzureClientOptions,\n _serializeAzureChat,\n AZURE_ALIASES,\n AZURE_SECRETS,\n AZURE_SERIALIZABLE_KEYS,\n AzureChatOpenAIFields,\n} from \"./common.js\";\n\nexport class AzureChatOpenAICompletions<\n CallOptions extends ChatOpenAICompletionsCallOptions = ChatOpenAICompletionsCallOptions\n >\n extends ChatOpenAICompletions<CallOptions>\n implements Partial<AzureOpenAIChatInput>\n{\n azureOpenAIApiVersion?: string;\n\n azureOpenAIApiKey?: string;\n\n azureADTokenProvider?: () => Promise<string>;\n\n azureOpenAIApiInstanceName?: string;\n\n azureOpenAIApiDeploymentName?: string;\n\n azureOpenAIBasePath?: string;\n\n azureOpenAIEndpoint?: string;\n\n _llmType(): string {\n return \"azure_openai\";\n }\n\n get lc_aliases(): Record<string, string> {\n return {\n ...super.lc_aliases,\n ...AZURE_ALIASES,\n };\n }\n\n get lc_secrets(): { [key: string]: string } | undefined {\n return {\n ...super.lc_secrets,\n ...AZURE_SECRETS,\n };\n }\n\n get lc_serializable_keys(): string[] {\n return [...super.lc_serializable_keys, ...AZURE_SERIALIZABLE_KEYS];\n }\n\n getLsParams(options: this[\"ParsedCallOptions\"]): LangSmithParams {\n const params = super.getLsParams(options);\n params.ls_provider = \"azure\";\n return params;\n }\n\n constructor(fields?: AzureChatOpenAIFields) {\n super(fields);\n _constructAzureFields.call(this, fields);\n }\n\n override _getClientOptions(\n options: OpenAICoreRequestOptions | undefined\n ): OpenAICoreRequestOptions {\n return _getAzureClientOptions.call(this, options);\n }\n\n override toJSON(): Serialized {\n return _serializeAzureChat.call(this, super.toJSON());\n }\n}\n"],"mappings":";;;;AAiBA,IAAa,6BAAb,cAGUA,0CAEV;CACE;CAEA;CAEA;CAEA;CAEA;CAEA;CAEA;CAEA,WAAmB;AACjB,SAAO;CACR;CAED,IAAI,aAAqC;AACvC,SAAO;GACL,GAAG,MAAM;GACT,GAAGC;EACJ;CACF;CAED,IAAI,aAAoD;AACtD,SAAO;GACL,GAAG,MAAM;GACT,GAAGC;EACJ;CACF;CAED,IAAI,uBAAiC;AACnC,SAAO,CAAC,GAAG,MAAM,sBAAsB,GAAGC,sCAAwB;CACnE;CAED,YAAYC,SAAqD;EAC/D,MAAM,SAAS,MAAM,YAAY,QAAQ;EACzC,OAAO,cAAc;AACrB,SAAO;CACR;CAED,YAAYC,QAAgC;EAC1C,MAAM,OAAO;EACbC,qCAAsB,KAAK,MAAM,OAAO;CACzC;CAED,AAAS,kBACPC,SAC0B;AAC1B,SAAOC,sCAAuB,KAAK,MAAM,QAAQ;CAClD;CAED,AAAS,SAAqB;AAC5B,SAAOC,mCAAoB,KAAK,MAAM,MAAM,QAAQ,CAAC;CACtD;AACF"}
@@ -0,0 +1,29 @@
1
+ import { AzureOpenAIChatInput, OpenAICoreRequestOptions } from "../../types.cjs";
2
+ import { ChatOpenAICompletions, ChatOpenAICompletionsCallOptions } from "../../chat_models/completions.cjs";
3
+ import { AzureChatOpenAIFields } from "./common.cjs";
4
+ import { LangSmithParams } from "@langchain/core/language_models/chat_models";
5
+ import { Serialized } from "@langchain/core/load/serializable";
6
+
7
+ //#region src/azure/chat_models/completions.d.ts
8
+ declare class AzureChatOpenAICompletions<CallOptions extends ChatOpenAICompletionsCallOptions = ChatOpenAICompletionsCallOptions> extends ChatOpenAICompletions<CallOptions> implements Partial<AzureOpenAIChatInput> {
9
+ azureOpenAIApiVersion?: string;
10
+ azureOpenAIApiKey?: string;
11
+ azureADTokenProvider?: () => Promise<string>;
12
+ azureOpenAIApiInstanceName?: string;
13
+ azureOpenAIApiDeploymentName?: string;
14
+ azureOpenAIBasePath?: string;
15
+ azureOpenAIEndpoint?: string;
16
+ _llmType(): string;
17
+ get lc_aliases(): Record<string, string>;
18
+ get lc_secrets(): {
19
+ [key: string]: string;
20
+ } | undefined;
21
+ get lc_serializable_keys(): string[];
22
+ getLsParams(options: this["ParsedCallOptions"]): LangSmithParams;
23
+ constructor(fields?: AzureChatOpenAIFields);
24
+ _getClientOptions(options: OpenAICoreRequestOptions | undefined): OpenAICoreRequestOptions;
25
+ toJSON(): Serialized;
26
+ }
27
+ //#endregion
28
+ export { AzureChatOpenAICompletions };
29
+ //# sourceMappingURL=completions.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completions.d.cts","names":["LangSmithParams","Serialized","ChatOpenAICompletions","ChatOpenAICompletionsCallOptions","AzureOpenAIChatInput","OpenAICoreRequestOptions","AzureChatOpenAIFields","AzureChatOpenAICompletions","CallOptions","Promise","Record","Partial"],"sources":["../../../src/azure/chat_models/completions.d.ts"],"sourcesContent":["import { LangSmithParams } from \"@langchain/core/language_models/chat_models\";\nimport { Serialized } from \"@langchain/core/load/serializable\";\nimport { ChatOpenAICompletions, ChatOpenAICompletionsCallOptions } from \"../../chat_models/completions.js\";\nimport { AzureOpenAIChatInput, OpenAICoreRequestOptions } from \"../../types.js\";\nimport { AzureChatOpenAIFields } from \"./common.js\";\nexport declare class AzureChatOpenAICompletions<CallOptions extends ChatOpenAICompletionsCallOptions = ChatOpenAICompletionsCallOptions> extends ChatOpenAICompletions<CallOptions> implements Partial<AzureOpenAIChatInput> {\n azureOpenAIApiVersion?: string;\n azureOpenAIApiKey?: string;\n azureADTokenProvider?: () => Promise<string>;\n azureOpenAIApiInstanceName?: string;\n azureOpenAIApiDeploymentName?: string;\n azureOpenAIBasePath?: string;\n azureOpenAIEndpoint?: string;\n _llmType(): string;\n get lc_aliases(): Record<string, string>;\n get lc_secrets(): {\n [key: string]: string;\n } | undefined;\n get lc_serializable_keys(): string[];\n getLsParams(options: this[\"ParsedCallOptions\"]): LangSmithParams;\n constructor(fields?: AzureChatOpenAIFields);\n _getClientOptions(options: OpenAICoreRequestOptions | undefined): OpenAICoreRequestOptions;\n toJSON(): Serialized;\n}\n"],"mappings":";;;;;;;cAKqBO,+CAA+CJ,mCAAmCA,0CAA0CD,sBAAsBM,wBAAwBG,QAAQP;;EAAlLG,iBAAAA,CAAAA,EAAAA,MAAAA;EAA0B,oBAAA,CAAA,EAAA,GAAA,GAGdE,OAHc,CAAA,MAAA,CAAA;EAAA,0BAAqBN,CAAAA,EAAAA,MAAAA;EAAgC,4BAAGA,CAAAA,EAAAA,MAAAA;EAAgC,mBAAgCK,CAAAA,EAAAA,MAAAA;EAAW,mBAAqBJ,CAAAA,EAAAA,MAAAA;EAAoB,QAG1LK,CAAAA,CAAAA,EAAAA,MAAAA;EAAO,IAMlBC,UAAAA,CAAAA,CAAAA,EAAAA,MAAAA,CAAAA,MAAAA,EAAAA,MAAAA,CAAAA;EAAM,IAKyBV,UAAAA,CAAAA,CAAAA,EAAAA;IAC5BM,CAAAA,GAAAA,EAAAA,MAAAA,CAAAA,EAAAA,MAAAA;EAAqB,CAAA,GACfD,SAAAA;EAAwB,IAAeA,oBAAAA,CAAAA,CAAAA,EAAAA,MAAAA,EAAAA;EAAwB,WAChFJ,CAAAA,OAAAA,EAAAA,IAAAA,CAAAA,mBAAAA,CAAAA,CAAAA,EAHuCD,eAGvCC;EAAU,WAjByHC,CAAAA,MAAAA,CAAAA,EAexHI,qBAfwHJ;EAAqB,iBAAyBS,CAAAA,OAAAA,EAgBhKN,wBAhBgKM,GAAAA,SAAAA,CAAAA,EAgBzHN,wBAhByHM;EAAO,MAAA,CAAA,CAAA,EAiBxLV,UAjBwL"}
@@ -0,0 +1,29 @@
1
+ import { AzureOpenAIChatInput, OpenAICoreRequestOptions } from "../../types.js";
2
+ import { ChatOpenAICompletions, ChatOpenAICompletionsCallOptions } from "../../chat_models/completions.js";
3
+ import { AzureChatOpenAIFields } from "./common.js";
4
+ import { LangSmithParams } from "@langchain/core/language_models/chat_models";
5
+ import { Serialized } from "@langchain/core/load/serializable";
6
+
7
+ //#region src/azure/chat_models/completions.d.ts
8
+ declare class AzureChatOpenAICompletions<CallOptions extends ChatOpenAICompletionsCallOptions = ChatOpenAICompletionsCallOptions> extends ChatOpenAICompletions<CallOptions> implements Partial<AzureOpenAIChatInput> {
9
+ azureOpenAIApiVersion?: string;
10
+ azureOpenAIApiKey?: string;
11
+ azureADTokenProvider?: () => Promise<string>;
12
+ azureOpenAIApiInstanceName?: string;
13
+ azureOpenAIApiDeploymentName?: string;
14
+ azureOpenAIBasePath?: string;
15
+ azureOpenAIEndpoint?: string;
16
+ _llmType(): string;
17
+ get lc_aliases(): Record<string, string>;
18
+ get lc_secrets(): {
19
+ [key: string]: string;
20
+ } | undefined;
21
+ get lc_serializable_keys(): string[];
22
+ getLsParams(options: this["ParsedCallOptions"]): LangSmithParams;
23
+ constructor(fields?: AzureChatOpenAIFields);
24
+ _getClientOptions(options: OpenAICoreRequestOptions | undefined): OpenAICoreRequestOptions;
25
+ toJSON(): Serialized;
26
+ }
27
+ //#endregion
28
+ export { AzureChatOpenAICompletions };
29
+ //# sourceMappingURL=completions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completions.d.ts","names":["LangSmithParams","Serialized","ChatOpenAICompletions","ChatOpenAICompletionsCallOptions","AzureOpenAIChatInput","OpenAICoreRequestOptions","AzureChatOpenAIFields","AzureChatOpenAICompletions","CallOptions","Promise","Record","Partial"],"sources":["../../../src/azure/chat_models/completions.d.ts"],"sourcesContent":["import { LangSmithParams } from \"@langchain/core/language_models/chat_models\";\nimport { Serialized } from \"@langchain/core/load/serializable\";\nimport { ChatOpenAICompletions, ChatOpenAICompletionsCallOptions } from \"../../chat_models/completions.js\";\nimport { AzureOpenAIChatInput, OpenAICoreRequestOptions } from \"../../types.js\";\nimport { AzureChatOpenAIFields } from \"./common.js\";\nexport declare class AzureChatOpenAICompletions<CallOptions extends ChatOpenAICompletionsCallOptions = ChatOpenAICompletionsCallOptions> extends ChatOpenAICompletions<CallOptions> implements Partial<AzureOpenAIChatInput> {\n azureOpenAIApiVersion?: string;\n azureOpenAIApiKey?: string;\n azureADTokenProvider?: () => Promise<string>;\n azureOpenAIApiInstanceName?: string;\n azureOpenAIApiDeploymentName?: string;\n azureOpenAIBasePath?: string;\n azureOpenAIEndpoint?: string;\n _llmType(): string;\n get lc_aliases(): Record<string, string>;\n get lc_secrets(): {\n [key: string]: string;\n } | undefined;\n get lc_serializable_keys(): string[];\n getLsParams(options: this[\"ParsedCallOptions\"]): LangSmithParams;\n constructor(fields?: AzureChatOpenAIFields);\n _getClientOptions(options: OpenAICoreRequestOptions | undefined): OpenAICoreRequestOptions;\n toJSON(): Serialized;\n}\n"],"mappings":";;;;;;;cAKqBO,+CAA+CJ,mCAAmCA,0CAA0CD,sBAAsBM,wBAAwBG,QAAQP;;EAAlLG,iBAAAA,CAAAA,EAAAA,MAAAA;EAA0B,oBAAA,CAAA,EAAA,GAAA,GAGdE,OAHc,CAAA,MAAA,CAAA;EAAA,0BAAqBN,CAAAA,EAAAA,MAAAA;EAAgC,4BAAGA,CAAAA,EAAAA,MAAAA;EAAgC,mBAAgCK,CAAAA,EAAAA,MAAAA;EAAW,mBAAqBJ,CAAAA,EAAAA,MAAAA;EAAoB,QAG1LK,CAAAA,CAAAA,EAAAA,MAAAA;EAAO,IAMlBC,UAAAA,CAAAA,CAAAA,EAAAA,MAAAA,CAAAA,MAAAA,EAAAA,MAAAA,CAAAA;EAAM,IAKyBV,UAAAA,CAAAA,CAAAA,EAAAA;IAC5BM,CAAAA,GAAAA,EAAAA,MAAAA,CAAAA,EAAAA,MAAAA;EAAqB,CAAA,GACfD,SAAAA;EAAwB,IAAeA,oBAAAA,CAAAA,CAAAA,EAAAA,MAAAA,EAAAA;EAAwB,WAChFJ,CAAAA,OAAAA,EAAAA,IAAAA,CAAAA,mBAAAA,CAAAA,CAAAA,EAHuCD,eAGvCC;EAAU,WAjByHC,CAAAA,MAAAA,CAAAA,EAexHI,qBAfwHJ;EAAqB,iBAAyBS,CAAAA,OAAAA,EAgBhKN,wBAhBgKM,GAAAA,SAAAA,CAAAA,EAgBzHN,wBAhByHM;EAAO,MAAA,CAAA,CAAA,EAiBxLV,UAjBwL"}
@@ -0,0 +1,50 @@
1
+ import { ChatOpenAICompletions } from "../../chat_models/completions.js";
2
+ import { AZURE_ALIASES, AZURE_SECRETS, AZURE_SERIALIZABLE_KEYS, _constructAzureFields, _getAzureClientOptions, _serializeAzureChat } from "./common.js";
3
+
4
+ //#region src/azure/chat_models/completions.ts
5
+ var AzureChatOpenAICompletions = class extends ChatOpenAICompletions {
6
+ azureOpenAIApiVersion;
7
+ azureOpenAIApiKey;
8
+ azureADTokenProvider;
9
+ azureOpenAIApiInstanceName;
10
+ azureOpenAIApiDeploymentName;
11
+ azureOpenAIBasePath;
12
+ azureOpenAIEndpoint;
13
+ _llmType() {
14
+ return "azure_openai";
15
+ }
16
+ get lc_aliases() {
17
+ return {
18
+ ...super.lc_aliases,
19
+ ...AZURE_ALIASES
20
+ };
21
+ }
22
+ get lc_secrets() {
23
+ return {
24
+ ...super.lc_secrets,
25
+ ...AZURE_SECRETS
26
+ };
27
+ }
28
+ get lc_serializable_keys() {
29
+ return [...super.lc_serializable_keys, ...AZURE_SERIALIZABLE_KEYS];
30
+ }
31
+ getLsParams(options) {
32
+ const params = super.getLsParams(options);
33
+ params.ls_provider = "azure";
34
+ return params;
35
+ }
36
+ constructor(fields) {
37
+ super(fields);
38
+ _constructAzureFields.call(this, fields);
39
+ }
40
+ _getClientOptions(options) {
41
+ return _getAzureClientOptions.call(this, options);
42
+ }
43
+ toJSON() {
44
+ return _serializeAzureChat.call(this, super.toJSON());
45
+ }
46
+ };
47
+
48
+ //#endregion
49
+ export { AzureChatOpenAICompletions };
50
+ //# sourceMappingURL=completions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completions.js","names":["options: this[\"ParsedCallOptions\"]","fields?: AzureChatOpenAIFields","options: OpenAICoreRequestOptions | undefined"],"sources":["../../../src/azure/chat_models/completions.ts"],"sourcesContent":["import { LangSmithParams } from \"@langchain/core/language_models/chat_models\";\nimport { Serialized } from \"@langchain/core/load/serializable\";\nimport {\n ChatOpenAICompletions,\n ChatOpenAICompletionsCallOptions,\n} from \"../../chat_models/completions.js\";\nimport { AzureOpenAIChatInput, OpenAICoreRequestOptions } from \"../../types.js\";\nimport {\n _constructAzureFields,\n _getAzureClientOptions,\n _serializeAzureChat,\n AZURE_ALIASES,\n AZURE_SECRETS,\n AZURE_SERIALIZABLE_KEYS,\n AzureChatOpenAIFields,\n} from \"./common.js\";\n\nexport class AzureChatOpenAICompletions<\n CallOptions extends ChatOpenAICompletionsCallOptions = ChatOpenAICompletionsCallOptions\n >\n extends ChatOpenAICompletions<CallOptions>\n implements Partial<AzureOpenAIChatInput>\n{\n azureOpenAIApiVersion?: string;\n\n azureOpenAIApiKey?: string;\n\n azureADTokenProvider?: () => Promise<string>;\n\n azureOpenAIApiInstanceName?: string;\n\n azureOpenAIApiDeploymentName?: string;\n\n azureOpenAIBasePath?: string;\n\n azureOpenAIEndpoint?: string;\n\n _llmType(): string {\n return \"azure_openai\";\n }\n\n get lc_aliases(): Record<string, string> {\n return {\n ...super.lc_aliases,\n ...AZURE_ALIASES,\n };\n }\n\n get lc_secrets(): { [key: string]: string } | undefined {\n return {\n ...super.lc_secrets,\n ...AZURE_SECRETS,\n };\n }\n\n get lc_serializable_keys(): string[] {\n return [...super.lc_serializable_keys, ...AZURE_SERIALIZABLE_KEYS];\n }\n\n getLsParams(options: this[\"ParsedCallOptions\"]): LangSmithParams {\n const params = super.getLsParams(options);\n params.ls_provider = \"azure\";\n return params;\n }\n\n constructor(fields?: AzureChatOpenAIFields) {\n super(fields);\n _constructAzureFields.call(this, fields);\n }\n\n override _getClientOptions(\n options: OpenAICoreRequestOptions | undefined\n ): OpenAICoreRequestOptions {\n return _getAzureClientOptions.call(this, options);\n }\n\n override toJSON(): Serialized {\n return _serializeAzureChat.call(this, super.toJSON());\n }\n}\n"],"mappings":";;;;AAiBA,IAAa,6BAAb,cAGU,sBAEV;CACE;CAEA;CAEA;CAEA;CAEA;CAEA;CAEA;CAEA,WAAmB;AACjB,SAAO;CACR;CAED,IAAI,aAAqC;AACvC,SAAO;GACL,GAAG,MAAM;GACT,GAAG;EACJ;CACF;CAED,IAAI,aAAoD;AACtD,SAAO;GACL,GAAG,MAAM;GACT,GAAG;EACJ;CACF;CAED,IAAI,uBAAiC;AACnC,SAAO,CAAC,GAAG,MAAM,sBAAsB,GAAG,uBAAwB;CACnE;CAED,YAAYA,SAAqD;EAC/D,MAAM,SAAS,MAAM,YAAY,QAAQ;EACzC,OAAO,cAAc;AACrB,SAAO;CACR;CAED,YAAYC,QAAgC;EAC1C,MAAM,OAAO;EACb,sBAAsB,KAAK,MAAM,OAAO;CACzC;CAED,AAAS,kBACPC,SAC0B;AAC1B,SAAO,uBAAuB,KAAK,MAAM,QAAQ;CAClD;CAED,AAAS,SAAqB;AAC5B,SAAO,oBAAoB,KAAK,MAAM,MAAM,QAAQ,CAAC;CACtD;AACF"}