@luanpoppe/ai 1.0.1 → 1.0.3
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 +8 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
- package/src/index.ts +18 -12
- package/tsconfig.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -5,11 +5,12 @@ import { MessageInput } from "./langchain/messages";
|
|
|
5
5
|
import { AgentMiddleware, BaseMessage } from "langchain";
|
|
6
6
|
import { ClientTool, ServerTool } from "@langchain/core/tools";
|
|
7
7
|
import { LangchainMessages } from "./langchain/messages";
|
|
8
|
+
import { LangchainTools } from "./langchain/tools";
|
|
8
9
|
type LangchainConstructor = {
|
|
9
10
|
googleGeminiToken?: string;
|
|
10
11
|
openAIApiKey?: string;
|
|
11
12
|
};
|
|
12
|
-
export type
|
|
13
|
+
export type LangchainCallParams = {
|
|
13
14
|
aiModel: AIModelNames;
|
|
14
15
|
messages: MessageInput[];
|
|
15
16
|
systemPrompt?: string;
|
|
@@ -17,24 +18,24 @@ export type CallParams = {
|
|
|
17
18
|
middleware?: AgentMiddleware[];
|
|
18
19
|
tools?: (ServerTool | ClientTool)[];
|
|
19
20
|
};
|
|
20
|
-
export type
|
|
21
|
+
export type LangchainCallReturn = Promise<{
|
|
21
22
|
text: string;
|
|
22
23
|
messages: BaseMessage[];
|
|
23
24
|
}>;
|
|
24
|
-
export type
|
|
25
|
+
export type LangchainCallStructuredOutputParams<T extends z.ZodSchema> = LangchainCallParams & {
|
|
25
26
|
outputSchema: T;
|
|
26
27
|
};
|
|
27
|
-
export type
|
|
28
|
+
export type LangchainCallStructuredOutputReturn<T> = Promise<{
|
|
28
29
|
response: z.infer<T>;
|
|
29
30
|
}>;
|
|
30
31
|
export declare class Langchain {
|
|
31
32
|
private tokens;
|
|
32
33
|
constructor(tokens: LangchainConstructor);
|
|
33
|
-
call(params:
|
|
34
|
-
callStructuredOutput<T extends z.ZodSchema>(params:
|
|
34
|
+
call(params: LangchainCallParams): LangchainCallReturn;
|
|
35
|
+
callStructuredOutput<T extends z.ZodSchema>(params: LangchainCallStructuredOutputParams<T>): LangchainCallStructuredOutputReturn<typeof params.outputSchema>;
|
|
35
36
|
private getModel;
|
|
36
37
|
private standardAgent;
|
|
37
38
|
private standardMiddlewares;
|
|
38
39
|
}
|
|
39
|
-
export { LangchainModels, LangchainMessages };
|
|
40
|
+
export { LangchainModels, LangchainMessages, LangchainTools };
|
|
40
41
|
//# 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,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EACL,eAAe,EACf,WAAW,EAIZ,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EACL,eAAe,EACf,WAAW,EAIZ,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,KAAK,oBAAoB,GAAG;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,eAAe,EAAE,CAAC;IAC/B,KAAK,CAAC,EAAE,CAAC,UAAU,GAAG,UAAU,CAAC,EAAE,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB,CAAC,CAAC;AAEH,MAAM,MAAM,mCAAmC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,IACnE,mBAAmB,GAAG;IACpB,YAAY,EAAE,CAAC,CAAC;CACjB,CAAC;AAEJ,MAAM,MAAM,mCAAmC,CAAC,CAAC,IAAI,OAAO,CAAC;IAC3D,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;CACtB,CAAC,CAAC;AAEH,qBAAa,SAAS;IACR,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,oBAAoB;IAE1C,IAAI,CAAC,MAAM,EAAE,mBAAmB,GAAG,mBAAmB;IAetD,oBAAoB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,EAC9C,MAAM,EAAE,mCAAmC,CAAC,CAAC,CAAC,GAC7C,mCAAmC,CAAC,OAAO,MAAM,CAAC,YAAY,CAAC;IAiBlE,OAAO,CAAC,QAAQ;IAkBhB,OAAO,CAAC,aAAa;IAkBrB,OAAO,CAAC,mBAAmB;CAU5B;AAED,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,cAAc,EAAE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LangchainMessages = exports.LangchainModels = exports.Langchain = void 0;
|
|
3
|
+
exports.LangchainTools = exports.LangchainMessages = exports.LangchainModels = exports.Langchain = void 0;
|
|
4
4
|
const models_1 = require("./langchain/models");
|
|
5
5
|
Object.defineProperty(exports, "LangchainModels", { enumerable: true, get: function () { return models_1.LangchainModels; } });
|
|
6
6
|
const langchain_1 = require("langchain");
|
|
7
7
|
const messages_1 = require("./langchain/messages");
|
|
8
8
|
Object.defineProperty(exports, "LangchainMessages", { enumerable: true, get: function () { return messages_1.LangchainMessages; } });
|
|
9
|
+
const tools_1 = require("./langchain/tools");
|
|
10
|
+
Object.defineProperty(exports, "LangchainTools", { enumerable: true, get: function () { return tools_1.LangchainTools; } });
|
|
9
11
|
class Langchain {
|
|
10
12
|
tokens;
|
|
11
13
|
constructor(tokens) {
|
|
@@ -18,7 +20,7 @@ class Langchain {
|
|
|
18
20
|
});
|
|
19
21
|
const response = await agent.invoke({ messages });
|
|
20
22
|
return {
|
|
21
|
-
text: response.messages
|
|
23
|
+
text: response.messages.at(-1)?.text ?? "Empty response from the model",
|
|
22
24
|
messages: response.messages,
|
|
23
25
|
};
|
|
24
26
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,+CAAqD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@luanpoppe/ai",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"keywords": [],
|
|
@@ -11,12 +11,12 @@
|
|
|
11
11
|
"@langchain/google-genai": "^2.1.3",
|
|
12
12
|
"@langchain/openai": "^1.2.0",
|
|
13
13
|
"langchain": "^1.2.3",
|
|
14
|
-
"typescript": "^5.9.3",
|
|
15
14
|
"zod": "^4.2.1"
|
|
16
15
|
},
|
|
17
16
|
"devDependencies": {
|
|
18
17
|
"@types/node": "^25.0.3",
|
|
19
|
-
"tsx": "^4.21.0"
|
|
18
|
+
"tsx": "^4.21.0",
|
|
19
|
+
"typescript": "^5.9.3"
|
|
20
20
|
},
|
|
21
21
|
"scripts": {
|
|
22
22
|
"build": "tsc"
|
package/src/index.ts
CHANGED
|
@@ -11,13 +11,14 @@ import {
|
|
|
11
11
|
} from "langchain";
|
|
12
12
|
import { ClientTool, ServerTool } from "@langchain/core/tools";
|
|
13
13
|
import { LangchainMessages } from "./langchain/messages";
|
|
14
|
+
import { LangchainTools } from "./langchain/tools";
|
|
14
15
|
|
|
15
16
|
type LangchainConstructor = {
|
|
16
17
|
googleGeminiToken?: string;
|
|
17
18
|
openAIApiKey?: string;
|
|
18
19
|
};
|
|
19
20
|
|
|
20
|
-
export type
|
|
21
|
+
export type LangchainCallParams = {
|
|
21
22
|
aiModel: AIModelNames;
|
|
22
23
|
messages: MessageInput[];
|
|
23
24
|
systemPrompt?: string;
|
|
@@ -26,23 +27,24 @@ export type CallParams = {
|
|
|
26
27
|
tools?: (ServerTool | ClientTool)[];
|
|
27
28
|
};
|
|
28
29
|
|
|
29
|
-
export type
|
|
30
|
+
export type LangchainCallReturn = Promise<{
|
|
30
31
|
text: string;
|
|
31
32
|
messages: BaseMessage[];
|
|
32
33
|
}>;
|
|
33
34
|
|
|
34
|
-
export type
|
|
35
|
-
|
|
36
|
-
|
|
35
|
+
export type LangchainCallStructuredOutputParams<T extends z.ZodSchema> =
|
|
36
|
+
LangchainCallParams & {
|
|
37
|
+
outputSchema: T;
|
|
38
|
+
};
|
|
37
39
|
|
|
38
|
-
export type
|
|
40
|
+
export type LangchainCallStructuredOutputReturn<T> = Promise<{
|
|
39
41
|
response: z.infer<T>;
|
|
40
42
|
}>;
|
|
41
43
|
|
|
42
44
|
export class Langchain {
|
|
43
45
|
constructor(private tokens: LangchainConstructor) {}
|
|
44
46
|
|
|
45
|
-
async call(params:
|
|
47
|
+
async call(params: LangchainCallParams): LangchainCallReturn {
|
|
46
48
|
const { messages } = params;
|
|
47
49
|
|
|
48
50
|
const agent = createAgent({
|
|
@@ -52,14 +54,16 @@ export class Langchain {
|
|
|
52
54
|
const response = await agent.invoke({ messages });
|
|
53
55
|
|
|
54
56
|
return {
|
|
55
|
-
text:
|
|
57
|
+
text:
|
|
58
|
+
(response.messages.at(-1)?.content as string) ??
|
|
59
|
+
"Empty response from the model",
|
|
56
60
|
messages: response.messages,
|
|
57
61
|
};
|
|
58
62
|
}
|
|
59
63
|
|
|
60
64
|
async callStructuredOutput<T extends z.ZodSchema>(
|
|
61
|
-
params:
|
|
62
|
-
):
|
|
65
|
+
params: LangchainCallStructuredOutputParams<T>
|
|
66
|
+
): LangchainCallStructuredOutputReturn<typeof params.outputSchema> {
|
|
63
67
|
const { outputSchema, messages } = params;
|
|
64
68
|
|
|
65
69
|
const agent = createAgent({
|
|
@@ -94,7 +98,9 @@ export class Langchain {
|
|
|
94
98
|
throw new Error("Model not supported");
|
|
95
99
|
}
|
|
96
100
|
|
|
97
|
-
private standardAgent(
|
|
101
|
+
private standardAgent(
|
|
102
|
+
params: LangchainCallParams
|
|
103
|
+
): Parameters<typeof createAgent>[0] {
|
|
98
104
|
const { aiModel, systemPrompt, maxRetries = 3, middleware, tools } = params;
|
|
99
105
|
|
|
100
106
|
const model = this.getModel(aiModel);
|
|
@@ -122,4 +128,4 @@ export class Langchain {
|
|
|
122
128
|
}
|
|
123
129
|
}
|
|
124
130
|
|
|
125
|
-
export { LangchainModels, LangchainMessages };
|
|
131
|
+
export { LangchainModels, LangchainMessages, LangchainTools };
|