@ixo/common 1.1.32 → 1.1.34
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/.turbo/turbo-build.log +1 -1
- package/dist/ai/models/openai.d.ts +16 -0
- package/dist/ai/models/openai.d.ts.map +1 -1
- package/dist/ai/models/openai.js +26 -0
- package/dist/ai/models/openai.js.map +1 -1
- package/dist/ai/nodes/generic-chat/generic-chat.node.d.ts +1 -1
- package/dist/ai/semantic-router-factory/create-semantic-router.d.ts +1 -2
- package/dist/ai/semantic-router-factory/create-semantic-router.d.ts.map +1 -1
- package/dist/ai/semantic-router-factory/create-semantic-router.js +2 -3
- package/dist/ai/semantic-router-factory/create-semantic-router.js.map +1 -1
- package/dist/ai/tools/ask-ixo-guru/ask-ixo-guru.d.ts +1 -1
- package/dist/ai/tools/ask-ixo-guru/ask-ixo-guru.d.ts.map +1 -1
- package/dist/ai/tools/parser-action-tool.d.ts +1 -1
- package/dist/ai/tools/parser-action-tool.d.ts.map +1 -1
- package/dist/ai/tools/parser-browser-tool.d.ts +1 -1
- package/dist/ai/tools/parser-browser-tool.d.ts.map +1 -1
- package/dist/ai/tools/scrape-web-page.d.ts +1 -1
- package/dist/ai/tools/scrape-web-page.d.ts.map +1 -1
- package/dist/ai/tools/web-search-tool.d.ts +1 -1
- package/dist/ai/tools/web-search-tool.d.ts.map +1 -1
- package/dist/ai/utils/transformGraphStateMessageToListMessageResponse.d.ts.map +1 -1
- package/dist/ai/utils/transformGraphStateMessageToListMessageResponse.js +3 -4
- package/dist/ai/utils/transformGraphStateMessageToListMessageResponse.js.map +1 -1
- package/dist/services/env/env.service.js.map +1 -1
- package/dist/services/session-manager/session-manager.service.d.ts.map +1 -1
- package/dist/services/session-manager/session-manager.service.js +24 -15
- package/dist/services/session-manager/session-manager.service.js.map +1 -1
- package/package.json +15 -15
- package/src/ai/models/openai.ts +31 -0
- package/src/ai/semantic-router-factory/create-semantic-router.test.ts +0 -3
- package/src/ai/semantic-router-factory/create-semantic-router.ts +2 -7
- package/src/ai/utils/transformGraphStateMessageToListMessageResponse.ts +3 -4
- package/src/services/env/env.service.ts +1 -1
- package/src/services/session-manager/session-manager.service.ts +32 -15
- package/tsconfig.tsbuildinfo +1 -1
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,6 +1,22 @@
|
|
|
1
1
|
import 'dotenv/config';
|
|
2
2
|
import { ChatOpenAI, OpenAIEmbeddings, type ChatOpenAIFields, type ChatOpenAIResponseFormat } from '@langchain/openai';
|
|
3
3
|
import OpenAI, { type ClientOptions } from 'openai';
|
|
4
|
+
export type LLMProvider = 'openrouter' | 'nebius';
|
|
5
|
+
export declare function getLLMProvider(): LLMProvider;
|
|
6
|
+
export declare function getProviderConfig(): {
|
|
7
|
+
provider: "nebius";
|
|
8
|
+
baseURL: string;
|
|
9
|
+
apiKey: string;
|
|
10
|
+
headers: Record<string, string>;
|
|
11
|
+
} | {
|
|
12
|
+
provider: "openrouter";
|
|
13
|
+
baseURL: string;
|
|
14
|
+
apiKey: string;
|
|
15
|
+
headers: {
|
|
16
|
+
'HTTP-Referer': string;
|
|
17
|
+
'X-Title': string;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
4
20
|
declare const getChatOpenAiModel: (params?: ChatOpenAIFields) => ChatOpenAI;
|
|
5
21
|
declare const getOpenAiClient: (params?: ClientOptions) => OpenAI;
|
|
6
22
|
declare const getOpenAiEmbeddings: (params?: ConstructorParameters<typeof OpenAIEmbeddings>[0]) => OpenAIEmbeddings;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/ai/models/openai.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,MAAM,EAAE,EAAE,KAAK,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEpD,QAAA,MAAM,kBAAkB,GAAI,SAAS,gBAAgB,KAAG,UAMpD,CAAC;AAEL,QAAA,MAAM,eAAe,GAAI,SAAS,aAAa,KAAG,MAI9C,CAAC;AAEL,QAAA,MAAM,mBAAmB,GACvB,SAAS,qBAAqB,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,KACzD,gBAKC,CAAC;AAEL,eAAO,MAAM,sBAAsB,GAAI,SAAS,gBAAgB,kEAkB5D,CAAC;AACL,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC;AACpE,YAAY,EAAE,wBAAwB,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/ai/models/openai.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,MAAM,EAAE,EAAE,KAAK,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEpD,MAAM,MAAM,WAAW,GAAG,YAAY,GAAG,QAAQ,CAAC;AAElD,wBAAgB,cAAc,IAAI,WAAW,CAI5C;AAGD,wBAAgB,iBAAiB;;;;aAQZ,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;;;;;;;;;EAa1C;AACD,QAAA,MAAM,kBAAkB,GAAI,SAAS,gBAAgB,KAAG,UAMpD,CAAC;AAEL,QAAA,MAAM,eAAe,GAAI,SAAS,aAAa,KAAG,MAI9C,CAAC;AAEL,QAAA,MAAM,mBAAmB,GACvB,SAAS,qBAAqB,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC,KACzD,gBAKC,CAAC;AAEL,eAAO,MAAM,sBAAsB,GAAI,SAAS,gBAAgB,kEAkB5D,CAAC;AACL,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC;AACpE,YAAY,EAAE,wBAAwB,EAAE,CAAC"}
|
package/dist/ai/models/openai.js
CHANGED
|
@@ -1,6 +1,32 @@
|
|
|
1
1
|
import 'dotenv/config';
|
|
2
2
|
import { ChatOpenAI, OpenAIEmbeddings, } from '@langchain/openai';
|
|
3
3
|
import OpenAI from 'openai';
|
|
4
|
+
export function getLLMProvider() {
|
|
5
|
+
const raw = (process.env.LLM_PROVIDER ?? 'openrouter').toLowerCase();
|
|
6
|
+
if (raw === 'nebius')
|
|
7
|
+
return 'nebius';
|
|
8
|
+
return 'openrouter';
|
|
9
|
+
}
|
|
10
|
+
export function getProviderConfig() {
|
|
11
|
+
const provider = getLLMProvider();
|
|
12
|
+
if (provider === 'nebius') {
|
|
13
|
+
return {
|
|
14
|
+
provider,
|
|
15
|
+
baseURL: 'https://api.tokenfactory.nebius.com/v1/',
|
|
16
|
+
apiKey: process.env.NEBIUS_API_KEY ?? '',
|
|
17
|
+
headers: {},
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
return {
|
|
21
|
+
provider,
|
|
22
|
+
baseURL: 'https://openrouter.ai/api/v1',
|
|
23
|
+
apiKey: process.env.OPEN_ROUTER_API_KEY ?? '',
|
|
24
|
+
headers: {
|
|
25
|
+
'HTTP-Referer': 'oracle-app.com',
|
|
26
|
+
'X-Title': process.env.ORACLE_NAME ?? 'Oracle App',
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
}
|
|
4
30
|
const getChatOpenAiModel = (params) => new ChatOpenAI({
|
|
5
31
|
temperature: 0.2,
|
|
6
32
|
model: 'gpt-4o-mini',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../src/ai/models/openai.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,EACL,UAAU,EACV,gBAAgB,GAGjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,MAA8B,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../src/ai/models/openai.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,EACL,UAAU,EACV,gBAAgB,GAGjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,MAA8B,MAAM,QAAQ,CAAC;AAIpD,MAAM,UAAU,cAAc;IAC5B,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;IACrE,IAAI,GAAG,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IACtC,OAAO,YAAY,CAAC;AACtB,CAAC;AAGD,MAAM,UAAU,iBAAiB;IAC/B,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAC;IAElC,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,OAAO;YACL,QAAQ;YACR,OAAO,EAAE,yCAAyC;YAClD,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE;YACxC,OAAO,EAAE,EAA4B;SACtC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,QAAQ;QACR,OAAO,EAAE,8BAA8B;QACvC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE;QAC7C,OAAO,EAAE;YACP,cAAc,EAAE,gBAAgB;YAChC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,YAAY;SACnD;KACF,CAAC;AACJ,CAAC;AACD,MAAM,kBAAkB,GAAG,CAAC,MAAyB,EAAc,EAAE,CACnE,IAAI,UAAU,CAAC;IACb,WAAW,EAAE,GAAG;IAChB,KAAK,EAAE,aAAa;IACpB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;IAClC,GAAG,MAAM;CACV,CAAC,CAAC;AAEL,MAAM,eAAe,GAAG,CAAC,MAAsB,EAAU,EAAE,CACzD,IAAI,MAAM,CAAC;IACT,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;IAClC,GAAG,MAAM;CACV,CAAC,CAAC;AAEL,MAAM,mBAAmB,GAAG,CAC1B,MAA0D,EACxC,EAAE,CACpB,IAAI,gBAAgB,CAAC;IACnB,KAAK,EAAE,wBAAwB;IAC/B,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;IAClC,GAAG,MAAM;CACV,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,MAAyB,EAAE,EAAE,CAClE,kBAAkB,CAAC;IACjB,WAAW,EAAE,GAAG;IAChB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;IACvC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,gBAAgB;IACxC,GAAG,MAAM;IACT,aAAa,EAAE;QACb,OAAO,EAAE,8BAA8B;QACvC,GAAG,MAAM,EAAE,aAAa;QACxB,cAAc,EAAE;YACd,cAAc,EAAE,gBAAgB;YAChC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,YAAY;SACnD;KACF;IACD,WAAW,EAAE;QACX,kBAAkB,EAAE,IAAI;QACxB,GAAG,MAAM,EAAE,WAAW;KACvB;CACF,CAAC,CAAC;AACL,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -6,7 +6,7 @@ type StateWithMessages<S extends object> = {
|
|
|
6
6
|
messages: BaseMessage[];
|
|
7
7
|
} & S;
|
|
8
8
|
export declare const createGenericChatNode: (inputVariables: InputVariables, tools: (Tool | StructuredTool)[], llm?: import("@langchain/openai").ChatOpenAI<import("@langchain/openai").ChatOpenAICallOptions>) => <S extends object>(state: StateWithMessages<S>, config?: RunnableConfig) => Promise<{
|
|
9
|
-
messages: import("@langchain/core/messages").AIMessageChunk<import("@langchain/core/messages").MessageStructure
|
|
9
|
+
messages: import("@langchain/core/messages").AIMessageChunk<import("@langchain/core/messages").MessageStructure<import("@langchain/core/messages").MessageToolSet>>[];
|
|
10
10
|
}>;
|
|
11
11
|
export {};
|
|
12
12
|
//# sourceMappingURL=generic-chat.node.d.ts.map
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { type LangfuseConfig } from 'langfuse';
|
|
2
1
|
import { zodResponseFormat } from 'openai/helpers/zod';
|
|
3
2
|
import { type EnsureKeys } from '../types.js';
|
|
4
3
|
import { type ParsedChatCompletion } from 'openai/resources/chat/completions.mjs';
|
|
5
|
-
export declare const createSemanticRouter: <K extends string[], R extends Record<string, string> = Record<string, string>>(routes: R, basedOn: K, model?: "gpt-4o-mini" | "gpt-4o" | "gpt-4.1-nano" | "gpt-4.1-mini", isComplex?: boolean) => ((state: EnsureKeys<Record<string, unknown>, K
|
|
4
|
+
export declare const createSemanticRouter: <K extends string[], R extends Record<string, string> = Record<string, string>>(routes: R, basedOn: K, model?: "gpt-4o-mini" | "gpt-4o" | "gpt-4.1-nano" | "gpt-4.1-mini", isComplex?: boolean) => ((state: EnsureKeys<Record<string, unknown>, K>) => Promise<keyof R>);
|
|
6
5
|
export { zodResponseFormat, type ParsedChatCompletion };
|
|
7
6
|
//# sourceMappingURL=create-semantic-router.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-semantic-router.d.ts","sourceRoot":"","sources":["../../../src/ai/semantic-router-factory/create-semantic-router.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create-semantic-router.d.ts","sourceRoot":"","sources":["../../../src/ai/semantic-router-factory/create-semantic-router.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAK9C,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAkBlF,eAAO,MAAM,oBAAoB,GAC/B,CAAC,SAAS,MAAM,EAAE,EAClB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAEzD,QAAQ,CAAC,EACT,SAAS,CAAC,EACV,QACI,aAAa,GACb,QAAQ,GACR,cAAc,GACd,cAA+B,EACnC,mBAAiB,KAChB,CAAC,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,CA2FtE,CAAC;AAEF,OAAO,EAAE,iBAAiB,EAAE,KAAK,oBAAoB,EAAE,CAAC"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Logger } from '@ixo/logger';
|
|
2
2
|
import { PromptTemplate } from '@langchain/core/prompts';
|
|
3
|
-
import { observeOpenAI } from 'langfuse';
|
|
4
3
|
import { OpenAI } from 'openai';
|
|
5
4
|
import { zodResponseFormat } from 'openai/helpers/zod';
|
|
6
5
|
import z from 'zod';
|
|
@@ -12,7 +11,7 @@ export const createSemanticRouter = (routes, basedOn, model = 'gpt-4.1-mini', is
|
|
|
12
11
|
const schema = z.object({
|
|
13
12
|
nextRoute: z.enum(keys, 'The routes that will be used to resolve the path'),
|
|
14
13
|
});
|
|
15
|
-
return async (state
|
|
14
|
+
return async (state) => {
|
|
16
15
|
const selectedValues = {};
|
|
17
16
|
for (const key of basedOn) {
|
|
18
17
|
const stateValue = state[key];
|
|
@@ -25,7 +24,7 @@ export const createSemanticRouter = (routes, basedOn, model = 'gpt-4.1-mini', is
|
|
|
25
24
|
throw new Error(`The state must have a value for the key ${basedOn.toString()}`);
|
|
26
25
|
}
|
|
27
26
|
const prompt = PromptTemplate.fromTemplate(semanticRouterPrompt);
|
|
28
|
-
const client =
|
|
27
|
+
const client = new OpenAI();
|
|
29
28
|
const promptWithState = await prompt.format({
|
|
30
29
|
routes: jsonToYaml(routes),
|
|
31
30
|
state: jsonToYaml(selectedValues),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-semantic-router.js","sourceRoot":"","sources":["../../../src/ai/semantic-router-factory/create-semantic-router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,
|
|
1
|
+
{"version":3,"file":"create-semantic-router.js","sourceRoot":"","sources":["../../../src/ai/semantic-router-factory/create-semantic-router.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask-ixo-guru.d.ts","sourceRoot":"","sources":["../../../../src/ai/tools/ask-ixo-guru/ask-ixo-guru.ts"],"names":[],"mappings":"AACA,OAAO,CAAC,MAAM,KAAK,CAAC;AAGpB,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE;QACP,IAAI,EAAE,IAAI,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,IAAI,EAAE,EAAE,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AA6CF,eAAO,MAAM,cAAc;;;;cAvCf,MAAM;eACL,MAAM;;;;
|
|
1
|
+
{"version":3,"file":"ask-ixo-guru.d.ts","sourceRoot":"","sources":["../../../../src/ai/tools/ask-ixo-guru/ask-ixo-guru.ts"],"names":[],"mappings":"AACA,OAAO,CAAC,MAAM,KAAK,CAAC;AAGpB,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE;QACP,IAAI,EAAE,IAAI,CAAC;QACX,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,IAAI,EAAE,EAAE,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AA6CF,eAAO,MAAM,cAAc;;;;cAvCf,MAAM;eACL,MAAM;;;;yBAkDjB,CAAC"}
|
|
@@ -3,6 +3,6 @@ interface IParseAgActionParams {
|
|
|
3
3
|
description: string;
|
|
4
4
|
schema: Record<string, unknown>;
|
|
5
5
|
}
|
|
6
|
-
export declare function parserActionTool(action: IParseAgActionParams): import("@langchain/core/tools").DynamicStructuredTool<Record<string, unknown>, unknown, unknown, string>;
|
|
6
|
+
export declare function parserActionTool(action: IParseAgActionParams): import("@langchain/core/tools").DynamicStructuredTool<Record<string, unknown>, unknown, unknown, string, string>;
|
|
7
7
|
export {};
|
|
8
8
|
//# sourceMappingURL=parser-action-tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser-action-tool.d.ts","sourceRoot":"","sources":["../../../src/ai/tools/parser-action-tool.ts"],"names":[],"mappings":"AAKA,UAAU,oBAAoB;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAGD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"parser-action-tool.d.ts","sourceRoot":"","sources":["../../../src/ai/tools/parser-action-tool.ts"],"names":[],"mappings":"AAKA,UAAU,oBAAoB;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAGD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,oBAAoB,oHAgD5D"}
|
|
@@ -3,6 +3,6 @@ interface IParserBrowserToolParams {
|
|
|
3
3
|
schema: Record<string, unknown>;
|
|
4
4
|
toolName: string;
|
|
5
5
|
}
|
|
6
|
-
export declare function parserBrowserTool(params: IParserBrowserToolParams): import("@langchain/core/tools").DynamicStructuredTool<Record<string, unknown>, unknown, unknown, unknown>;
|
|
6
|
+
export declare function parserBrowserTool(params: IParserBrowserToolParams): import("@langchain/core/tools").DynamicStructuredTool<Record<string, unknown>, unknown, unknown, unknown, string>;
|
|
7
7
|
export {};
|
|
8
8
|
//# sourceMappingURL=parser-browser-tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser-browser-tool.d.ts","sourceRoot":"","sources":["../../../src/ai/tools/parser-browser-tool.ts"],"names":[],"mappings":"AAKA,UAAU,wBAAwB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,wBAAwB,
|
|
1
|
+
{"version":3,"file":"parser-browser-tool.d.ts","sourceRoot":"","sources":["../../../src/ai/tools/parser-browser-tool.ts"],"names":[],"mappings":"AAKA,UAAU,wBAAwB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,wBAAwB,qHA2CjE"}
|
|
@@ -3,5 +3,5 @@ import { type ChatOpenAI } from '@langchain/openai';
|
|
|
3
3
|
export declare const scrapeWebPage: (url: string) => Promise<Document<{
|
|
4
4
|
source: string;
|
|
5
5
|
}>>;
|
|
6
|
-
export declare const scrapeAndSummarizeWebPage: (url: string, llm: ChatOpenAI) => Promise<Omit<import("langchain").BuiltInState
|
|
6
|
+
export declare const scrapeAndSummarizeWebPage: (url: string, llm: ChatOpenAI) => Promise<Omit<import("langchain").BuiltInState<import("@langchain/core/messages").MessageStructure<import("langchain").ToolsToMessageToolSet<readonly []>>>, "jumpTo">>;
|
|
7
7
|
//# sourceMappingURL=scrape-web-page.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scrape-web-page.d.ts","sourceRoot":"","sources":["../../../src/ai/tools/scrape-web-page.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAErD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,eAAO,MAAM,aAAa,GAAU,KAAK,MAAM;;GAwB9C,CAAC;AAoBF,eAAO,MAAM,yBAAyB,GACpC,KAAK,MAAM,EACX,KAAK,UAAU,
|
|
1
|
+
{"version":3,"file":"scrape-web-page.d.ts","sourceRoot":"","sources":["../../../src/ai/tools/scrape-web-page.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAErD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAGpD,eAAO,MAAM,aAAa,GAAU,KAAK,MAAM;;GAwB9C,CAAC;AAoBF,eAAO,MAAM,yBAAyB,GACpC,KAAK,MAAM,EACX,KAAK,UAAU,2KAqBhB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-search-tool.d.ts","sourceRoot":"","sources":["../../../src/ai/tools/web-search-tool.ts"],"names":[],"mappings":"AAEA,OAAO,CAAC,MAAM,KAAK,CAAC;AAGpB,QAAA,MAAM,aAAa;;;WACU,MAAM;;;
|
|
1
|
+
{"version":3,"file":"web-search-tool.d.ts","sourceRoot":"","sources":["../../../src/ai/tools/web-search-tool.ts"],"names":[],"mappings":"AAEA,OAAO,CAAC,MAAM,KAAK,CAAC;AAGpB,QAAA,MAAM,aAAa;;;WACU,MAAM;;;6BA6BlC,CAAC;AAEF,OAAO,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transformGraphStateMessageToListMessageResponse.d.ts","sourceRoot":"","sources":["../../../src/ai/utils/transformGraphStateMessageToListMessageResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"transformGraphStateMessageToListMessageResponse.d.ts","sourceRoot":"","sources":["../../../src/ai/utils/transformGraphStateMessageToListMessageResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,0BAA0B,CAAC;AAKlC,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,UAAU;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,UAAU,EAAE,CAAC;CACxB;AACD,MAAM,WAAW,qBAAqB;IACpC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,KAAK,CAAC;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;IACH,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,wBAAgB,+CAA+C,CAC7D,QAAQ,EAAE,WAAW,EAAE,GACtB,0BAA0B,CAgE5B;AAED,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,KAAG,MAO5C,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { isUUID } from 'class-validator';
|
|
2
2
|
import crypto from 'node:crypto';
|
|
3
|
+
import { emojify } from 'node-emoji';
|
|
3
4
|
export function transformGraphStateMessageToListMessageResponse(messages) {
|
|
4
5
|
return {
|
|
5
6
|
messages: messages.reduce((acc, message) => {
|
|
@@ -9,12 +10,10 @@ export function transformGraphStateMessageToListMessageResponse(messages) {
|
|
|
9
10
|
!message.additional_kwargs?.isError) {
|
|
10
11
|
const additionalKwargs = message.additional_kwargs;
|
|
11
12
|
const reasoning = additionalKwargs?.reasoning;
|
|
12
|
-
const attachment = message.type === 'human'
|
|
13
|
-
? additionalKwargs?.attachment
|
|
14
|
-
: undefined;
|
|
13
|
+
const attachment = message.type === 'human' ? additionalKwargs?.attachment : undefined;
|
|
15
14
|
acc.push({
|
|
16
15
|
type: message.type === 'ai' ? 'ai' : 'human',
|
|
17
|
-
content: String(message.content),
|
|
16
|
+
content: emojify(String(message.content)),
|
|
18
17
|
id: uuidFromString(message.id ?? String(message.content)),
|
|
19
18
|
toolCalls: message.tool_calls?.map((toolCall) => ({
|
|
20
19
|
name: toolCall.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transformGraphStateMessageToListMessageResponse.js","sourceRoot":"","sources":["../../../src/ai/utils/transformGraphStateMessageToListMessageResponse.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,MAAM,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"transformGraphStateMessageToListMessageResponse.js","sourceRoot":"","sources":["../../../src/ai/utils/transformGraphStateMessageToListMessageResponse.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.service.js","sourceRoot":"","sources":["../../../src/services/env/env.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,EAAE,CAAC;AAET,MAAM,OAAO,UAAU;IACb,MAAM,CAAC,QAAQ,GAAiC,IAAI,CAAC;IAC5C,YAAY,CAAa;IAE1C,YAAoB,MAAS,EAAE,OAAqC;QAClE,IAAI,CAAC;YAEH,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,
|
|
1
|
+
{"version":3,"file":"env.service.js","sourceRoot":"","sources":["../../../src/services/env/env.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,EAAE,CAAC;AAET,MAAM,OAAO,UAAU;IACb,MAAM,CAAC,QAAQ,GAAiC,IAAI,CAAC;IAC5C,YAAY,CAAa;IAE1C,YAAoB,MAAS,EAAE,OAAqC;QAClE,IAAI,CAAC;YAEH,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAA0B,CAAC;QACzE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAChC,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,KAAK,CAAC,CAAC;oBACf,OAAO;gBACT,CAAC;gBACD,MAAM,CAAC,KAAK,CAAC,gCAAgC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;YACjE,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAOM,MAAM,CAAC,UAAU,CAAsB,MAAS;QACrD,IAAI,UAAU,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YACjC,UAAU,CAAC,QAAQ,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,UAAU,CAAC,QAAyB,CAAC;IAC9C,CAAC;IAMM,MAAM,CAAC,WAAW;QACvB,IAAI,UAAU,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,UAAU,CAAC,QAAyB,CAAC;IAC9C,CAAC;IAKM,MAAM;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAMM,GAAG,CAA6B,GAAM;QAC3C,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-manager.service.d.ts","sourceRoot":"","sources":["../../../src/services/session-manager/session-manager.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"session-manager.service.d.ts","sourceRoot":"","sources":["../../../src/services/session-manager/session-manager.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAO/C,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AACrF,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EACjC,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EACjC,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,oBAAoB;IACnC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CACrD;AAED,qBAAa,qBAAqB;IAE9B,OAAO,CAAC,QAAQ,CAAC,WAAW;aACZ,YAAY;IAC5B,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gBAFpB,WAAW,EAAE,oBAAoB,EAClC,YAAY,gBAA8B,EACzC,mBAAmB,CAAC,EAAE,mBAAmB,YAAA;IAGrD,mBAAmB,CAAC,EACzB,eAAe,GAChB,EAAE;QACD,eAAe,EAAE,MAAM,CAAC;KACzB,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE;YAIX,kBAAkB;IAgFnB,wBAAwB,CAAC,EACpC,SAAS,EACT,GAAG,EACH,kBAAkB,GACnB,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;QACZ,kBAAkB,EAAE,MAAM,CAAC;KAC5B,GAAG,OAAO,CAAC,IAAI,CAAC;IAQJ,cAAc,CAAC,EAC1B,SAAS,EACT,GAAG,EACH,QAAQ,EACR,eAAe,EACf,UAAU,EACV,MAAM,EACN,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,aAAa,GACd,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,eAAe,EAAE,MAAM,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,eAAe,CAAC;QAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,WAAW,CAAC;IAsGX,UAAU,CACrB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,eAAe,GAAE,OAAc,GAC9B,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAuDtB,YAAY,CACvB,eAAe,EAAE,mBAAmB,GACnC,OAAO,CAAC,2BAA2B,CAAC;IAsD1B,aAAa,CACxB,gBAAgB,EAAE,oBAAoB,EACtC,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,4BAA4B,CAAC;IA2D3B,aAAa,CACxB,gBAAgB,EAAE,oBAAoB,GACrC,OAAO,CAAC,IAAI,CAAC;CAMjB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Logger } from '@ixo/logger';
|
|
2
2
|
import { MatrixManager } from '@ixo/matrix';
|
|
3
3
|
import { getMatrixHomeServerCroppedForDid } from '@ixo/oracles-chain-client';
|
|
4
|
-
import { getChatOpenAiModel } from '../../ai/index.js';
|
|
4
|
+
import { getChatOpenAiModel, getLLMProvider, getOpenRouterChatModel, getProviderConfig, } from '../../ai/index.js';
|
|
5
5
|
export class SessionManagerService {
|
|
6
6
|
syncService;
|
|
7
7
|
matrixManger;
|
|
@@ -18,15 +18,23 @@ export class SessionManagerService {
|
|
|
18
18
|
if (messages.length === 0) {
|
|
19
19
|
return 'Untitled';
|
|
20
20
|
}
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}
|
|
29
|
-
|
|
21
|
+
const provider = getLLMProvider();
|
|
22
|
+
const config = getProviderConfig();
|
|
23
|
+
const llm = provider === 'openrouter'
|
|
24
|
+
? getOpenRouterChatModel({
|
|
25
|
+
model: 'meta-llama/llama-3.1-8b-instruct',
|
|
26
|
+
temperature: 0.3,
|
|
27
|
+
timeout: 60_000,
|
|
28
|
+
})
|
|
29
|
+
: getChatOpenAiModel({
|
|
30
|
+
model: 'meta-llama/Meta-Llama-3.1-8B-Instruct',
|
|
31
|
+
temperature: 0.3,
|
|
32
|
+
apiKey: config.apiKey,
|
|
33
|
+
timeout: 60_000,
|
|
34
|
+
configuration: {
|
|
35
|
+
baseURL: config.baseURL,
|
|
36
|
+
},
|
|
37
|
+
});
|
|
30
38
|
const response = await llm.invoke(`Based on this messages messages, Add a title for this convo and only based on the messages? MAKE SURE TO ONLY RESPOND WITH THE TITLE.
|
|
31
39
|
|
|
32
40
|
## RESPONSE FORMAT
|
|
@@ -224,11 +232,12 @@ ___________________________________________________________
|
|
|
224
232
|
if (!roomId) {
|
|
225
233
|
throw new Error('Room ID not found');
|
|
226
234
|
}
|
|
227
|
-
const eventId = overrideEventId ??
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
235
|
+
const eventId = overrideEventId ??
|
|
236
|
+
(await this.matrixManger.sendMessage({
|
|
237
|
+
message: 'New Conversation Started',
|
|
238
|
+
roomId,
|
|
239
|
+
isOracleAdmin: true,
|
|
240
|
+
}));
|
|
232
241
|
let userContext;
|
|
233
242
|
if (this.memoryEngineService &&
|
|
234
243
|
createSessionDto.oracleToken &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-manager.service.js","sourceRoot":"","sources":["../../../src/services/session-manager/session-manager.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAE7E,OAAO,
|
|
1
|
+
{"version":3,"file":"session-manager.service.js","sourceRoot":"","sources":["../../../src/services/session-manager/session-manager.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAE7E,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAgB3B,MAAM,OAAO,qBAAqB;IAEb;IACD;IACC;IAHnB,YACmB,WAAiC,EAClC,eAAe,aAAa,CAAC,WAAW,EAAE,EACzC,mBAAyC;QAFzC,gBAAW,GAAX,WAAW,CAAsB;QAClC,iBAAY,GAAZ,YAAY,CAA8B;QACzC,wBAAmB,GAAnB,mBAAmB,CAAsB;IACzD,CAAC;IAEG,mBAAmB,CAAC,EACzB,eAAe,GAGhB;QACC,OAAO,GAAG,eAAe,WAAW,CAAC;IACvC,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,EAC/B,QAAQ,GAGT;QACC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;QAEnC,MAAM,GAAG,GACP,QAAQ,KAAK,YAAY;YACvB,CAAC,CAAC,sBAAsB,CAAC;gBACrB,KAAK,EAAE,kCAAkC;gBACzC,WAAW,EAAE,GAAG;gBAChB,OAAO,EAAE,MAAM;aAChB,CAAC;YACJ,CAAC,CAAC,kBAAkB,CAAC;gBACjB,KAAK,EAAE,uCAAuC;gBAC9C,WAAW,EAAE,GAAG;gBAChB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAE,MAAM;gBACf,aAAa,EAAE;oBACb,OAAO,EAAE,MAAM,CAAC,OAAO;iBACxB;aACF,CAAC,CAAC;QACT,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAC/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA2CE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;;OAEtB,CACF,CAAC;QAEF,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,KAAK,CAAC,wBAAwB,CAAC,EACpC,SAAS,EACT,GAAG,EACH,kBAAkB,GAKnB;QACC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QACvD,EAAE,CAAC,OAAO,CACR,mEAAmE,CACpE,CAAC,GAAG,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;QACrC,OAAO;IACT,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,EAC1B,SAAS,EACT,GAAG,EACH,QAAQ,EACR,eAAe,EACf,UAAU,EACV,MAAM,EACN,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,aAAa,GAYd;QACC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QAEvD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAErE,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,OAAO,GAAgB;gBAC3B,SAAS;gBACT,UAAU;gBACV,KAAK,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC;oBACnC,QAAQ;iBACT,CAAC;gBACF,aAAa,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACvC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,eAAe;gBACf,SAAS;gBACT,WAAW;gBACX,MAAM;gBACN,aAAa;aACd,CAAC;YAGF,EAAE,CAAC,OAAO,CACR;;;;;;;OAOD,CACA,CAAC,GAAG,CACH,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,KAAK,IAAI,IAAI,EACrB,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,eAAe,EACvB,OAAO,CAAC,kBAAkB,IAAI,IAAI,EAClC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,EAChE,OAAO,CAAC,MAAM,IAAI,IAAI,EACtB,OAAO,CAAC,aAAa,IAAI,IAAI,CAC9B,CAAC;YAEF,OAAO,OAAO,CAAC;QACjB,CAAC;QAID,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;QAC/C,MAAM,gBAAgB,GACpB,CAAC,eAAe,CAAC,KAAK;YACtB,eAAe,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,UAAU;YAClD,CAAC,eAAe,CAAC,KAAK,IAAI,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAEjE,MAAM,gBAAgB,GAAG,iBAAiB,IAAI,gBAAgB,CAAC;QAC/D,MAAM,KAAK,GAAG,gBAAgB;YAC5B,CAAC,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC;gBAC5B,QAAQ;aACT,CAAC;YACJ,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC;QAE1B,IAAI,gBAAgB,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;YACxC,IAAI,CAAC,YAAY;iBACd,WAAW,CAAC;gBACX,SAAS,EAAE,SAAS;gBACpB,MAAM;gBACN,OAAO,EAAE,KAAK;gBACd,aAAa,EAAE,IAAI;aACpB,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACb,MAAM,CAAC,KAAK,CAAC,gDAAgD,EAAE,GAAG,CAAC,CAAC;YACtE,CAAC,CAAC,CAAC;QACP,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,cAAc,GAAgB;YAClC,GAAG,eAAe;YAClB,KAAK;YACL,aAAa;YACb,kBAAkB;YAClB,aAAa;SACd,CAAC;QAEF,EAAE,CAAC,OAAO,CACR;;;;KAID,CACA,CAAC,GAAG,CACH,cAAc,CAAC,KAAK,IAAI,IAAI,EAC5B,aAAa,EACb,cAAc,CAAC,kBAAkB,IAAI,IAAI,EACzC,cAAc,CAAC,aAAa,IAAI,IAAI,EACpC,SAAS,CACV,CAAC;QAEF,OAAO,cAAc,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,UAAU,CACrB,SAAiB,EACjB,GAAW,EACX,kBAA2B,IAAI;QAE/B,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QACvD,MAAM,GAAG,GAAG,EAAE;aACX,OAAO,CACN;;;;;8BAKsB,CACvB;aACA,GAAG,CAAC,SAAS,CAcH,CAAC;QAEd,MAAM,eAAe,GAAG,GAAG;YACzB,CAAC,CAAC;gBACE,SAAS,EAAE,GAAG,CAAC,UAAU;gBACzB,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,SAAS;gBAC7B,aAAa,EAAE,GAAG,CAAC,eAAe;gBAClC,SAAS,EAAE,GAAG,CAAC,UAAU;gBACzB,UAAU,EAAE,GAAG,CAAC,WAAW;gBAC3B,SAAS,EAAE,GAAG,CAAC,UAAU;gBACzB,eAAe,EAAE,GAAG,CAAC,iBAAiB;gBACtC,kBAAkB,EAAE,GAAG,CAAC,oBAAoB,IAAI,SAAS;gBACzD,WAAW,EAAE,GAAG,CAAC,YAAY;oBAC3B,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAqB;oBACnD,CAAC,CAAC,SAAS;gBACb,MAAM,EAAE,GAAG,CAAC,OAAO,IAAI,SAAS;gBAChC,aAAa,EAAE,GAAG,CAAC,eAAe,IAAI,SAAS;aAChD;YACH,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,eAAe,CAAC;IACzB,CAAC;IAEM,KAAK,CAAC,YAAY,CACvB,eAAoC;QAEpC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QAGvE,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,IAAI,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,IAAI,CAAC,CAAC;QAG3C,MAAM,IAAI,GAAG,EAAE;aACZ,OAAO,CACN;;;;;;;0BAOkB,CACnB;aACA,GAAG,CAAC,KAAK,EAAE,MAAM,CAalB,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;QAElC,MAAM,QAAQ,GAAkB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACjD,SAAS,EAAE,GAAG,CAAC,UAAU;YACzB,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,SAAS;YAC7B,aAAa,EAAE,GAAG,CAAC,eAAe;YAClC,SAAS,EAAE,GAAG,CAAC,UAAU;YACzB,UAAU,EAAE,GAAG,CAAC,WAAW;YAC3B,SAAS,EAAE,GAAG,CAAC,UAAU;YACzB,eAAe,EAAE,GAAG,CAAC,iBAAiB;YACtC,kBAAkB,EAAE,GAAG,CAAC,oBAAoB,IAAI,SAAS;YACzD,WAAW,EAAE,GAAG,CAAC,YAAY;gBAC3B,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAqB;gBACnD,CAAC,CAAC,SAAS;YACb,MAAM,EAAE,GAAG,CAAC,OAAO,IAAI,SAAS;YAChC,aAAa,EAAE,GAAG,CAAC,eAAe,IAAI,SAAS;SAChD,CAAC,CAAC,CAAC;QAEJ,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC7B,CAAC;IAEM,KAAK,CAAC,aAAa,CACxB,gBAAsC,EACtC,eAAwB;QAExB,MAAM,cAAc,GAClB,gBAAgB,CAAC,UAAU;YAC3B,CAAC,MAAM,gCAAgC,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;QACjE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,6BAA6B,CAAC;YACvE,OAAO,EAAE,gBAAgB,CAAC,GAAG;YAC7B,eAAe,EAAE,gBAAgB,CAAC,eAAe;YACjD,cAAc;SACf,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,OAAO,GACX,eAAe;YACf,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC;gBACnC,OAAO,EAAE,0BAA0B;gBACnC,MAAM;gBACN,aAAa,EAAE,IAAI;aACpB,CAAC,CAAC,CAAC;QAGN,IAAI,WAAwC,CAAC;QAC7C,IACE,IAAI,CAAC,mBAAmB;YACxB,gBAAgB,CAAC,WAAW;YAC5B,gBAAgB,CAAC,SAAS,EAC1B,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBAC1D,WAAW,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,CAAC;oBAC7D,SAAS,EAAE,gBAAgB,CAAC,SAAS;oBACrC,MAAM;oBACN,WAAW,EAAE,gBAAgB,CAAC,WAAW;oBACzC,SAAS,EAAE,gBAAgB,CAAC,SAAS;oBACrC,gBAAgB,EAAE,gBAAgB,CAAC,gBAAgB,IAAI,EAAE;oBACzD,cAAc,EAAE,gBAAgB,CAAC,cAAc,IAAI,EAAE;iBACtD,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;gBACtD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC;YACxC,SAAS,EAAE,OAAO;YAClB,UAAU,EAAE,gBAAgB,CAAC,UAAU;YACvC,GAAG,EAAE,gBAAgB,CAAC,GAAG;YACzB,eAAe,EAAE,gBAAgB,CAAC,eAAe;YACjD,SAAS,EAAE,gBAAgB,CAAC,SAAS;YACrC,QAAQ,EAAE,EAAE;YACZ,MAAM;YACN,WAAW;YACX,aAAa,EAAE,gBAAgB,CAAC,aAAa;SAC9C,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAEM,KAAK,CAAC,aAAa,CACxB,gBAAsC;QAEtC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACxE,EAAE,CAAC,OAAO,CAAC,2CAA2C,CAAC,CAAC,GAAG,CACzD,gBAAgB,CAAC,SAAS,CAC3B,CAAC;IACJ,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ixo/common",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.34",
|
|
4
4
|
"private": false,
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
}
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
|
-
"@langchain/langgraph-checkpoint-validation": "^1.0.
|
|
27
|
+
"@langchain/langgraph-checkpoint-validation": "^1.0.9",
|
|
28
28
|
"@testcontainers/postgresql": "^10.16.0",
|
|
29
29
|
"@types/better-sqlite3": "^7.6.13",
|
|
30
30
|
"@types/node": "^22.7.3",
|
|
@@ -34,20 +34,20 @@
|
|
|
34
34
|
"typescript": "^5.3.3",
|
|
35
35
|
"@ixo/eslint-config": "2.0.0",
|
|
36
36
|
"@ixo/oracles-events": "^1.0.4",
|
|
37
|
-
"@ixo/
|
|
38
|
-
"@ixo/
|
|
37
|
+
"@ixo/typescript-config": "1.0.0",
|
|
38
|
+
"@ixo/vitest-config": "1.0.0"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
41
|
"@cosmjs/proto-signing": "^0.33.0",
|
|
42
42
|
"@cosmjs/stargate": "^0.33.0",
|
|
43
43
|
"@ixo/impactxclient-sdk": "^2.3.1",
|
|
44
|
-
"@langchain/community": "^1.
|
|
45
|
-
"@langchain/core": "1.
|
|
46
|
-
"@langchain/langgraph": "1.
|
|
44
|
+
"@langchain/community": "^1.1.22",
|
|
45
|
+
"@langchain/core": "^1.1.31",
|
|
46
|
+
"@langchain/langgraph": "^1.2.1",
|
|
47
47
|
"@langchain/langgraph-checkpoint": "^1.0.0",
|
|
48
|
-
"@langchain/langgraph-checkpoint-sqlite": "^1.0.
|
|
49
|
-
"@langchain/openai": "^1.
|
|
50
|
-
"@langchain/textsplitters": "^1.0.
|
|
48
|
+
"@langchain/langgraph-checkpoint-sqlite": "^1.0.1",
|
|
49
|
+
"@langchain/openai": "^1.2.12",
|
|
50
|
+
"@langchain/textsplitters": "^1.0.1",
|
|
51
51
|
"@tavily/core": "0.0.2",
|
|
52
52
|
"axios": "^1.7.9",
|
|
53
53
|
"axios-retry": "^4.5.0",
|
|
@@ -56,18 +56,18 @@
|
|
|
56
56
|
"dotenv": "^16.4.5",
|
|
57
57
|
"duck-duck-scrape": "^2.2.5",
|
|
58
58
|
"html-to-text": "9.0.5",
|
|
59
|
-
"langchain": "1.
|
|
60
|
-
"
|
|
61
|
-
"langsmith": "^0.1.61",
|
|
59
|
+
"langchain": "^1.2.30",
|
|
60
|
+
"langsmith": "^0.5.8",
|
|
62
61
|
"mammoth": "1.8.0",
|
|
63
62
|
"openai": "^6.9.1",
|
|
64
63
|
"pdf-parse": "^1.1.1",
|
|
65
64
|
"playwright": "^1.51.0",
|
|
65
|
+
"node-emoji": "^2.2.0",
|
|
66
66
|
"store": "^2.0.12",
|
|
67
|
-
"zod": "^4.
|
|
67
|
+
"zod": "^4.3.6",
|
|
68
68
|
"@ixo/logger": "0.0.2",
|
|
69
69
|
"@ixo/matrix": "1.2.2",
|
|
70
|
-
"@ixo/oracles-chain-client": "1.2.
|
|
70
|
+
"@ixo/oracles-chain-client": "1.2.1"
|
|
71
71
|
},
|
|
72
72
|
"scripts": {
|
|
73
73
|
"build": "tsc && tsc-alias",
|
package/src/ai/models/openai.ts
CHANGED
|
@@ -8,6 +8,37 @@ import {
|
|
|
8
8
|
} from '@langchain/openai';
|
|
9
9
|
import OpenAI, { type ClientOptions } from 'openai';
|
|
10
10
|
|
|
11
|
+
export type LLMProvider = 'openrouter' | 'nebius';
|
|
12
|
+
|
|
13
|
+
export function getLLMProvider(): LLMProvider {
|
|
14
|
+
const raw = (process.env.LLM_PROVIDER ?? 'openrouter').toLowerCase();
|
|
15
|
+
if (raw === 'nebius') return 'nebius';
|
|
16
|
+
return 'openrouter';
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/** Provider-aware base URL and API key. */
|
|
20
|
+
export function getProviderConfig() {
|
|
21
|
+
const provider = getLLMProvider();
|
|
22
|
+
|
|
23
|
+
if (provider === 'nebius') {
|
|
24
|
+
return {
|
|
25
|
+
provider,
|
|
26
|
+
baseURL: 'https://api.tokenfactory.nebius.com/v1/',
|
|
27
|
+
apiKey: process.env.NEBIUS_API_KEY ?? '',
|
|
28
|
+
headers: {} as Record<string, string>,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
return {
|
|
33
|
+
provider,
|
|
34
|
+
baseURL: 'https://openrouter.ai/api/v1',
|
|
35
|
+
apiKey: process.env.OPEN_ROUTER_API_KEY ?? '',
|
|
36
|
+
headers: {
|
|
37
|
+
'HTTP-Referer': 'oracle-app.com',
|
|
38
|
+
'X-Title': process.env.ORACLE_NAME ?? 'Oracle App',
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
}
|
|
11
42
|
const getChatOpenAiModel = (params?: ChatOpenAIFields): ChatOpenAI =>
|
|
12
43
|
new ChatOpenAI({
|
|
13
44
|
temperature: 0.2,
|
|
@@ -2,9 +2,6 @@ import { createSemanticRouter } from './create-semantic-router.js';
|
|
|
2
2
|
|
|
3
3
|
const parse = vi.fn();
|
|
4
4
|
const create = vi.fn();
|
|
5
|
-
vi.mock('langfuse', () => ({
|
|
6
|
-
observeOpenAI: vi.fn((client: unknown) => client),
|
|
7
|
-
}));
|
|
8
5
|
vi.mock('openai', () => ({
|
|
9
6
|
OpenAI: vi.fn().mockImplementation(() => {
|
|
10
7
|
function fn(): unknown {
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Logger } from '@ixo/logger';
|
|
2
2
|
import { PromptTemplate } from '@langchain/core/prompts';
|
|
3
|
-
import { type LangfuseConfig, observeOpenAI } from 'langfuse';
|
|
4
3
|
import { OpenAI } from 'openai';
|
|
5
4
|
import { zodResponseFormat } from 'openai/helpers/zod';
|
|
6
5
|
import z from 'zod';
|
|
@@ -39,10 +38,7 @@ export const createSemanticRouter = <
|
|
|
39
38
|
| 'gpt-4.1-nano'
|
|
40
39
|
| 'gpt-4.1-mini' = 'gpt-4.1-mini',
|
|
41
40
|
isComplex = false,
|
|
42
|
-
): ((
|
|
43
|
-
state: EnsureKeys<Record<string, unknown>, K>,
|
|
44
|
-
traceConfig?: LangfuseConfig,
|
|
45
|
-
) => Promise<keyof R>) => {
|
|
41
|
+
): ((state: EnsureKeys<Record<string, unknown>, K>) => Promise<keyof R>) => {
|
|
46
42
|
const keys = validateRoutes(routes, basedOn);
|
|
47
43
|
const schema = z.object({
|
|
48
44
|
nextRoute: z.enum(
|
|
@@ -52,7 +48,6 @@ export const createSemanticRouter = <
|
|
|
52
48
|
});
|
|
53
49
|
return async <T extends Record<string, unknown>>(
|
|
54
50
|
state: EnsureKeys<T, K>,
|
|
55
|
-
traceConfig?: LangfuseConfig,
|
|
56
51
|
): Promise<keyof R> => {
|
|
57
52
|
const selectedValues = {} as Record<string, string | object>;
|
|
58
53
|
for (const key of basedOn) {
|
|
@@ -72,7 +67,7 @@ export const createSemanticRouter = <
|
|
|
72
67
|
// find the route that matches the state
|
|
73
68
|
const prompt = PromptTemplate.fromTemplate(semanticRouterPrompt);
|
|
74
69
|
|
|
75
|
-
const client =
|
|
70
|
+
const client = new OpenAI();
|
|
76
71
|
const promptWithState = await prompt.format({
|
|
77
72
|
routes: jsonToYaml(routes),
|
|
78
73
|
state: jsonToYaml(selectedValues),
|
|
@@ -5,6 +5,7 @@ import {
|
|
|
5
5
|
} from '@langchain/core/messages';
|
|
6
6
|
import { isUUID } from 'class-validator';
|
|
7
7
|
import crypto from 'node:crypto';
|
|
8
|
+
import { emojify } from 'node-emoji';
|
|
8
9
|
|
|
9
10
|
interface ToolCall {
|
|
10
11
|
name: string;
|
|
@@ -68,13 +69,11 @@ export function transformGraphStateMessageToListMessageResponse(
|
|
|
68
69
|
|
|
69
70
|
// Extract attachment metadata for human messages
|
|
70
71
|
const attachment =
|
|
71
|
-
message.type === 'human'
|
|
72
|
-
? additionalKwargs?.attachment
|
|
73
|
-
: undefined;
|
|
72
|
+
message.type === 'human' ? additionalKwargs?.attachment : undefined;
|
|
74
73
|
|
|
75
74
|
acc.push({
|
|
76
75
|
type: message.type === 'ai' ? 'ai' : 'human',
|
|
77
|
-
content: String(message.content),
|
|
76
|
+
content: emojify(String(message.content)),
|
|
78
77
|
id: uuidFromString(message.id ?? String(message.content)),
|
|
79
78
|
toolCalls: (message as AIMessage).tool_calls?.map((toolCall) => ({
|
|
80
79
|
name: toolCall.name,
|
|
@@ -11,7 +11,7 @@ export class EnvService<T extends z.ZodType> {
|
|
|
11
11
|
private constructor(schema: T, onError?: (error: z.ZodError) => void) {
|
|
12
12
|
try {
|
|
13
13
|
// Parse and validate environment variables
|
|
14
|
-
this.validatedEnv = schema.parse(process.env) as z.infer<T>;
|
|
14
|
+
this.validatedEnv = schema.parse(process.env) as unknown as z.infer<T>;
|
|
15
15
|
} catch (error) {
|
|
16
16
|
if (error instanceof z.ZodError) {
|
|
17
17
|
if (onError) {
|