@delofarag/ai-utils 1.1.0 → 1.1.1
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/heart/agent.d.ts +6 -6
- package/dist/heart/agent.d.ts.map +1 -1
- package/dist/heart/agent.js +14 -14
- package/dist/heart/agent.js.map +1 -1
- package/dist/heart/tools/BasicToolRegistry.d.ts +4 -4
- package/dist/heart/tools/BasicToolRegistry.d.ts.map +1 -1
- package/dist/heart/tools/BasicToolRegistry.js.map +1 -1
- package/package.json +1 -1
- package/README.md +0 -97
package/dist/heart/agent.d.ts
CHANGED
|
@@ -13,12 +13,7 @@ interface AgentProps<T extends z.ZodObject<any, any>> {
|
|
|
13
13
|
/**
|
|
14
14
|
* CONSTRUCTOR:
|
|
15
15
|
* @example constructor({
|
|
16
|
-
prompt = `Du bist ein hilfreicher Assistent
|
|
17
|
-
WICHTIG:
|
|
18
|
-
- Nutze Tools NUR wenn nötig
|
|
19
|
-
- Nach jedem Tool-Call gib eine finale Antwort
|
|
20
|
-
- Stoppe nach der Antwort, rufe keine Tools mehr auf
|
|
21
|
-
- Wenn du die Antwort hast, gib sie direkt zurück`,
|
|
16
|
+
prompt = `Du bist ein hilfreicher Assistent.`,
|
|
22
17
|
tools,
|
|
23
18
|
llm,
|
|
24
19
|
schema,
|
|
@@ -27,6 +22,11 @@ interface AgentProps<T extends z.ZodObject<any, any>> {
|
|
|
27
22
|
this.prompt = typeof prompt === "string" ? [["system", prompt]] : Array.isArray(prompt) ? prompt.map((p:string)=>{
|
|
28
23
|
return ["system", p]
|
|
29
24
|
}) : []
|
|
25
|
+
this.prompt.push(["system",`WICHTIG:
|
|
26
|
+
- Nutze Tools NUR wenn nötig
|
|
27
|
+
- Nach jedem Tool-Call: Prüfe ob du die vollständige Antwort hast oder ob du noch weitere Tools brauchst
|
|
28
|
+
- Wenn du die vollständige Antwort hast, gib sie direkt zurück und rufe keine weiteren Tools auf
|
|
29
|
+
- Vermeide unnötige Tool-Calls, die dem user nichts bringen`])
|
|
30
30
|
this.tools = tools
|
|
31
31
|
this.llm = llm
|
|
32
32
|
this.schema = schema
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/heart/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,EAAE,qBAAqB,EAAiC,MAAM,YAAY,CAAA;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AASxC,UAAU,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,EAAC,GAAG,CAAC;IAC/C,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,KAAK,EAAE,qBAAqB,EAAE,CAAA;IAC9B,GAAG,EAAE,aAAa,CAAA;IAClB,MAAM,CAAC,EAAE,CAAC,CAAA;IACV,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAC/B;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,EAAC,GAAG,CAAC;IAC7C,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,GAAG,CAAe;IAC1B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,WAAW,CAAyB;IAC5C,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,sBAAsB,CAAY;IAC1C,OAAO,CAAC,iBAAiB,CAAgB;gBAE7B,EACR,
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/heart/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,EAAE,qBAAqB,EAAiC,MAAM,YAAY,CAAA;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AASxC,UAAU,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,EAAC,GAAG,CAAC;IAC/C,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,KAAK,EAAE,qBAAqB,EAAE,CAAA;IAC9B,GAAG,EAAE,aAAa,CAAA;IAClB,MAAM,CAAC,EAAE,CAAC,CAAA;IACV,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAC/B;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,EAAC,GAAG,CAAC;IAC7C,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,GAAG,CAAe;IAC1B,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,MAAM,CAAiC;IAC/C,OAAO,CAAC,WAAW,CAAyB;IAC5C,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,sBAAsB,CAAY;IAC1C,OAAO,CAAC,iBAAiB,CAAgB;gBAE7B,EACR,MAA6C,EAC7C,KAAK,EACL,GAAG,EACH,MAAM,EACN,MAAM,EACT,EAAE,UAAU,CAAC,CAAC,CAAC;IAeH,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,SAAS,SAAS,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAqCrI,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC;IAevJ,UAAU,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO;IAgBrF,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC;IAUjC,YAAY;IAOZ,UAAU,IAAI,OAAO;IAIrB,OAAO,CAAC,IAAI,EAAC,qBAAqB;IAIzC,IAAW,YAAY,IAAI,MAAM,EAAE,CAMlC;CACJ"}
|
package/dist/heart/agent.js
CHANGED
|
@@ -7,12 +7,7 @@ import { structure, stream } from "../helpers";
|
|
|
7
7
|
/**
|
|
8
8
|
* CONSTRUCTOR:
|
|
9
9
|
* @example constructor({
|
|
10
|
-
prompt = `Du bist ein hilfreicher Assistent
|
|
11
|
-
WICHTIG:
|
|
12
|
-
- Nutze Tools NUR wenn nötig
|
|
13
|
-
- Nach jedem Tool-Call gib eine finale Antwort
|
|
14
|
-
- Stoppe nach der Antwort, rufe keine Tools mehr auf
|
|
15
|
-
- Wenn du die Antwort hast, gib sie direkt zurück`,
|
|
10
|
+
prompt = `Du bist ein hilfreicher Assistent.`,
|
|
16
11
|
tools,
|
|
17
12
|
llm,
|
|
18
13
|
schema,
|
|
@@ -21,6 +16,11 @@ import { structure, stream } from "../helpers";
|
|
|
21
16
|
this.prompt = typeof prompt === "string" ? [["system", prompt]] : Array.isArray(prompt) ? prompt.map((p:string)=>{
|
|
22
17
|
return ["system", p]
|
|
23
18
|
}) : []
|
|
19
|
+
this.prompt.push(["system",`WICHTIG:
|
|
20
|
+
- Nutze Tools NUR wenn nötig
|
|
21
|
+
- Nach jedem Tool-Call: Prüfe ob du die vollständige Antwort hast oder ob du noch weitere Tools brauchst
|
|
22
|
+
- Wenn du die vollständige Antwort hast, gib sie direkt zurück und rufe keine weiteren Tools auf
|
|
23
|
+
- Vermeide unnötige Tool-Calls, die dem user nichts bringen`])
|
|
24
24
|
this.tools = tools
|
|
25
25
|
this.llm = llm
|
|
26
26
|
this.schema = schema
|
|
@@ -38,15 +38,15 @@ export class Agent {
|
|
|
38
38
|
rag_tool;
|
|
39
39
|
times_of_added_context = 0;
|
|
40
40
|
should_use_schema = true;
|
|
41
|
-
constructor({ prompt = `Du bist ein hilfreicher Assistent
|
|
42
|
-
WICHTIG:
|
|
43
|
-
- Nutze Tools NUR wenn nötig
|
|
44
|
-
- Nach jedem Tool-Call gib eine finale Antwort
|
|
45
|
-
- Stoppe nach der Antwort, rufe keine Tools mehr auf
|
|
46
|
-
- Wenn du die Antwort hast, gib sie direkt zurück`, tools, llm, schema, memory }) {
|
|
41
|
+
constructor({ prompt = `Du bist ein hilfreicher Assistent.`, tools, llm, schema, memory }) {
|
|
47
42
|
this.prompt = typeof prompt === "string" ? [["system", prompt]] : Array.isArray(prompt) ? prompt.map((p) => {
|
|
48
43
|
return ["system", p];
|
|
49
44
|
}) : [];
|
|
45
|
+
this.prompt.push(["system", `WICHTIG:
|
|
46
|
+
- Nutze Tools NUR wenn nötig
|
|
47
|
+
- Nach jedem Tool-Call: Prüfe ob du die vollständige Antwort hast oder ob du noch weitere Tools brauchst
|
|
48
|
+
- Wenn du die vollständige Antwort hast, gib sie direkt zurück und rufe keine weiteren Tools auf
|
|
49
|
+
- Vermeide unnötige Tool-Calls, die dem user nichts bringen`]);
|
|
50
50
|
this.tools = tools;
|
|
51
51
|
this.llm = llm;
|
|
52
52
|
this.schema = schema;
|
|
@@ -54,9 +54,9 @@ export class Agent {
|
|
|
54
54
|
}
|
|
55
55
|
async invoke(invokeInput) {
|
|
56
56
|
const { thread_id, debug, ...variables } = invokeInput;
|
|
57
|
-
if (this.
|
|
57
|
+
if (this.memory && !thread_id)
|
|
58
58
|
throw new Error("thread_id is required when using a vector store, else no memory is stored");
|
|
59
|
-
if (!this.
|
|
59
|
+
if (!this.memory && thread_id)
|
|
60
60
|
console.warn("thread_id is provided but no vector store is set, so no memory is stored");
|
|
61
61
|
const humanMessages = Object.entries(variables).map(([key, value]) => new HumanMessage(`${key}: ${typeof value === "object" ? JSON.stringify(value) : value}`));
|
|
62
62
|
// Tools für diesen invoke (inkl. RAG falls vorhanden)
|
package/dist/heart/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/heart/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAC1B,OAAO,EAAE,qBAAqB,EAAiC,MAAM,YAAY,CAAA;AAIjF,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAErC,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,YAAY,EAA0B,MAAM,YAAY,CAAA;AACjE,OAAO,EAAE,SAAS,EAAC,MAAM,EAAE,MAAM,YAAY,CAAA;AAY7C;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,OAAO,KAAK;IACN,MAAM,CAA2B;IACjC,KAAK,CAAyB;IAC9B,GAAG,CAAe;IAClB,MAAM,CAAe;IACrB,KAAK,CAAK;IACV,MAAM,CAAiC;IACvC,WAAW,CAAyB;IACpC,QAAQ,CAAmC;IAC3C,sBAAsB,GAAW,CAAC,CAAA;IAClC,iBAAiB,GAAY,IAAI,CAAA;IAEzC,YAAY,EACR,MAAM,GAAG
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/heart/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { DynamicStructuredTool } from "@langchain/core/tools";
|
|
2
2
|
import type { ExtractToolNames } from "./CombinedRegistry";
|
|
3
3
|
import { z } from "zod/v3";
|
|
4
|
-
export interface Tool {
|
|
4
|
+
export interface Tool<T extends z.ZodObject<any, any>> {
|
|
5
5
|
name: string;
|
|
6
6
|
description: string;
|
|
7
|
-
schema:
|
|
8
|
-
func: (
|
|
7
|
+
schema: T;
|
|
8
|
+
func: (input: z.infer<T>) => any;
|
|
9
9
|
}
|
|
10
10
|
/**
|
|
11
11
|
* vergiss nicht 'as const' am ende des input-arrays zu verwenden für perekten autocomplete!!!
|
|
12
12
|
*/
|
|
13
|
-
export declare class ToolRegistry<T extends Tool[]> {
|
|
13
|
+
export declare class ToolRegistry<T extends readonly Tool<z.ZodObject<any, any>>[]> {
|
|
14
14
|
private tools;
|
|
15
15
|
constructor(tools: T);
|
|
16
16
|
getTool(name: ExtractToolNames<T>): DynamicStructuredTool | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasicToolRegistry.d.ts","sourceRoot":"","sources":["../../../src/heart/tools/BasicToolRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,MAAM,WAAW,IAAI;
|
|
1
|
+
{"version":3,"file":"BasicToolRegistry.d.ts","sourceRoot":"","sources":["../../../src/heart/tools/BasicToolRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,MAAM,WAAW,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,EAAC,GAAG,CAAC;IAChD,IAAI,EAAC,MAAM,CAAA;IACX,WAAW,EAAC,MAAM,CAAA;IAClB,MAAM,EAAC,CAAC,CAAA;IACR,IAAI,EAAC,CAAC,KAAK,EAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAA;CACjC;AAED;;GAEG;AACH,qBAAa,YAAY,CAAC,CAAC,SAAS,SAAS,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAC,GAAG,CAAC,CAAC,EAAE;IACrE,OAAO,CAAC,KAAK,CAAwB;gBACzB,KAAK,EAAC,CAAC;IAOZ,OAAO,CAAC,IAAI,EAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,qBAAqB,GAAG,SAAS;IAYpE,QAAQ,CAAC,GAAG,KAAK,EAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE;IAI9C,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,oBAAoB;IAO5B,IAAW,QAAQ,IAAG,qBAAqB,EAAE,CAE5C;CACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasicToolRegistry.js","sourceRoot":"","sources":["../../../src/heart/tools/BasicToolRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAW7D;;GAEG;AACH,MAAM,OAAO,YAAY;IACb,KAAK,CAAwB;IACrC,YAAY,KAAO;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;QACpG,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAC,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAA;QACxF,CAAC;IACL,CAAC;IAEM,OAAO,CAAC,IAAwB;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;QACvF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,wDAAwD,IAAI,eAAe,CAAC,CAAA;QAChG,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAC,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,SAAS,IAAI,2BAA2B,CAAC,CAAA;YACvD,OAAM;QACV,CAAC;QACD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IAEM,QAAQ,CAAC,GAAG,KAA2B;QAC1C,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAChD,CAAC;IAEO,UAAU,
|
|
1
|
+
{"version":3,"file":"BasicToolRegistry.js","sourceRoot":"","sources":["../../../src/heart/tools/BasicToolRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAW7D;;GAEG;AACH,MAAM,OAAO,YAAY;IACb,KAAK,CAAwB;IACrC,YAAY,KAAO;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;QACpG,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAC,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAA;QACxF,CAAC;IACL,CAAC;IAEM,OAAO,CAAC,IAAwB;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;QACvF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,wDAAwD,IAAI,eAAe,CAAC,CAAA;QAChG,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAC,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,SAAS,IAAI,2BAA2B,CAAC,CAAA;YACvD,OAAM;QACV,CAAC;QACD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IAEM,QAAQ,CAAC,GAAG,KAA2B;QAC1C,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAChD,CAAC;IAEO,UAAU,CAAiC,IAAY;QAC3D,OAAO,IAAI,qBAAqB,CAAC;YAC7B,IAAI,EAAC,IAAI,CAAC,IAAI;YACd,WAAW,EAAC,IAAI,CAAC,WAAW;YAC5B,MAAM,EAAC,IAAI,CAAC,MAAM;YAClB,IAAI,EAAC,IAAI,CAAC,IAAI;SACjB,CAAC,CAAA;IAEN,CAAC;IAEO,oBAAoB;QACxB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAC,KAAK,EAAC,EAAE;YAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,CAAA;QAC7C,CAAC,CAAC,CAAA;QACF,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;IAC9C,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,KAAK,CAAA;IACrB,CAAC;CACJ"}
|
package/package.json
CHANGED
package/README.md
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
# @my/ai-utils
|
|
2
|
-
|
|
3
|
-
Utilities for working with LangChain, AI models, and RAG (Retrieval Augmented Generation).
|
|
4
|
-
|
|
5
|
-
## Installation
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
npm install @my/ai-utils
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
**Peer Dependencies:**
|
|
12
|
-
```bash
|
|
13
|
-
npm install @my/supabase-utils
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Usage
|
|
17
|
-
|
|
18
|
-
### Basic LLM Usage
|
|
19
|
-
|
|
20
|
-
```typescript
|
|
21
|
-
import { getLLM } from "@my/ai-utils"
|
|
22
|
-
|
|
23
|
-
const llm = getLLM("groq", {
|
|
24
|
-
chatgroqApiKey: "your-api-key"
|
|
25
|
-
})
|
|
26
|
-
|
|
27
|
-
const response = await llm.invoke("Hello!")
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
### Chain
|
|
31
|
-
|
|
32
|
-
```typescript
|
|
33
|
-
import { Chain } from "@my/ai-utils"
|
|
34
|
-
import { getLLM } from "@my/ai-utils"
|
|
35
|
-
|
|
36
|
-
const llm = getLLM("groq", { chatgroqApiKey: "your-key" })
|
|
37
|
-
|
|
38
|
-
const chain = new Chain({
|
|
39
|
-
llm,
|
|
40
|
-
prompt: [["system", "You are a helpful assistant"]]
|
|
41
|
-
})
|
|
42
|
-
|
|
43
|
-
const result = await chain.invoke({ message: "Hello!" })
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
### Agent
|
|
47
|
-
|
|
48
|
-
```typescript
|
|
49
|
-
import { Agent } from "@my/ai-utils"
|
|
50
|
-
import { getLLM } from "@my/ai-utils"
|
|
51
|
-
|
|
52
|
-
const llm = getLLM("groq", { chatgroqApiKey: "your-key" })
|
|
53
|
-
|
|
54
|
-
const agent = new Agent({
|
|
55
|
-
llm,
|
|
56
|
-
tools: [/* your tools */],
|
|
57
|
-
prompt: [["system", "You are a helpful assistant"]]
|
|
58
|
-
})
|
|
59
|
-
|
|
60
|
-
const result = await agent.invoke({
|
|
61
|
-
input: "What's the weather?",
|
|
62
|
-
thread_id: "thread-1"
|
|
63
|
-
})
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
### Memory Chain
|
|
67
|
-
|
|
68
|
-
```typescript
|
|
69
|
-
import { MemoryChain } from "@my/ai-utils"
|
|
70
|
-
import { getLLM } from "@my/ai-utils"
|
|
71
|
-
|
|
72
|
-
const llm = getLLM("groq", { chatgroqApiKey: "your-key" })
|
|
73
|
-
|
|
74
|
-
const chain = new MemoryChain({
|
|
75
|
-
llm,
|
|
76
|
-
prompt: [["system", "You are a helpful chatbot"]]
|
|
77
|
-
})
|
|
78
|
-
|
|
79
|
-
const result = await chain.invoke({
|
|
80
|
-
input: "Hello!",
|
|
81
|
-
thread_id: "thread-1"
|
|
82
|
-
})
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
## Exports
|
|
86
|
-
|
|
87
|
-
- `getLLM()` - Create LLM instance (Groq, OpenAI, Ollama)
|
|
88
|
-
- `Chain` - Basic chain without memory
|
|
89
|
-
- `MemoryChain` - Chain with memory support
|
|
90
|
-
- `Agent` - Agent with tools and memory
|
|
91
|
-
- `Chatbot` - High-level chatbot interface
|
|
92
|
-
- `structure()` - Structure output with Zod schema
|
|
93
|
-
- `summarize()` - Summarize conversations
|
|
94
|
-
- RAG utilities for vector stores
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|