@sap-ai-sdk/langchain 1.14.1-20250530013203.0 → 1.14.1-20250531013154.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.
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/openai/chat.js +3 -3
- package/dist/openai/chat.js.map +1 -1
- package/dist/openai/types.d.ts +1 -1
- package/dist/openai/util.d.ts +1 -1
- package/dist/openai/util.d.ts.map +1 -1
- package/dist/openai/util.js +6 -6
- package/dist/openai/util.js.map +1 -1
- package/dist/orchestration/client.d.ts +4 -3
- package/dist/orchestration/client.d.ts.map +1 -1
- package/dist/orchestration/client.js +23 -3
- package/dist/orchestration/client.js.map +1 -1
- package/dist/orchestration/types.d.ts +15 -5
- package/dist/orchestration/types.d.ts.map +1 -1
- package/dist/orchestration/util.d.ts +36 -1
- package/dist/orchestration/util.d.ts.map +1 -1
- package/dist/orchestration/util.js +128 -24
- package/dist/orchestration/util.js.map +1 -1
- package/package.json +5 -5
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { AzureOpenAiChatClient, AzureOpenAiEmbeddingClient } from './openai/index.js';
|
|
2
2
|
export type { AzureOpenAiChatModelParams, AzureOpenAiEmbeddingModelParams, AzureOpenAiChatCallOptions, ChatAzureOpenAIToolType } from './openai/index.js';
|
|
3
3
|
export { OrchestrationClient, OrchestrationMessageChunk } from './orchestration/index.js';
|
|
4
|
-
export type { OrchestrationCallOptions, LangchainOrchestrationModuleConfig } from './orchestration/index.js';
|
|
4
|
+
export type { OrchestrationCallOptions, LangChainOrchestrationModuleConfig, LangchainOrchestrationModuleConfig, ChatOrchestrationToolType } from './orchestration/index.js';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,0BAA0B,EAC1B,+BAA+B,EAC/B,0BAA0B,EAC1B,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,wBAAwB,EACxB,kCAAkC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,0BAA0B,EAC1B,+BAA+B,EAC/B,0BAA0B,EAC1B,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,wBAAwB,EACxB,kCAAkC,EAClC,kCAAkC,EAClC,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC"}
|
package/dist/openai/chat.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AzureOpenAiChatClient as AzureOpenAiChatClientBase } from '@sap-ai-sdk/foundation-models';
|
|
2
2
|
import { BaseChatModel } from '@langchain/core/language_models/chat_models';
|
|
3
|
-
import {
|
|
3
|
+
import { mapLangChainToAiClient, mapOutputToChatResult, mapToolToOpenAiTool } from './util.js';
|
|
4
4
|
/**
|
|
5
5
|
* LangChain chat client for Azure OpenAI consumption on SAP BTP.
|
|
6
6
|
*/
|
|
@@ -36,7 +36,7 @@ export class AzureOpenAiChatClient extends BaseChatModel {
|
|
|
36
36
|
async _generate(messages, options, runManager) {
|
|
37
37
|
const res = await this.caller.callWithOptions({
|
|
38
38
|
signal: options.signal
|
|
39
|
-
}, () => this.openAiChatClient.run(
|
|
39
|
+
}, () => this.openAiChatClient.run(mapLangChainToAiClient(this, messages, options), options.requestConfig));
|
|
40
40
|
const content = res.getContent();
|
|
41
41
|
// we currently do not support streaming
|
|
42
42
|
await runManager?.handleLLMNewToken(typeof content === 'string' ? content : '');
|
|
@@ -51,7 +51,7 @@ export class AzureOpenAiChatClient extends BaseChatModel {
|
|
|
51
51
|
strict = this.supportsStrictToolCalling;
|
|
52
52
|
}
|
|
53
53
|
const newTools = tools.map(tool => mapToolToOpenAiTool(tool, strict));
|
|
54
|
-
return this.
|
|
54
|
+
return this.withConfig({
|
|
55
55
|
tools: newTools,
|
|
56
56
|
...kwargs
|
|
57
57
|
});
|
package/dist/openai/chat.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/openai/chat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,IAAI,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AACnG,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,WAAW,CAAC;AAanB;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAQ,aAAyC;IAClF,WAAW,CAAiB;IAC5B,KAAK,CAAiB;IACtB,UAAU,CAA0C;IACpD,IAAI,CAAU;IACd,gBAAgB,CAAU;IAC1B,iBAAiB,CAAU;IAC3B,IAAI,CAAqB;IACzB,UAAU,CAAU;IACpB,yBAAyB,CAAW;IAC5B,gBAAgB,CAA4B;IAEpD,YACE,MAAkC,EAClC,WAA2C;QAE3C,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,gBAAgB,GAAG,IAAI,yBAAyB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC3E,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;QAClD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,MAAM,CAAC,yBAAyB,KAAK,SAAS,EAAE,CAAC;YACnD,IAAI,CAAC,yBAAyB,GAAG,MAAM,CAAC,yBAAyB,CAAC;QACpE,CAAC;IACH,CAAC;IAED,QAAQ;QACN,OAAO,cAAc,CAAC;IACxB,CAAC;IAEQ,KAAK,CAAC,SAAS,CACtB,QAAuB,EACvB,OAAsC,EACtC,UAAqC;QAErC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,CAC3C;YACE,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,gBAAgB,CAAC,GAAG,CACvB,sBAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,EAC/C,OAAO,CAAC,aAAa,CACtB,CACJ,CAAC;QAEF,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;QAEjC,wCAAwC;QACxC,MAAM,UAAU,EAAE,iBAAiB,CACjC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAC3C,CAAC;QAEF,OAAO,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAEQ,SAAS,CAChB,KAAgC,EAChC,MAAwD;QAMxD,IAAI,MAA2B,CAAC;QAChC,IAAI,MAAM,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QACzB,CAAC;aAAM,IAAI,IAAI,CAAC,yBAAyB,KAAK,SAAS,EAAE,CAAC;YACxD,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAAC;QAC1C,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QACtE,OAAO,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/openai/chat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,IAAI,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AACnG,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,WAAW,CAAC;AAanB;;GAEG;AACH,MAAM,OAAO,qBAAsB,SAAQ,aAAyC;IAClF,WAAW,CAAiB;IAC5B,KAAK,CAAiB;IACtB,UAAU,CAA0C;IACpD,IAAI,CAAU;IACd,gBAAgB,CAAU;IAC1B,iBAAiB,CAAU;IAC3B,IAAI,CAAqB;IACzB,UAAU,CAAU;IACpB,yBAAyB,CAAW;IAC5B,gBAAgB,CAA4B;IAEpD,YACE,MAAkC,EAClC,WAA2C;QAE3C,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,gBAAgB,GAAG,IAAI,yBAAyB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC3E,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;QAClD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,MAAM,CAAC,yBAAyB,KAAK,SAAS,EAAE,CAAC;YACnD,IAAI,CAAC,yBAAyB,GAAG,MAAM,CAAC,yBAAyB,CAAC;QACpE,CAAC;IACH,CAAC;IAED,QAAQ;QACN,OAAO,cAAc,CAAC;IACxB,CAAC;IAEQ,KAAK,CAAC,SAAS,CACtB,QAAuB,EACvB,OAAsC,EACtC,UAAqC;QAErC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,CAC3C;YACE,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,EACD,GAAG,EAAE,CACH,IAAI,CAAC,gBAAgB,CAAC,GAAG,CACvB,sBAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,EAC/C,OAAO,CAAC,aAAa,CACtB,CACJ,CAAC;QAEF,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;QAEjC,wCAAwC;QACxC,MAAM,UAAU,EAAE,iBAAiB,CACjC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAC3C,CAAC;QAEF,OAAO,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAEQ,SAAS,CAChB,KAAgC,EAChC,MAAwD;QAMxD,IAAI,MAA2B,CAAC;QAChC,IAAI,MAAM,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QACzB,CAAC;aAAM,IAAI,IAAI,CAAC,yBAAyB,KAAK,SAAS,EAAE,CAAC;YACxD,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAAC;QAC1C,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QACtE,OAAO,IAAI,CAAC,UAAU,CAAC;YACrB,KAAK,EAAE,QAAQ;YACf,GAAG,MAAM;SAC6B,CAAC,CAAC;IAC5C,CAAC;CACF"}
|
package/dist/openai/types.d.ts
CHANGED
|
@@ -14,7 +14,7 @@ export type AzureOpenAiChatModelParams = Pick<AzureOpenAiChatCompletionsRequestC
|
|
|
14
14
|
supportsStrictToolCalling?: boolean;
|
|
15
15
|
} & BaseChatModelParams & ModelConfig<AzureOpenAiChatModel> & ResourceGroupConfig;
|
|
16
16
|
/**
|
|
17
|
-
* Tool type for Azure OpenAI.
|
|
17
|
+
* Tool type for LangChain Azure OpenAI client.
|
|
18
18
|
*/
|
|
19
19
|
export type ChatAzureOpenAIToolType = AzureOpenAiChatCompletionTool | BindToolsInput;
|
|
20
20
|
/**
|
package/dist/openai/util.d.ts
CHANGED
|
@@ -35,7 +35,7 @@ export declare function mapOutputToChatResult(completionResponse: AzureOpenAiCre
|
|
|
35
35
|
* @returns An AI SDK compatibile request
|
|
36
36
|
* @internal
|
|
37
37
|
*/
|
|
38
|
-
export declare function
|
|
38
|
+
export declare function mapLangChainToAiClient(client: AzureOpenAiChatClient, messages: BaseMessage[], options?: AzureOpenAiChatCallOptions & {
|
|
39
39
|
promptIndex?: number;
|
|
40
40
|
}): AzureOpenAiCreateChatCompletionRequest;
|
|
41
41
|
type ToolDefinitionLike = Pick<ToolDefinition, 'type'> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/openai/util.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAGV,6BAA6B,EAE7B,uCAAuC,EACvC,sCAAsC,EACtC,6BAA6B,EAK7B,yBAAyB,EAC1B,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,WAAW,EAKZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,KAAK,EACV,0BAA0B,EAC1B,uBAAuB,EACxB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACf,MAAM,sCAAsC,CAAC;AAE9C;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,uBAAuB,EAC7B,MAAM,CAAC,EAAE,OAAO,GACf,yBAAyB,CA4B3B;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,uBAAuB,EAC7B,MAAM,CAAC,EAAE,OAAO,GACf,6BAA6B,CAK/B;AAoBD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,kBAAkB,EAAE,uCAAuC,GAC1D,UAAU,
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/openai/util.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAGV,6BAA6B,EAE7B,uCAAuC,EACvC,sCAAsC,EACtC,6BAA6B,EAK7B,yBAAyB,EAC1B,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,WAAW,EAKZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,KAAK,EACV,0BAA0B,EAC1B,uBAAuB,EACxB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACf,MAAM,sCAAsC,CAAC;AAE9C;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,uBAAuB,EAC7B,MAAM,CAAC,EAAE,OAAO,GACf,yBAAyB,CA4B3B;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,uBAAuB,EAC7B,MAAM,CAAC,EAAE,OAAO,GACf,6BAA6B,CAK/B;AAoBD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,kBAAkB,EAAE,uCAAuC,GAC1D,UAAU,CAoCZ;AAgHD;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,qBAAqB,EAC7B,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,CAAC,EAAE,0BAA0B,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9D,sCAAsC,CAsBxC;AAYD,KAAK,kBAAkB,GAAG,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG;IACvD,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,YAAY,CAAC,GAAG;QACjD,UAAU,CAAC,EAAE,6BAA6B,CAAC;KAC5C,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,uBAAuB,GAC5B,IAAI,IAAI,kBAAkB,CAS5B"}
|
package/dist/openai/util.js
CHANGED
|
@@ -56,7 +56,7 @@ export function mapToolToOpenAiTool(tool, strict) {
|
|
|
56
56
|
* @param toolCalls - The {@link AzureOpenAiChatCompletionMessageToolCalls} response.
|
|
57
57
|
* @returns The LangChain {@link ToolCall}.
|
|
58
58
|
*/
|
|
59
|
-
function
|
|
59
|
+
function mapAzureOpenAiToLangChainToolCall(toolCalls) {
|
|
60
60
|
if (toolCalls) {
|
|
61
61
|
return toolCalls.map(toolCall => ({
|
|
62
62
|
id: toolCall.id,
|
|
@@ -78,7 +78,7 @@ export function mapOutputToChatResult(completionResponse) {
|
|
|
78
78
|
text: choice.message.content ?? '',
|
|
79
79
|
message: new AIMessage({
|
|
80
80
|
content: choice.message.content ?? '',
|
|
81
|
-
tool_calls:
|
|
81
|
+
tool_calls: mapAzureOpenAiToLangChainToolCall(choice.message.tool_calls),
|
|
82
82
|
additional_kwargs: {
|
|
83
83
|
finish_reason: choice.finish_reason,
|
|
84
84
|
index: choice.index,
|
|
@@ -98,6 +98,7 @@ export function mapOutputToChatResult(completionResponse) {
|
|
|
98
98
|
id: completionResponse.id,
|
|
99
99
|
model: completionResponse.model,
|
|
100
100
|
object: completionResponse.object,
|
|
101
|
+
promptFilterResults: completionResponse.prompt_filter_results,
|
|
101
102
|
tokenUsage: {
|
|
102
103
|
completionTokens: completionResponse.usage?.completion_tokens ?? 0,
|
|
103
104
|
promptTokens: completionResponse.usage?.prompt_tokens ?? 0,
|
|
@@ -111,7 +112,7 @@ export function mapOutputToChatResult(completionResponse) {
|
|
|
111
112
|
* @param toolCalls - The {@link ToolCall} to map.
|
|
112
113
|
* @returns The Azure OpenAI {@link AzureOpenAiChatCompletionMessageToolCalls}.
|
|
113
114
|
*/
|
|
114
|
-
function
|
|
115
|
+
function mapLangChainToolCallToAzureOpenAiToolCall(toolCalls) {
|
|
115
116
|
if (toolCalls) {
|
|
116
117
|
return toolCalls.map(toolCall => ({
|
|
117
118
|
id: toolCall.id || uuidv4(),
|
|
@@ -129,7 +130,7 @@ function mapLangchainToolCallToAzureOpenAiToolCall(toolCalls) {
|
|
|
129
130
|
* @returns The Azure OpenAI {@link AzureOpenAiChatCompletionRequestAssistantMessage}.
|
|
130
131
|
*/
|
|
131
132
|
function mapAiMessageToAzureOpenAiAssistantMessage(message) {
|
|
132
|
-
const tool_calls =
|
|
133
|
+
const tool_calls = mapLangChainToolCallToAzureOpenAiToolCall(message.tool_calls) ??
|
|
133
134
|
message.additional_kwargs.tool_calls;
|
|
134
135
|
return {
|
|
135
136
|
name: message.name,
|
|
@@ -197,7 +198,7 @@ function mapBaseMessageToAzureOpenAiChatMessage(message) {
|
|
|
197
198
|
* @returns An AI SDK compatibile request
|
|
198
199
|
* @internal
|
|
199
200
|
*/
|
|
200
|
-
export function
|
|
201
|
+
export function mapLangChainToAiClient(client, messages, options) {
|
|
201
202
|
return removeUndefinedProperties({
|
|
202
203
|
messages: messages.map(mapBaseMessageToAzureOpenAiChatMessage),
|
|
203
204
|
max_tokens: client.max_tokens === -1 ? undefined : client.max_tokens,
|
|
@@ -236,7 +237,6 @@ export function isToolDefinitionLike(tool) {
|
|
|
236
237
|
return (typeof tool === 'object' &&
|
|
237
238
|
tool !== null &&
|
|
238
239
|
'type' in tool &&
|
|
239
|
-
tool.type === 'function' &&
|
|
240
240
|
'function' in tool &&
|
|
241
241
|
tool.function !== null &&
|
|
242
242
|
'name' in tool.function);
|
package/dist/openai/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/openai/util.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/openai/util.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,17 +8,17 @@ import type { ChatResult } from '@langchain/core/outputs';
|
|
|
8
8
|
import type { BaseChatModelParams } from '@langchain/core/language_models/chat_models';
|
|
9
9
|
import type { ResourceGroupConfig } from '@sap-ai-sdk/ai-api';
|
|
10
10
|
import type { CallbackManagerForLLMRun } from '@langchain/core/callbacks/manager';
|
|
11
|
-
import type { OrchestrationCallOptions,
|
|
11
|
+
import type { OrchestrationCallOptions, LangChainOrchestrationModuleConfig, ChatOrchestrationToolType } from './types.js';
|
|
12
12
|
import type { HttpDestinationOrFetchOptions } from '@sap-cloud-sdk/connectivity';
|
|
13
13
|
/**
|
|
14
14
|
* The Orchestration client.
|
|
15
15
|
*/
|
|
16
16
|
export declare class OrchestrationClient extends BaseChatModel<OrchestrationCallOptions, OrchestrationMessageChunk> {
|
|
17
|
-
orchestrationConfig:
|
|
17
|
+
orchestrationConfig: LangChainOrchestrationModuleConfig;
|
|
18
18
|
langchainOptions: BaseChatModelParams;
|
|
19
19
|
deploymentConfig?: ResourceGroupConfig | undefined;
|
|
20
20
|
destination?: HttpDestinationOrFetchOptions | undefined;
|
|
21
|
-
constructor(orchestrationConfig:
|
|
21
|
+
constructor(orchestrationConfig: LangChainOrchestrationModuleConfig, langchainOptions?: BaseChatModelParams, deploymentConfig?: ResourceGroupConfig | undefined, destination?: HttpDestinationOrFetchOptions | undefined);
|
|
22
22
|
_llmType(): string;
|
|
23
23
|
/**
|
|
24
24
|
* Create a new runnable sequence that runs each individual runnable in series,
|
|
@@ -28,6 +28,7 @@ export declare class OrchestrationClient extends BaseChatModel<OrchestrationCall
|
|
|
28
28
|
*/
|
|
29
29
|
pipe<NewRunOutput>(coerceable: RunnableLike<OrchestrationMessageChunk, NewRunOutput>): Runnable<BaseLanguageModelInput, Exclude<NewRunOutput, Error>, OrchestrationCallOptions>;
|
|
30
30
|
_generate(messages: BaseMessage[], options: typeof this.ParsedCallOptions, runManager?: CallbackManagerForLLMRun): Promise<ChatResult>;
|
|
31
|
+
bindTools(tools: ChatOrchestrationToolType[], kwargs?: Partial<OrchestrationCallOptions> | undefined): Runnable<BaseLanguageModelInput, OrchestrationMessageChunk, OrchestrationCallOptions>;
|
|
31
32
|
/**
|
|
32
33
|
* Stream response chunks from the Orchestration client.
|
|
33
34
|
* @param messages - The messages to send to the model.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/orchestration/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/orchestration/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAW5D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,KAAK,EACV,wBAAwB,EACxB,kCAAkC,EAClC,yBAAyB,EAC1B,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AASjF;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,aAAa,CACpD,wBAAwB,EACxB,yBAAyB,CAC1B;IAEU,mBAAmB,EAAE,kCAAkC;IACvD,gBAAgB,EAAE,mBAAmB;IACrC,gBAAgB,CAAC,EAAE,mBAAmB;IACtC,WAAW,CAAC,EAAE,6BAA6B;gBAH3C,mBAAmB,EAAE,kCAAkC,EACvD,gBAAgB,GAAE,mBAAwB,EAC1C,gBAAgB,CAAC,EAAE,mBAAmB,YAAA,EACtC,WAAW,CAAC,EAAE,6BAA6B,YAAA;IAcpD,QAAQ,IAAI,MAAM;IAIlB;;;;;OAKG;IACM,IAAI,CAAC,YAAY,EACxB,UAAU,EAAE,YAAY,CAAC,yBAAyB,EAAE,YAAY,CAAC,GAChE,QAAQ,CACT,sBAAsB,EACtB,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,EAC5B,wBAAwB,CACzB;IAQc,SAAS,CACtB,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,EAAE,OAAO,IAAI,CAAC,iBAAiB,EACtC,UAAU,CAAC,EAAE,wBAAwB,GACpC,OAAO,CAAC,UAAU,CAAC;IAmCb,SAAS,CAChB,KAAK,EAAE,yBAAyB,EAAE,EAClC,MAAM,CAAC,EAAE,OAAO,CAAC,wBAAwB,CAAC,GAAG,SAAS,GACrD,QAAQ,CACT,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,CACzB;IAWD;;;;;;OAMG;IACa,qBAAqB,CACnC,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,EAAE,OAAO,IAAI,CAAC,iBAAiB,EACtC,UAAU,CAAC,EAAE,wBAAwB,GACpC,cAAc,CAAC,mBAAmB,CAAC;IA8DtC,OAAO,CAAC,wBAAwB;CAmCjC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { BaseChatModel } from '@langchain/core/language_models/chat_models';
|
|
2
2
|
import { OrchestrationClient as OrchestrationClientBase } from '@sap-ai-sdk/orchestration';
|
|
3
3
|
import { ChatGenerationChunk } from '@langchain/core/outputs';
|
|
4
|
-
import {
|
|
4
|
+
import { isTemplateRef, mapLangChainMessagesToOrchestrationMessages, mapOutputToChatResult, mapToolToChatCompletionTool, mapOrchestrationChunkToLangChainMessageChunk, setFinishReason, setTokenUsage, computeTokenIndices } from './util.js';
|
|
5
5
|
function isInputFilteringError(error) {
|
|
6
6
|
return (error.cause?.status === 400 &&
|
|
7
7
|
error.cause?.response?.data?.location?.includes('Input Filter'));
|
|
@@ -58,6 +58,16 @@ export class OrchestrationClient extends BaseChatModel {
|
|
|
58
58
|
await runManager?.handleLLMNewToken(typeof content === 'string' ? content : '');
|
|
59
59
|
return mapOutputToChatResult(res.data);
|
|
60
60
|
}
|
|
61
|
+
bindTools(tools, kwargs) {
|
|
62
|
+
let strict;
|
|
63
|
+
if (kwargs?.strict !== undefined) {
|
|
64
|
+
strict = kwargs.strict;
|
|
65
|
+
}
|
|
66
|
+
return this.withConfig({
|
|
67
|
+
tools: tools.map(tool => mapToolToChatCompletionTool(tool, strict)),
|
|
68
|
+
...kwargs
|
|
69
|
+
});
|
|
70
|
+
}
|
|
61
71
|
/**
|
|
62
72
|
* Stream response chunks from the Orchestration client.
|
|
63
73
|
* @param messages - The messages to send to the model.
|
|
@@ -116,8 +126,18 @@ export class OrchestrationClient extends BaseChatModel {
|
|
|
116
126
|
}
|
|
117
127
|
};
|
|
118
128
|
config.templating = this.orchestrationConfig.templating;
|
|
119
|
-
if (
|
|
120
|
-
|
|
129
|
+
if (tools.length) {
|
|
130
|
+
if (!config.templating) {
|
|
131
|
+
config.templating = {};
|
|
132
|
+
}
|
|
133
|
+
if (!isTemplateRef(config.templating)) {
|
|
134
|
+
config.templating.tools = [
|
|
135
|
+
// Preserve existing tools configured in the templating module
|
|
136
|
+
...(config.templating.tools || []),
|
|
137
|
+
// Add new tools set with LangChain `bindTools()` or `invoke()` methods
|
|
138
|
+
...tools.map(t => mapToolToChatCompletionTool(t))
|
|
139
|
+
];
|
|
140
|
+
}
|
|
121
141
|
}
|
|
122
142
|
return config;
|
|
123
143
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/orchestration/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,mBAAmB,IAAI,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EACL,4CAA4C,EAC5C,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/orchestration/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,29 @@
|
|
|
1
|
-
import type { Prompt,
|
|
2
|
-
import type { BaseChatModelCallOptions } from '@langchain/core/language_models/chat_models';
|
|
1
|
+
import type { Prompt, TemplatingModuleConfig, OrchestrationModuleConfig as OrchestrationModuleConfigWithStringTemplating, ChatCompletionTool, StreamOptions } from '@sap-ai-sdk/orchestration';
|
|
2
|
+
import type { BaseChatModelCallOptions, BindToolsInput } from '@langchain/core/language_models/chat_models';
|
|
3
3
|
import type { CustomRequestConfig } from '@sap-ai-sdk/core';
|
|
4
|
+
/**
|
|
5
|
+
* Tool type for LangChain Orchestration client.
|
|
6
|
+
*/
|
|
7
|
+
export type ChatOrchestrationToolType = ChatCompletionTool | BindToolsInput;
|
|
4
8
|
/**
|
|
5
9
|
* Options for an orchestration call.
|
|
6
10
|
*/
|
|
7
11
|
export type OrchestrationCallOptions = Pick<BaseChatModelCallOptions, 'stop' | 'signal' | 'timeout' | 'callbacks' | 'metadata' | 'runId' | 'runName' | 'tags'> & {
|
|
8
12
|
customRequestConfig?: CustomRequestConfig;
|
|
9
|
-
|
|
13
|
+
strict?: boolean;
|
|
14
|
+
tools?: ChatOrchestrationToolType[];
|
|
10
15
|
inputParams?: Prompt['inputParams'];
|
|
11
16
|
streamOptions?: StreamOptions;
|
|
12
17
|
};
|
|
13
18
|
/**
|
|
14
|
-
* Orchestration module configuration for
|
|
19
|
+
* Orchestration module configuration for LangChain.
|
|
15
20
|
*/
|
|
16
|
-
export type
|
|
21
|
+
export type LangChainOrchestrationModuleConfig = Omit<OrchestrationModuleConfigWithStringTemplating, 'templating'> & {
|
|
17
22
|
templating?: TemplatingModuleConfig;
|
|
18
23
|
};
|
|
24
|
+
/**
|
|
25
|
+
* Orchestration module configuration for LangChain.
|
|
26
|
+
* @deprecated Use `LangChainOrchestrationModuleConfig` instead.
|
|
27
|
+
*/
|
|
28
|
+
export type LangchainOrchestrationModuleConfig = LangChainOrchestrationModuleConfig;
|
|
19
29
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/orchestration/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/orchestration/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,sBAAsB,EACtB,yBAAyB,IAAI,6CAA6C,EAC1E,kBAAkB,EAClB,aAAa,EACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACV,wBAAwB,EACxB,cAAc,EACf,MAAM,6CAA6C,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE5D;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,kBAAkB,GAAG,cAAc,CAAC;AAE5E;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,IAAI,CACzC,wBAAwB,EACtB,MAAM,GACN,QAAQ,GACR,SAAS,GACT,WAAW,GACX,UAAU,GACV,OAAO,GACP,SAAS,GACT,MAAM,CACT,GAAG;IACF,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,yBAAyB,EAAE,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,kCAAkC,GAAG,IAAI,CACnD,6CAA6C,EAC7C,YAAY,CACb,GAAG;IACF,UAAU,CAAC,EAAE,sBAAsB,CAAC;CACrC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,kCAAkC,GAC5C,kCAAkC,CAAC"}
|
|
@@ -1,7 +1,25 @@
|
|
|
1
1
|
import { AIMessageChunk } from '@langchain/core/messages';
|
|
2
|
+
import type { FunctionDefinition, ToolDefinition } from '@langchain/core/language_models/base';
|
|
3
|
+
import type { ChatOrchestrationToolType } from './types.js';
|
|
2
4
|
import type { ChatResult } from '@langchain/core/outputs';
|
|
3
|
-
import type { ChatMessage, CompletionPostResponse, Template, OrchestrationStreamChunkResponse, TokenUsage
|
|
5
|
+
import type { ChatCompletionTool, ChatMessage, CompletionPostResponse, FunctionObject, FunctionParameters, Template, TemplatingModuleConfig, TemplateRef, OrchestrationStreamChunkResponse, TokenUsage } from '@sap-ai-sdk/orchestration';
|
|
4
6
|
import type { BaseMessage } from '@langchain/core/messages';
|
|
7
|
+
/**
|
|
8
|
+
* Maps a {@link ChatOrchestrationToolType} to {@link FunctionObject}.
|
|
9
|
+
* @param tool - Base class for tools that accept input of any shape defined by a Zod schema.
|
|
10
|
+
* @param strict - Whether to enforce strict mode for the function call.
|
|
11
|
+
* @returns The Orchestration chat completion function.
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
export declare function mapToolToOrchestrationFunction(tool: ChatOrchestrationToolType, strict?: boolean): FunctionObject;
|
|
15
|
+
/**
|
|
16
|
+
* Maps a LangChain {@link ChatOrchestrationToolType} to {@link ChatCompletionTool}.
|
|
17
|
+
* @param tool - Base class for tools that accept input of any shape defined by a Zod schema.
|
|
18
|
+
* @param strict - Whether to enforce strict mode for the function call.
|
|
19
|
+
* @returns The Orchestration chat completion tool.
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
export declare function mapToolToChatCompletionTool(tool: ChatOrchestrationToolType, strict?: boolean): ChatCompletionTool;
|
|
5
23
|
/**
|
|
6
24
|
* Checks if the object is a {@link Template}.
|
|
7
25
|
* @param object - The object to check.
|
|
@@ -9,6 +27,13 @@ import type { BaseMessage } from '@langchain/core/messages';
|
|
|
9
27
|
* @internal
|
|
10
28
|
*/
|
|
11
29
|
export declare function isTemplate(object: TemplatingModuleConfig): object is Template;
|
|
30
|
+
/**
|
|
31
|
+
* Checks if the object is a {@link TemplateRef}.
|
|
32
|
+
* @param object - The object to check.
|
|
33
|
+
* @returns True if the object is a {@link TemplateRef}.
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
export declare function isTemplateRef(object: TemplatingModuleConfig): object is TemplateRef;
|
|
12
37
|
/**
|
|
13
38
|
* Maps LangChain messages to orchestration messages.
|
|
14
39
|
* @param messages - The LangChain messages to map.
|
|
@@ -23,6 +48,15 @@ export declare function mapLangChainMessagesToOrchestrationMessages(messages: Ba
|
|
|
23
48
|
* @internal
|
|
24
49
|
*/
|
|
25
50
|
export declare function mapOutputToChatResult(completionResponse: CompletionPostResponse): ChatResult;
|
|
51
|
+
type ToolDefinitionLike = Pick<ToolDefinition, 'type'> & {
|
|
52
|
+
function: Omit<FunctionDefinition, 'parameters'> & {
|
|
53
|
+
parameters?: FunctionParameters;
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* @internal
|
|
58
|
+
*/
|
|
59
|
+
export declare function isToolDefinitionLike(tool: ChatOrchestrationToolType): tool is ToolDefinitionLike;
|
|
26
60
|
/**
|
|
27
61
|
* Converts orchestration stream chunk to a LangChain message chunk.
|
|
28
62
|
* @param chunk - The orchestration stream chunk.
|
|
@@ -54,4 +88,5 @@ export declare function computeTokenIndices(chunk: OrchestrationStreamChunkRespo
|
|
|
54
88
|
prompt: number;
|
|
55
89
|
completion: number;
|
|
56
90
|
};
|
|
91
|
+
export {};
|
|
57
92
|
//# sourceMappingURL=util.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/orchestration/util.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/orchestration/util.ts"],"names":[],"mappings":"AAGA,OAAO,EAAa,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACf,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAEV,kBAAkB,EAClB,WAAW,EAEX,sBAAsB,EACtB,cAAc,EACd,kBAAkB,EAGlB,QAAQ,EAGR,sBAAsB,EACtB,WAAW,EAEX,gCAAgC,EAChC,UAAU,EACX,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EACV,WAAW,EAIZ,MAAM,0BAA0B,CAAC;AAElC;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,yBAAyB,EAC/B,MAAM,CAAC,EAAE,OAAO,GACf,cAAc,CA4BhB;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,yBAAyB,EAC/B,MAAM,CAAC,EAAE,OAAO,GACf,kBAAkB,CAKpB;AACD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,sBAAsB,GAAG,MAAM,IAAI,QAAQ,CAE7E;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,sBAAsB,GAC7B,MAAM,IAAI,WAAW,CAEvB;AAmHD;;;;;GAKG;AACH,wBAAgB,2CAA2C,CACzD,QAAQ,EAAE,WAAW,EAAE,GACtB,WAAW,EAAE,CAEf;AAqCD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,kBAAkB,EAAE,sBAAsB,GACzC,UAAU,CA0CZ;AAED,KAAK,kBAAkB,GAAG,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG;IACvD,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,YAAY,CAAC,GAAG;QACjD,UAAU,CAAC,EAAE,kBAAkB,CAAC;KACjC,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,yBAAyB,GAC9B,IAAI,IAAI,kBAAkB,CAS5B;AAED;;;;;GAKG;AACH,wBAAgB,4CAA4C,CAC1D,KAAK,EAAE,gCAAgC,GACtC,cAAc,CAiBhB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,YAAY,EAAE,cAAc,EAC5B,YAAY,CAAC,EAAE,MAAM,GACpB,IAAI,CAIN;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,YAAY,EAAE,cAAc,EAC5B,UAAU,CAAC,EAAE,UAAU,GACtB,IAAI,CASN;AAED;;;;;GAKG;AAGH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,gCAAgC,GAAG;IAC5E,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB,CAQA"}
|
|
@@ -1,4 +1,56 @@
|
|
|
1
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
2
|
+
import { isZodSchema } from '@langchain/core/utils/types';
|
|
3
|
+
import { zodToJsonSchema } from 'zod-to-json-schema';
|
|
1
4
|
import { AIMessage, AIMessageChunk } from '@langchain/core/messages';
|
|
5
|
+
/**
|
|
6
|
+
* Maps a {@link ChatOrchestrationToolType} to {@link FunctionObject}.
|
|
7
|
+
* @param tool - Base class for tools that accept input of any shape defined by a Zod schema.
|
|
8
|
+
* @param strict - Whether to enforce strict mode for the function call.
|
|
9
|
+
* @returns The Orchestration chat completion function.
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export function mapToolToOrchestrationFunction(tool, strict) {
|
|
13
|
+
if (isToolDefinitionLike(tool)) {
|
|
14
|
+
return {
|
|
15
|
+
name: tool.function.name,
|
|
16
|
+
description: tool.function.description,
|
|
17
|
+
parameters: tool.function.parameters ?? {
|
|
18
|
+
type: 'object',
|
|
19
|
+
properties: {}
|
|
20
|
+
},
|
|
21
|
+
... // If strict defined in kwargs
|
|
22
|
+
((strict !== undefined && { strict }) ||
|
|
23
|
+
// If strict defined in Orchestration tool function, e.g., set previously when calling `bindTools()`.
|
|
24
|
+
// Notice that LangChain ToolDefinition does not have strict property.
|
|
25
|
+
('strict' in tool.function &&
|
|
26
|
+
tool.function.strict !== undefined && {
|
|
27
|
+
strict: tool.function.strict
|
|
28
|
+
}))
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
// StructuredTool like object
|
|
32
|
+
return {
|
|
33
|
+
name: tool.name,
|
|
34
|
+
description: tool.description,
|
|
35
|
+
parameters: isZodSchema(tool.schema)
|
|
36
|
+
? zodToJsonSchema(tool.schema)
|
|
37
|
+
: tool.schema,
|
|
38
|
+
...(strict !== undefined && { strict })
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Maps a LangChain {@link ChatOrchestrationToolType} to {@link ChatCompletionTool}.
|
|
43
|
+
* @param tool - Base class for tools that accept input of any shape defined by a Zod schema.
|
|
44
|
+
* @param strict - Whether to enforce strict mode for the function call.
|
|
45
|
+
* @returns The Orchestration chat completion tool.
|
|
46
|
+
* @internal
|
|
47
|
+
*/
|
|
48
|
+
export function mapToolToChatCompletionTool(tool, strict) {
|
|
49
|
+
return {
|
|
50
|
+
type: 'function',
|
|
51
|
+
function: mapToolToOrchestrationFunction(tool, strict)
|
|
52
|
+
};
|
|
53
|
+
}
|
|
2
54
|
/**
|
|
3
55
|
* Checks if the object is a {@link Template}.
|
|
4
56
|
* @param object - The object to check.
|
|
@@ -8,6 +60,15 @@ import { AIMessage, AIMessageChunk } from '@langchain/core/messages';
|
|
|
8
60
|
export function isTemplate(object) {
|
|
9
61
|
return 'template' in object;
|
|
10
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Checks if the object is a {@link TemplateRef}.
|
|
65
|
+
* @param object - The object to check.
|
|
66
|
+
* @returns True if the object is a {@link TemplateRef}.
|
|
67
|
+
* @internal
|
|
68
|
+
*/
|
|
69
|
+
export function isTemplateRef(object) {
|
|
70
|
+
return 'template_ref' in object;
|
|
71
|
+
}
|
|
11
72
|
/**
|
|
12
73
|
* Maps {@link BaseMessage} to {@link ChatMessage}.
|
|
13
74
|
* @param message - The message to map.
|
|
@@ -17,55 +78,87 @@ export function isTemplate(object) {
|
|
|
17
78
|
function mapBaseMessageToChatMessage(message) {
|
|
18
79
|
switch (message.getType()) {
|
|
19
80
|
case 'ai':
|
|
20
|
-
return
|
|
81
|
+
return mapAiMessageToOrchestrationAssistantMessage(message);
|
|
21
82
|
case 'human':
|
|
22
83
|
return mapHumanMessageToChatMessage(message);
|
|
23
84
|
case 'system':
|
|
24
|
-
return
|
|
25
|
-
// TODO: As soon as tool messages are supported by orchestration, create mapping function similar to our azure mapping function.
|
|
26
|
-
case 'function':
|
|
85
|
+
return mapSystemMessageToOrchestrationSystemMessage(message);
|
|
27
86
|
case 'tool':
|
|
87
|
+
return mapToolMessageToOrchestrationToolMessage(message);
|
|
28
88
|
default:
|
|
29
89
|
throw new Error(`Unsupported message type: ${message.getType()}`);
|
|
30
90
|
}
|
|
31
91
|
}
|
|
32
92
|
/**
|
|
33
|
-
* Maps LangChain's {@link
|
|
93
|
+
* Maps LangChain's {@link ToolCall} to Orchestration's {@link MessageToolCalls}.
|
|
94
|
+
* @param toolCalls - The {@link ToolCall} to map.
|
|
95
|
+
* @returns The Orchestration {@link MessageToolCalls}.
|
|
96
|
+
*/
|
|
97
|
+
function mapLangChainToolCallToOrchestrationToolCall(toolCalls) {
|
|
98
|
+
if (toolCalls) {
|
|
99
|
+
return toolCalls.map(toolCall => ({
|
|
100
|
+
id: toolCall.id || uuidv4(),
|
|
101
|
+
type: 'function',
|
|
102
|
+
function: {
|
|
103
|
+
name: toolCall.name,
|
|
104
|
+
arguments: JSON.stringify(toolCall.args)
|
|
105
|
+
}
|
|
106
|
+
}));
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Maps LangChain's {@link AIMessage} to Orchestration's {@link AssistantChatMessage}.
|
|
34
111
|
* @param message - The {@link AIMessage} to map.
|
|
35
|
-
* @returns The
|
|
36
|
-
*/
|
|
37
|
-
function
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
mapLangchainToolCallToAzureOpenAiToolCall(message.tool_calls) ??
|
|
41
|
-
message.additional_kwargs.tool_calls;
|
|
42
|
-
*/
|
|
112
|
+
* @returns The Orchestration {@link AssistantChatMessage}.
|
|
113
|
+
*/
|
|
114
|
+
function mapAiMessageToOrchestrationAssistantMessage(message) {
|
|
115
|
+
const tool_calls = mapLangChainToolCallToOrchestrationToolCall(message.tool_calls) ??
|
|
116
|
+
message.additional_kwargs.tool_calls;
|
|
43
117
|
return {
|
|
44
|
-
/* TODO: Tool calls are currently bugged in orchestration, pass these fields as soon as orchestration supports it.
|
|
45
118
|
...(tool_calls?.length ? { tool_calls } : {}),
|
|
46
|
-
function_call: message.additional_kwargs.function_call,
|
|
47
|
-
*/
|
|
48
119
|
content: message.content,
|
|
49
120
|
role: 'assistant'
|
|
50
121
|
};
|
|
51
122
|
}
|
|
52
123
|
function mapHumanMessageToChatMessage(message) {
|
|
124
|
+
if (Array.isArray(message.content)) {
|
|
125
|
+
message.content = message.content.map(content => ({
|
|
126
|
+
...content,
|
|
127
|
+
...(content.type === 'image_url' && typeof content.image_url === 'string'
|
|
128
|
+
? {
|
|
129
|
+
image_url: {
|
|
130
|
+
url: content.image_url
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
: {})
|
|
134
|
+
}));
|
|
135
|
+
}
|
|
53
136
|
return {
|
|
54
137
|
role: 'user',
|
|
55
138
|
content: message.content
|
|
56
139
|
};
|
|
57
140
|
}
|
|
58
|
-
function
|
|
59
|
-
// TODO: Remove as soon as image_url is a supported input for system messages in orchestration.
|
|
141
|
+
function mapSystemMessageToOrchestrationSystemMessage(message) {
|
|
60
142
|
if (typeof message.content !== 'string' &&
|
|
61
|
-
message.content.some(content => content.type
|
|
62
|
-
throw new Error('
|
|
143
|
+
message.content.some(content => content.type !== 'text')) {
|
|
144
|
+
throw new Error('The content type of system message can only be "text" in the Orchestration Client.');
|
|
63
145
|
}
|
|
64
146
|
return {
|
|
65
147
|
role: 'system',
|
|
66
148
|
content: message.content
|
|
67
149
|
};
|
|
68
150
|
}
|
|
151
|
+
function mapToolMessageToOrchestrationToolMessage(message) {
|
|
152
|
+
if (typeof message.content !== 'string' &&
|
|
153
|
+
message.content.some(content => content.type !== 'text')) {
|
|
154
|
+
throw new Error('The content type of tool message can only be "text" in the Orchestration Client.');
|
|
155
|
+
}
|
|
156
|
+
return {
|
|
157
|
+
role: 'tool',
|
|
158
|
+
content: message.content,
|
|
159
|
+
tool_call_id: message.tool_call_id
|
|
160
|
+
};
|
|
161
|
+
}
|
|
69
162
|
/**
|
|
70
163
|
* Maps LangChain messages to orchestration messages.
|
|
71
164
|
* @param messages - The LangChain messages to map.
|
|
@@ -76,11 +169,11 @@ export function mapLangChainMessagesToOrchestrationMessages(messages) {
|
|
|
76
169
|
return messages.map(mapBaseMessageToChatMessage);
|
|
77
170
|
}
|
|
78
171
|
/**
|
|
79
|
-
* Maps {@link
|
|
80
|
-
* @param toolCalls - The {@link
|
|
172
|
+
* Maps {@link MessageToolCalls} to LangChain's {@link ToolCall}.
|
|
173
|
+
* @param toolCalls - The {@link MessageToolCalls} response.
|
|
81
174
|
* @returns The LangChain {@link ToolCall}.
|
|
82
175
|
*/
|
|
83
|
-
function
|
|
176
|
+
function mapOrchestrationToLangChainToolCall(toolCalls) {
|
|
84
177
|
if (toolCalls) {
|
|
85
178
|
return toolCalls.map(toolCall => ({
|
|
86
179
|
id: toolCall.id,
|
|
@@ -118,7 +211,7 @@ export function mapOutputToChatResult(completionResponse) {
|
|
|
118
211
|
text: choice.message.content ?? '',
|
|
119
212
|
message: new AIMessage({
|
|
120
213
|
content: choice.message.content ?? '',
|
|
121
|
-
tool_calls:
|
|
214
|
+
tool_calls: mapOrchestrationToLangChainToolCall(choice.message.tool_calls),
|
|
122
215
|
additional_kwargs: {
|
|
123
216
|
finish_reason: choice.finish_reason,
|
|
124
217
|
index: choice.index,
|
|
@@ -149,6 +242,17 @@ export function mapOutputToChatResult(completionResponse) {
|
|
|
149
242
|
}
|
|
150
243
|
};
|
|
151
244
|
}
|
|
245
|
+
/**
|
|
246
|
+
* @internal
|
|
247
|
+
*/
|
|
248
|
+
export function isToolDefinitionLike(tool) {
|
|
249
|
+
return (typeof tool === 'object' &&
|
|
250
|
+
tool !== null &&
|
|
251
|
+
'type' in tool &&
|
|
252
|
+
'function' in tool &&
|
|
253
|
+
tool.function !== null &&
|
|
254
|
+
'name' in tool.function);
|
|
255
|
+
}
|
|
152
256
|
/**
|
|
153
257
|
* Converts orchestration stream chunk to a LangChain message chunk.
|
|
154
258
|
* @param chunk - The orchestration stream chunk.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/orchestration/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/orchestration/util.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sap-ai-sdk/langchain",
|
|
3
|
-
"version": "1.14.1-
|
|
3
|
+
"version": "1.14.1-20250531013154.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"keywords": [
|
|
@@ -23,10 +23,10 @@
|
|
|
23
23
|
"uuid": "^11.1.0",
|
|
24
24
|
"@langchain/core": "0.3.57",
|
|
25
25
|
"zod-to-json-schema": "^3.24.5",
|
|
26
|
-
"@sap-ai-sdk/ai-api": "^1.14.1-
|
|
27
|
-
"@sap-ai-sdk/core": "^1.14.1-
|
|
28
|
-
"@sap-ai-sdk/foundation-models": "^1.14.1-
|
|
29
|
-
"@sap-ai-sdk/orchestration": "^1.14.1-
|
|
26
|
+
"@sap-ai-sdk/ai-api": "^1.14.1-20250531013154.0",
|
|
27
|
+
"@sap-ai-sdk/core": "^1.14.1-20250531013154.0",
|
|
28
|
+
"@sap-ai-sdk/foundation-models": "^1.14.1-20250531013154.0",
|
|
29
|
+
"@sap-ai-sdk/orchestration": "^1.14.1-20250531013154.0"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"zod": "^3.25.39"
|