@caretakerai/agent 0.0.11 → 0.0.13
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/agent.d.ts +4 -2
- package/dist/agent.js +15 -15
- package/dist/agent.js.map +1 -1
- package/package.json +1 -1
package/dist/agent.d.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { Logger } from 'winston';
|
|
2
2
|
import { BasePromptTemplate } from '@langchain/core/prompts';
|
|
3
|
+
import { BaseLanguageModel } from '@langchain/core/language_models/base';
|
|
3
4
|
import { Action } from './action';
|
|
4
5
|
import { Activity } from './activity';
|
|
5
6
|
import { Optimizer } from './types';
|
|
6
|
-
import { BaseLanguageModel } from '@langchain/core/language_models/base';
|
|
7
7
|
interface AgentPrams {
|
|
8
8
|
name: string;
|
|
9
9
|
description: string;
|
|
10
10
|
llm: BaseLanguageModel;
|
|
11
|
+
isChatModel?: boolean;
|
|
11
12
|
actions: Action[];
|
|
12
13
|
history?: Activity[];
|
|
13
14
|
examples?: Activity[];
|
|
@@ -32,13 +33,14 @@ export declare class Agent implements AgentPrams {
|
|
|
32
33
|
actionSuffix: string;
|
|
33
34
|
maxIterations: number;
|
|
34
35
|
maxRetries: number;
|
|
36
|
+
isChatModel: boolean;
|
|
35
37
|
optimizer: Optimizer;
|
|
36
38
|
logger: Logger;
|
|
37
39
|
template?: BasePromptTemplate;
|
|
38
40
|
static defaults: Partial<AgentPrams>;
|
|
39
41
|
constructor(params: AgentPrams);
|
|
40
42
|
addActivities(...activities: Activity[]): void;
|
|
41
|
-
prompt(params?: Record<string, string>): Promise<
|
|
43
|
+
prompt(params?: Record<string, string>): Promise<void>;
|
|
42
44
|
execute({ attributes, input }: Activity): Promise<string>;
|
|
43
45
|
invoke(params?: Record<string, any>): Promise<string>;
|
|
44
46
|
}
|
package/dist/agent.js
CHANGED
|
@@ -7,7 +7,6 @@ exports.Agent = void 0;
|
|
|
7
7
|
const dedent_1 = __importDefault(require("dedent"));
|
|
8
8
|
const winston_1 = require("winston");
|
|
9
9
|
const prompts_1 = require("@langchain/core/prompts");
|
|
10
|
-
const example_selectors_1 = require("@langchain/core/example_selectors");
|
|
11
10
|
const output_parsers_1 = require("@langchain/core/output_parsers");
|
|
12
11
|
const constants_1 = require("./constants");
|
|
13
12
|
const activity_1 = require("./activity");
|
|
@@ -23,6 +22,7 @@ class Agent {
|
|
|
23
22
|
actionSuffix;
|
|
24
23
|
maxIterations;
|
|
25
24
|
maxRetries;
|
|
25
|
+
isChatModel;
|
|
26
26
|
optimizer;
|
|
27
27
|
logger;
|
|
28
28
|
template;
|
|
@@ -52,6 +52,7 @@ class Agent {
|
|
|
52
52
|
Provide your Thought and Action here.
|
|
53
53
|
`,
|
|
54
54
|
maxRetries: 7,
|
|
55
|
+
isChatModel: false,
|
|
55
56
|
maxIterations: Number.MAX_SAFE_INTEGER,
|
|
56
57
|
logger: (0, winston_1.createLogger)({ transports: [new winston_1.transports.Console()] }),
|
|
57
58
|
examples: [
|
|
@@ -94,7 +95,7 @@ class Agent {
|
|
|
94
95
|
return historyStrings;
|
|
95
96
|
};
|
|
96
97
|
const completions = async () => {
|
|
97
|
-
if (!activities.length &&
|
|
98
|
+
if (!activities.length && !this.isChatModel) {
|
|
98
99
|
return `<${activity_1.ActivityKind.Thought}>`;
|
|
99
100
|
}
|
|
100
101
|
const activitiesStrings = activities.map(a => a.prompt()).join(constants_1.ACTIVITY_SEP);
|
|
@@ -127,7 +128,7 @@ class Agent {
|
|
|
127
128
|
.pipe(new output_parsers_1.StringOutputParser());
|
|
128
129
|
for (let i = 0; i < this.maxRetries; ++i) {
|
|
129
130
|
let completion = await chain.invoke(params ?? {});
|
|
130
|
-
if (!completion.startsWith(`${activity_1.ActivityKind.Thought}`) &&
|
|
131
|
+
if (!completion.startsWith(`${activity_1.ActivityKind.Thought}`) && !this.isChatModel) {
|
|
131
132
|
completion = `<${activity_1.ActivityKind.Thought}>\n${completion}`;
|
|
132
133
|
}
|
|
133
134
|
try {
|
|
@@ -149,20 +150,18 @@ class Agent {
|
|
|
149
150
|
continue;
|
|
150
151
|
}
|
|
151
152
|
const activity = activities.at(-1);
|
|
152
|
-
if (activity
|
|
153
|
+
if (activity.kind === activity_1.ActivityKind.Thought) {
|
|
153
154
|
this.logger.debug(`Retry ${i + 1} due to missing action`);
|
|
154
155
|
continue;
|
|
155
156
|
}
|
|
156
157
|
try {
|
|
157
158
|
const observation = await this.execute(activity);
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
}),
|
|
165
|
-
];
|
|
159
|
+
this.addActivities(...activities, new activity_1.Activity({
|
|
160
|
+
kind: activity_1.ActivityKind.Observation,
|
|
161
|
+
input: observation,
|
|
162
|
+
attributes: { of: activity.attributes.kind }
|
|
163
|
+
}));
|
|
164
|
+
return;
|
|
166
165
|
}
|
|
167
166
|
catch (e) {
|
|
168
167
|
const err = e;
|
|
@@ -171,6 +170,8 @@ class Agent {
|
|
|
171
170
|
input: err.toString(),
|
|
172
171
|
attributes: { of: activity.attributes.kind }
|
|
173
172
|
}));
|
|
173
|
+
this.addActivities(...activities);
|
|
174
|
+
activities = [];
|
|
174
175
|
this.logger.debug(`Retry ${i + 1} due to action error: ${err}`);
|
|
175
176
|
continue;
|
|
176
177
|
}
|
|
@@ -181,7 +182,7 @@ class Agent {
|
|
|
181
182
|
const { kind } = attributes;
|
|
182
183
|
const action = this.actions.find(a => a.kind === kind);
|
|
183
184
|
if (!action) {
|
|
184
|
-
throw new Error(`Action "${kind}" is not allowed.
|
|
185
|
+
throw new Error(`Action "${kind}" is not allowed. Correct your spelling.`);
|
|
185
186
|
}
|
|
186
187
|
const observation = await action._call(input, this);
|
|
187
188
|
return observation;
|
|
@@ -194,8 +195,7 @@ class Agent {
|
|
|
194
195
|
throw new Error('Latest experience must be of Observation kind');
|
|
195
196
|
}
|
|
196
197
|
for (let i = 0; i < this.maxIterations; ++i) {
|
|
197
|
-
|
|
198
|
-
this.addActivities(...activities);
|
|
198
|
+
await this.prompt(params);
|
|
199
199
|
const activity = this.history.at(-2);
|
|
200
200
|
const action = this.actions.find(a => a.kind === activity.attributes.kind);
|
|
201
201
|
if (action.exit) {
|
package/dist/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,qCAA2D;AAC3D,qDAA6E;AAC7E,
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|