@mikugg/guidance 0.15.0 → 0.17.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 +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -5
- package/dist/lib/Agent.d.ts +24 -0
- package/dist/lib/Agent.d.ts.map +1 -0
- package/dist/lib/Agent.js +45 -0
- package/dist/lib/template.d.ts +5 -5
- package/dist/lib/template.d.ts.map +1 -1
- package/dist/lib/template.js +8 -8
- package/dist/lib/token-generator.d.ts +7 -7
- package/dist/lib/token-generator.d.ts.map +1 -1
- package/dist/lib/token-generator.js +5 -5
- package/package.json +3 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
import * as TokenGenerator from "./lib/token-generator";
|
|
1
|
+
import * as Agents from "./lib/Agent";
|
|
3
2
|
import * as Template from "./lib/template";
|
|
4
|
-
|
|
3
|
+
import * as TokenGenerator from "./lib/token-generator";
|
|
4
|
+
import * as Tokenizer from "./lib/tokenizer";
|
|
5
|
+
export { Agents, Template, TokenGenerator, Tokenizer };
|
|
5
6
|
//# 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,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,cAAc,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -23,10 +23,12 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.
|
|
27
|
-
const
|
|
28
|
-
exports.
|
|
29
|
-
const TokenGenerator = __importStar(require("./lib/token-generator"));
|
|
30
|
-
exports.TokenGenerator = TokenGenerator;
|
|
26
|
+
exports.Tokenizer = exports.TokenGenerator = exports.Template = exports.Agents = void 0;
|
|
27
|
+
const Agents = __importStar(require("./lib/Agent"));
|
|
28
|
+
exports.Agents = Agents;
|
|
31
29
|
const Template = __importStar(require("./lib/template"));
|
|
32
30
|
exports.Template = Template;
|
|
31
|
+
const TokenGenerator = __importStar(require("./lib/token-generator"));
|
|
32
|
+
exports.TokenGenerator = TokenGenerator;
|
|
33
|
+
const Tokenizer = __importStar(require("./lib/tokenizer"));
|
|
34
|
+
exports.Tokenizer = Tokenizer;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface AgentPromptConfiguration<AgentInputs extends string[], AgentOutputs extends string[]> {
|
|
2
|
+
instruction: string;
|
|
3
|
+
description: string;
|
|
4
|
+
shotTemplate: {
|
|
5
|
+
input: string;
|
|
6
|
+
output: string;
|
|
7
|
+
};
|
|
8
|
+
shots: {
|
|
9
|
+
inputs: Record<AgentInputs[number], string>;
|
|
10
|
+
outputs: Record<AgentOutputs[number], string>;
|
|
11
|
+
}[];
|
|
12
|
+
instructSettings?: {
|
|
13
|
+
system?: string;
|
|
14
|
+
instruction?: string;
|
|
15
|
+
input?: string;
|
|
16
|
+
output?: string;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export declare class AgentPrompt<AgentInputs extends string[], AgentOutputs extends string[]> {
|
|
20
|
+
private configuration;
|
|
21
|
+
constructor(configuration: AgentPromptConfiguration<AgentInputs, AgentOutputs>);
|
|
22
|
+
generatePrompt(inputs: Record<AgentInputs[number], string>): string;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=Agent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../src/lib/Agent.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,wBAAwB,CAEvC,WAAW,SAAS,MAAM,EAAE,EAC5B,YAAY,SAAS,MAAM,EAAE;IAE7B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,EAAE;QACL,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;QAC5C,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;KAC/C,EAAE,CAAC;IACJ,gBAAgB,CAAC,EAAE;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,qBAAa,WAAW,CACtB,WAAW,SAAS,MAAM,EAAE,EAC5B,YAAY,SAAS,MAAM,EAAE;IAE7B,OAAO,CAAC,aAAa,CAOnB;gBAGA,aAAa,EAAE,wBAAwB,CAAC,WAAW,EAAE,YAAY,CAAC;IAc7D,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,MAAM;CA+B3E"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AgentPrompt = void 0;
|
|
4
|
+
function replaceTemplate(template, key, value) {
|
|
5
|
+
let regex = new RegExp(`{{GEN ${key}[^}]*}}`, "g");
|
|
6
|
+
template = template.replace(regex, value);
|
|
7
|
+
regex = new RegExp(`{{SEL ${key}[^}]*}}`, "g");
|
|
8
|
+
return template.replace(regex, value);
|
|
9
|
+
}
|
|
10
|
+
class AgentPrompt {
|
|
11
|
+
constructor(configuration) {
|
|
12
|
+
this.configuration = Object.assign(Object.assign({}, configuration), { instructSettings: Object.assign({ system: "", instruction: "\n### Instruction:\n", input: "\n### Input:\n", output: "\n### Response:\n" }, configuration.instructSettings) });
|
|
13
|
+
}
|
|
14
|
+
generatePrompt(inputs) {
|
|
15
|
+
let prompt = this.configuration.instructSettings.system;
|
|
16
|
+
prompt += this.configuration.description;
|
|
17
|
+
prompt += this.configuration.instructSettings.instruction;
|
|
18
|
+
prompt += this.configuration.instruction;
|
|
19
|
+
this.configuration.shots.forEach((shot) => {
|
|
20
|
+
prompt += this.configuration.instructSettings.input;
|
|
21
|
+
prompt += this.configuration.shotTemplate.input;
|
|
22
|
+
Object.keys(shot.inputs).forEach((key) => {
|
|
23
|
+
const value = shot.inputs[key];
|
|
24
|
+
prompt = prompt.replace(new RegExp(`{{${key}}}`, "g"), value);
|
|
25
|
+
});
|
|
26
|
+
prompt += this.configuration.instructSettings.output;
|
|
27
|
+
prompt += this.configuration.shotTemplate.output;
|
|
28
|
+
Object.keys(shot.outputs).forEach((key) => {
|
|
29
|
+
const value = shot.outputs[key];
|
|
30
|
+
prompt = prompt.replace(new RegExp(`{{${key}}}`, "g"), value);
|
|
31
|
+
prompt = replaceTemplate(prompt, key, value);
|
|
32
|
+
});
|
|
33
|
+
});
|
|
34
|
+
prompt += this.configuration.instructSettings.input;
|
|
35
|
+
prompt += this.configuration.shotTemplate.input;
|
|
36
|
+
Object.keys(inputs).forEach((key) => {
|
|
37
|
+
const value = inputs[key];
|
|
38
|
+
prompt = prompt.replace(new RegExp(`{{${key}}}`, "g"), value);
|
|
39
|
+
});
|
|
40
|
+
prompt += this.configuration.instructSettings.output;
|
|
41
|
+
prompt += this.configuration.shotTemplate.output;
|
|
42
|
+
return prompt;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.AgentPrompt = AgentPrompt;
|
package/dist/lib/template.d.ts
CHANGED
|
@@ -4,14 +4,14 @@ export declare enum TEMPLATE_METHODS {
|
|
|
4
4
|
SEL = "SEL",
|
|
5
5
|
GEN = "GEN"
|
|
6
6
|
}
|
|
7
|
-
export declare class TemplateProcessor {
|
|
7
|
+
export declare class TemplateProcessor<TRequestOptions = undefined> {
|
|
8
8
|
private tokenizer;
|
|
9
9
|
private generator;
|
|
10
|
-
constructor(tokenizer: AbstractTokenizer, generator: AbstractTokenGenerator);
|
|
10
|
+
constructor(tokenizer: AbstractTokenizer, generator: AbstractTokenGenerator<TRequestOptions>);
|
|
11
11
|
setTokenizer(tokenizer: AbstractTokenizer): void;
|
|
12
|
-
setGenerator(generator: AbstractTokenGenerator): void;
|
|
13
|
-
processTemplate(template: string, variables: Map<string, string | string[]
|
|
14
|
-
processTemplateStream(template: string, variables: Map<string, string | string[]
|
|
12
|
+
setGenerator(generator: AbstractTokenGenerator<TRequestOptions>): void;
|
|
13
|
+
processTemplate(template: string, variables: Map<string, string | string[]>, reqOptions?: TRequestOptions): Promise<Map<string, string>>;
|
|
14
|
+
processTemplateStream(template: string, variables: Map<string, string | string[]>, reqOptions?: TRequestOptions): AsyncGenerator<Map<string, string>, void>;
|
|
15
15
|
private findAllIndexes;
|
|
16
16
|
}
|
|
17
17
|
//# sourceMappingURL=template.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/lib/template.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAG3D,oBAAY,gBAAgB;IAC1B,GAAG,QAAQ;IACX,GAAG,QAAQ;CACZ;AAED,qBAAa,iBAAiB;
|
|
1
|
+
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/lib/template.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAG3D,oBAAY,gBAAgB;IAC1B,GAAG,QAAQ;IACX,GAAG,QAAQ;CACZ;AAED,qBAAa,iBAAiB,CAAC,eAAe,GAAG,SAAS;IACxD,OAAO,CAAC,SAAS,CAAoB;IACrC,OAAO,CAAC,SAAS,CAA0C;gBAGzD,SAAS,EAAE,iBAAiB,EAC5B,SAAS,EAAE,sBAAsB,CAAC,eAAe,CAAC;IAM7C,YAAY,CAAC,SAAS,EAAE,iBAAiB;IAIzC,YAAY,CAAC,SAAS,EAAE,sBAAsB,CAAC,eAAe,CAAC;IAIzD,eAAe,CAC1B,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,EACzC,UAAU,CAAC,EAAE,eAAe,GAC3B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAajB,qBAAqB,CACjC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,EACzC,UAAU,CAAC,EAAE,eAAe,GAC3B,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC;IA0I5C,OAAO,CAAC,cAAc;CAQvB"}
|
package/dist/lib/template.js
CHANGED
|
@@ -50,12 +50,12 @@ class TemplateProcessor {
|
|
|
50
50
|
setGenerator(generator) {
|
|
51
51
|
this.generator = generator;
|
|
52
52
|
}
|
|
53
|
-
processTemplate(template, variables) {
|
|
53
|
+
processTemplate(template, variables, reqOptions) {
|
|
54
54
|
var _a, e_1, _b, _c;
|
|
55
55
|
return __awaiter(this, void 0, void 0, function* () {
|
|
56
56
|
let finalResult = new Map();
|
|
57
57
|
try {
|
|
58
|
-
for (var _d = true, _e = __asyncValues(this.processTemplateStream(template, variables)), _f; _f = yield _e.next(), _a = _f.done, !_a; _d = true) {
|
|
58
|
+
for (var _d = true, _e = __asyncValues(this.processTemplateStream(template, variables, reqOptions)), _f; _f = yield _e.next(), _a = _f.done, !_a; _d = true) {
|
|
59
59
|
_c = _f.value;
|
|
60
60
|
_d = false;
|
|
61
61
|
const partialResult = _c;
|
|
@@ -72,7 +72,7 @@ class TemplateProcessor {
|
|
|
72
72
|
return finalResult;
|
|
73
73
|
});
|
|
74
74
|
}
|
|
75
|
-
processTemplateStream(template, variables) {
|
|
75
|
+
processTemplateStream(template, variables, reqOptions) {
|
|
76
76
|
return __asyncGenerator(this, arguments, function* processTemplateStream_1() {
|
|
77
77
|
var _a, e_2, _b, _c;
|
|
78
78
|
const result = new Map();
|
|
@@ -96,7 +96,7 @@ class TemplateProcessor {
|
|
|
96
96
|
let completion = "";
|
|
97
97
|
switch (method) {
|
|
98
98
|
case TEMPLATE_METHODS.GEN:
|
|
99
|
-
const stream = this.generator.generateString(prompt, methodArgs);
|
|
99
|
+
const stream = this.generator.generateString(prompt, methodArgs, reqOptions);
|
|
100
100
|
try {
|
|
101
101
|
for (var _d = true, stream_1 = (e_2 = void 0, __asyncValues(stream)), stream_1_1; stream_1_1 = yield __await(stream_1.next()), _a = stream_1_1.done, !_a; _d = true) {
|
|
102
102
|
_c = stream_1_1.value;
|
|
@@ -122,9 +122,10 @@ class TemplateProcessor {
|
|
|
122
122
|
if (!options) {
|
|
123
123
|
throw new Error(`${methodArgs["options"]} variable not found`);
|
|
124
124
|
}
|
|
125
|
+
prompt = this.tokenizer.decodeString(this.tokenizer.encodeString(prompt));
|
|
125
126
|
// Add all options to trie
|
|
126
127
|
options.forEach((option) => {
|
|
127
|
-
const prefix = this.tokenizer.encodeString(prompt + option
|
|
128
|
+
const prefix = this.tokenizer.encodeString(prompt + option);
|
|
128
129
|
trie.addPrefix(prefix);
|
|
129
130
|
});
|
|
130
131
|
let currentPrefixPrompt = prompt;
|
|
@@ -136,8 +137,7 @@ class TemplateProcessor {
|
|
|
136
137
|
// If there is only one child, we complete
|
|
137
138
|
completion = this.tokenizer
|
|
138
139
|
.decodeString(trie.getWord(currentPrefix))
|
|
139
|
-
.substring(prompt.length)
|
|
140
|
-
.replace(this.tokenizer.getEOS(), "");
|
|
140
|
+
.substring(prompt.length);
|
|
141
141
|
break;
|
|
142
142
|
}
|
|
143
143
|
else {
|
|
@@ -146,7 +146,7 @@ class TemplateProcessor {
|
|
|
146
146
|
acc[child.toString()] = 100;
|
|
147
147
|
return acc;
|
|
148
148
|
}, {});
|
|
149
|
-
const top_logprobs = yield __await(this.generator.generateTokenLogProgs(
|
|
149
|
+
const top_logprobs = yield __await(this.generator.generateTokenLogProgs(currentPrefixPrompt, logit_bias, reqOptions));
|
|
150
150
|
// get max top_logpobs that is in logit_bias
|
|
151
151
|
let max = -Infinity;
|
|
152
152
|
let max_key = "";
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { ClientOptions } from "openai";
|
|
1
|
+
import OpenAI, { ClientOptions } from "openai";
|
|
2
2
|
import { CompletionCreateParams } from "openai/resources/completions.mjs";
|
|
3
|
-
export declare abstract class AbstractTokenGenerator {
|
|
4
|
-
abstract generateTokenLogProgs(prompt: string, logit_bias: Record<string, number
|
|
5
|
-
abstract generateString(prompt: string, options: Record<string, number | string | string[]
|
|
3
|
+
export declare abstract class AbstractTokenGenerator<TRequestOptions = undefined> {
|
|
4
|
+
abstract generateTokenLogProgs(prompt: string, logit_bias: Record<string, number>, reqOptions?: TRequestOptions): Promise<Record<string, number>>;
|
|
5
|
+
abstract generateString(prompt: string, options: Record<string, number | string | string[]>, reqOptions?: TRequestOptions): AsyncGenerator<string>;
|
|
6
6
|
}
|
|
7
7
|
/**
|
|
8
8
|
* OpenAI Token Generator
|
|
9
9
|
*
|
|
10
10
|
*/
|
|
11
|
-
export declare class OpenAITokenGenerator extends AbstractTokenGenerator {
|
|
11
|
+
export declare class OpenAITokenGenerator extends AbstractTokenGenerator<OpenAI.RequestOptions<Record<string, unknown>> | undefined> {
|
|
12
12
|
private openai;
|
|
13
13
|
private model;
|
|
14
14
|
private defaultCompletionParams?;
|
|
@@ -17,7 +17,7 @@ export declare class OpenAITokenGenerator extends AbstractTokenGenerator {
|
|
|
17
17
|
model: string;
|
|
18
18
|
baseURL?: string;
|
|
19
19
|
}, options?: ClientOptions, defaultCompletionParams?: CompletionCreateParams);
|
|
20
|
-
generateTokenLogProgs(prompt: string, logit_bias: Record<string, number
|
|
21
|
-
generateString(prompt: string, options: Record<string, string | number | string[]
|
|
20
|
+
generateTokenLogProgs(prompt: string, logit_bias: Record<string, number>, reqOptions?: OpenAI.RequestOptions<Record<string, unknown>> | undefined): Promise<Record<string, number>>;
|
|
21
|
+
generateString(prompt: string, options: Record<string, string | number | string[]>, reqOptions?: OpenAI.RequestOptions<Record<string, unknown>> | undefined): AsyncGenerator<string>;
|
|
22
22
|
}
|
|
23
23
|
//# sourceMappingURL=token-generator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-generator.d.ts","sourceRoot":"","sources":["../../src/lib/token-generator.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"token-generator.d.ts","sourceRoot":"","sources":["../../src/lib/token-generator.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,EAAE,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAE1E,8BAAsB,sBAAsB,CAAC,eAAe,GAAG,SAAS;IACtE,QAAQ,CAAC,qBAAqB,CAC5B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAClC,UAAU,CAAC,EAAE,eAAe,GAC3B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,QAAQ,CAAC,cAAc,CACrB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,EACnD,UAAU,CAAC,EAAE,eAAe,GAC3B,cAAc,CAAC,MAAM,CAAC;CAC1B;AACD;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,sBAAsB,CAC9D,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,CAC3D;IACC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,uBAAuB,CAAC,CAAyB;gBAGvD,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,EACD,OAAO,CAAC,EAAE,aAAa,EACvB,uBAAuB,CAAC,EAAE,sBAAsB;IAYnC,qBAAqB,CAClC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAClC,UAAU,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,GACtE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAmBlB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,EACnD,UAAU,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,GACtE,cAAc,CAAC,MAAM,CAAC;CAiB1B"}
|
|
@@ -47,7 +47,7 @@ class OpenAITokenGenerator extends AbstractTokenGenerator {
|
|
|
47
47
|
this.openai = new openai_1.default(Object.assign({ apiKey: params.apiKey, baseURL: params.baseURL }, options));
|
|
48
48
|
this.defaultCompletionParams = defaultCompletionParams;
|
|
49
49
|
}
|
|
50
|
-
generateTokenLogProgs(prompt, logit_bias) {
|
|
50
|
+
generateTokenLogProgs(prompt, logit_bias, reqOptions) {
|
|
51
51
|
var _a;
|
|
52
52
|
return __awaiter(this, void 0, void 0, function* () {
|
|
53
53
|
const result = yield this.openai.completions.create({
|
|
@@ -55,9 +55,9 @@ class OpenAITokenGenerator extends AbstractTokenGenerator {
|
|
|
55
55
|
model: this.model,
|
|
56
56
|
prompt,
|
|
57
57
|
logit_bias,
|
|
58
|
-
logprobs:
|
|
58
|
+
logprobs: 5,
|
|
59
59
|
max_tokens: 1,
|
|
60
|
-
});
|
|
60
|
+
}, reqOptions);
|
|
61
61
|
const logprobsResult = ((_a = result.choices[0].logprobs) === null || _a === void 0 ? void 0 : _a.top_logprobs) || [];
|
|
62
62
|
const top_logprobs = logprobsResult
|
|
63
63
|
? logprobsResult[0]
|
|
@@ -65,11 +65,11 @@ class OpenAITokenGenerator extends AbstractTokenGenerator {
|
|
|
65
65
|
return top_logprobs;
|
|
66
66
|
});
|
|
67
67
|
}
|
|
68
|
-
generateString(prompt, options) {
|
|
68
|
+
generateString(prompt, options, reqOptions) {
|
|
69
69
|
var _a;
|
|
70
70
|
return __asyncGenerator(this, arguments, function* generateString_1() {
|
|
71
71
|
var _b, e_1, _c, _d;
|
|
72
|
-
const stream = yield __await(this.openai.completions.create(Object.assign(Object.assign(Object.assign({}, this.defaultCompletionParams), options), { model: this.model, prompt, stream: true })));
|
|
72
|
+
const stream = yield __await(this.openai.completions.create(Object.assign(Object.assign(Object.assign({}, this.defaultCompletionParams), options), { model: this.model, prompt, stream: true }), reqOptions));
|
|
73
73
|
let result = "";
|
|
74
74
|
try {
|
|
75
75
|
for (var _e = true, stream_1 = __asyncValues(stream), stream_1_1; stream_1_1 = yield __await(stream_1.next()), _b = stream_1_1.done, !_b; _e = true) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mikugg/guidance",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.17.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
"scripts": {
|
|
11
11
|
"build": "tsc",
|
|
12
12
|
"demo": "ts-node demo/index.ts",
|
|
13
|
+
"demo-agent": "ts-node demo/agent.ts",
|
|
13
14
|
"lint": "eslint . --ext .ts",
|
|
14
15
|
"prepare": "npm run build",
|
|
15
16
|
"test": "jest"
|
|
@@ -39,5 +40,5 @@
|
|
|
39
40
|
"ts-node": "^10.9.1",
|
|
40
41
|
"typescript": "^5.2.2"
|
|
41
42
|
},
|
|
42
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "bc2da106abe2ac0473544691c85f5f1731b6edc1"
|
|
43
44
|
}
|