vv-ai-prompt-format 3.0.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.
Files changed (44) hide show
  1. package/LICENSE +21 -0
  2. package/dist/src/checkJsonSchema.d.ts +31 -0
  3. package/dist/src/checkJsonSchema.d.ts.map +1 -0
  4. package/dist/src/checkJsonSchema.js +45 -0
  5. package/dist/src/checkJsonSchema.js.map +1 -0
  6. package/dist/src/convertJsonSchemaToGbnf.d.ts +44 -0
  7. package/dist/src/convertJsonSchemaToGbnf.d.ts.map +1 -0
  8. package/dist/src/convertJsonSchemaToGbnf.js +89 -0
  9. package/dist/src/convertJsonSchemaToGbnf.js.map +1 -0
  10. package/dist/src/index.d.ts +16 -0
  11. package/dist/src/index.d.ts.map +1 -0
  12. package/dist/src/index.js +8 -0
  13. package/dist/src/index.js.map +1 -0
  14. package/dist/src/promtLoad.d.ts +37 -0
  15. package/dist/src/promtLoad.d.ts.map +1 -0
  16. package/dist/src/promtLoad.js +221 -0
  17. package/dist/src/promtLoad.js.map +1 -0
  18. package/dist/src/promtOptions/index.d.ts +99 -0
  19. package/dist/src/promtOptions/index.d.ts.map +1 -0
  20. package/dist/src/promtOptions/index.js +48 -0
  21. package/dist/src/promtOptions/index.js.map +1 -0
  22. package/dist/src/promtOptions/value.d.ts +66 -0
  23. package/dist/src/promtOptions/value.d.ts.map +1 -0
  24. package/dist/src/promtOptions/value.js +134 -0
  25. package/dist/src/promtOptions/value.js.map +1 -0
  26. package/dist/src/promtOptionsParse.d.ts +22 -0
  27. package/dist/src/promtOptionsParse.d.ts.map +1 -0
  28. package/dist/src/promtOptionsParse.js +54 -0
  29. package/dist/src/promtOptionsParse.js.map +1 -0
  30. package/dist/src/promtStore.d.ts +40 -0
  31. package/dist/src/promtStore.d.ts.map +1 -0
  32. package/dist/src/promtStore.js +83 -0
  33. package/dist/src/promtStore.js.map +1 -0
  34. package/dist/src/toPromtOptions.d.ts +129 -0
  35. package/dist/src/toPromtOptions.d.ts.map +1 -0
  36. package/dist/src/toPromtOptions.js +252 -0
  37. package/dist/src/toPromtOptions.js.map +1 -0
  38. package/dist/test/index.test.d.ts +2 -0
  39. package/dist/test/index.test.d.ts.map +1 -0
  40. package/dist/test/index.test.js +692 -0
  41. package/dist/test/index.test.js.map +1 -0
  42. package/package.json +43 -0
  43. package/readme.md +313 -0
  44. package/readme.rus.md +313 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/promtOptions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAQ,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAc,MAAM,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAE3D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;AAE7B,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;EA0BxB,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EA0B5B,CAAA;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,aAAa,CAAC,CAAA;AAExD,MAAM,MAAM,mBAAmB,GAAG;IACjC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACnC,eAAe,CAAC,EAAE,GAAG,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IACjC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IACnC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,kBAAkB,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,CAAA;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACnE,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,aAAa,CAAC,EAAE,KAAK,GAAG;QACvB,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,OAAO,CAAC,EAAE,MAAM,CAAA;QAChB,gBAAgB,CAAC,EAAE,MAAM,CAAA;QACzB,eAAe,CAAC,EAAE,MAAM,CAAA;QACxB,eAAe,CAAC,EAAE,OAAO,CAAA;QACzB,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,CAAA;KAC7C,CAAA;IACD,OAAO,CAAC,EAAE,GAAG,CAAA;CACb,CAAA"}
@@ -0,0 +1,48 @@
1
+ import { Type } from '@sinclair/typebox';
2
+ import { PromtValue, defVal, defValJson } from './value.js';
3
+ export { defVal, defValJson };
4
+ export const SPromtOptions = Type.Object({
5
+ temperature: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.temperature), { default: defVal.temperature }))),
6
+ topP: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.topP), { default: defVal.topP }))),
7
+ topK: Type.Optional(Type.Integer(Object.assign(Object.assign({}, PromtValue.topK), { default: defVal.topK }))),
8
+ minP: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.minP), { default: defVal.minP }))),
9
+ maxTokens: Type.Optional(Type.Integer(Object.assign(Object.assign({}, PromtValue.maxTokens), { default: defVal.maxTokens }))),
10
+ repeatPenalty: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.repeatPenalty), { default: defVal.repeatPenalty }))),
11
+ repeatPenaltyNum: Type.Optional(Type.Integer(Object.assign(Object.assign({}, PromtValue.repeatPenaltyNum), { default: defVal.repeatPenaltyNum }))),
12
+ presencePenalty: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.presencePenalty), { default: defVal.presencePenalty }))),
13
+ frequencyPenalty: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.frequencyPenalty), { default: defVal.frequencyPenalty }))),
14
+ mirostat: Type.Optional(Type.Integer(Object.assign(Object.assign({}, PromtValue.mirostat), { default: defVal.mirostat }))),
15
+ mirostatTau: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.mirostatTau), { default: defVal.mirostatTau }))),
16
+ mirostatEta: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.mirostatEta), { default: defVal.mirostatEta }))),
17
+ penalizeNewline: Type.Optional(Type.Boolean(Object.assign(Object.assign({}, PromtValue.penalizeNewline), { default: defVal.penalizeNewline }))),
18
+ stopSequences: Type.Optional(Type.Array(Type.String(), Object.assign(Object.assign({}, PromtValue.stopSequences), { default: defVal.stopSequences }))),
19
+ trimWhitespace: Type.Optional(Type.Boolean(Object.assign(Object.assign({}, PromtValue.trimWhitespace), { default: defVal.trimWhitespace }))),
20
+ seed: Type.Optional(Type.Integer(Object.assign({}, PromtValue.seed))),
21
+ tokenBias: Type.Optional(Type.Record(Type.String(), Type.Number(), Object.assign(Object.assign({}, PromtValue.tokenBias), { default: defVal.tokenBias }))),
22
+ evaluationPriority: Type.Optional(Type.Integer(Object.assign(Object.assign({}, PromtValue.evaluationPriority), { default: defVal.evaluationPriority }))),
23
+ contextShiftSize: Type.Optional(Type.Integer(Object.assign(Object.assign({}, PromtValue.contextShiftSize), { default: defVal.contextShiftSize }))),
24
+ disableContextShift: Type.Optional(Type.Boolean(Object.assign(Object.assign({}, PromtValue.disableContextShift), { default: defVal.disableContextShift }))),
25
+ });
26
+ export const SPromtOptionsJson = Type.Object({
27
+ temperature: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.temperature), { default: defValJson.temperature }))),
28
+ topP: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.topP), { default: defValJson.topP }))),
29
+ topK: Type.Optional(Type.Integer(Object.assign(Object.assign({}, PromtValue.topK), { default: defValJson.topK }))),
30
+ minP: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.minP), { default: defValJson.minP }))),
31
+ maxTokens: Type.Optional(Type.Integer(Object.assign(Object.assign({}, PromtValue.maxTokens), { default: defValJson.maxTokens }))),
32
+ repeatPenalty: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.repeatPenalty), { default: defValJson.repeatPenalty }))),
33
+ repeatPenaltyNum: Type.Optional(Type.Integer(Object.assign(Object.assign({}, PromtValue.repeatPenaltyNum), { default: defValJson.repeatPenaltyNum }))),
34
+ presencePenalty: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.presencePenalty), { default: defValJson.presencePenalty }))),
35
+ frequencyPenalty: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.frequencyPenalty), { default: defValJson.frequencyPenalty }))),
36
+ mirostat: Type.Optional(Type.Integer(Object.assign(Object.assign({}, PromtValue.mirostat), { default: defValJson.mirostat }))),
37
+ mirostatTau: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.mirostatTau), { default: defValJson.mirostatTau }))),
38
+ mirostatEta: Type.Optional(Type.Number(Object.assign(Object.assign({}, PromtValue.mirostatEta), { default: defValJson.mirostatEta }))),
39
+ penalizeNewline: Type.Optional(Type.Boolean(Object.assign(Object.assign({}, PromtValue.penalizeNewline), { default: defValJson.penalizeNewline }))),
40
+ stopSequences: Type.Optional(Type.Array(Type.String(), Object.assign(Object.assign({}, PromtValue.stopSequences), { default: defValJson.stopSequences }))),
41
+ trimWhitespace: Type.Optional(Type.Boolean(Object.assign(Object.assign({}, PromtValue.trimWhitespace), { default: defValJson.trimWhitespace }))),
42
+ seed: Type.Optional(Type.Integer(Object.assign({}, PromtValue.seed))),
43
+ tokenBias: Type.Optional(Type.Record(Type.String(), Type.Number(), Object.assign(Object.assign({}, PromtValue.tokenBias), { default: defValJson.tokenBias }))),
44
+ evaluationPriority: Type.Optional(Type.Integer(Object.assign(Object.assign({}, PromtValue.evaluationPriority), { default: defValJson.evaluationPriority }))),
45
+ contextShiftSize: Type.Optional(Type.Integer(Object.assign(Object.assign({}, PromtValue.contextShiftSize), { default: defValJson.contextShiftSize }))),
46
+ disableContextShift: Type.Optional(Type.Boolean(Object.assign(Object.assign({}, PromtValue.disableContextShift), { default: defValJson.disableContextShift }))),
47
+ });
48
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/promtOptions/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ import { IntegerOptions, NumberOptions, SchemaOptions } from '@sinclair/typebox';
2
+ export declare const PromtValue: {
3
+ temperature: NumberOptions;
4
+ topP: NumberOptions;
5
+ topK: IntegerOptions;
6
+ minP: NumberOptions;
7
+ maxTokens: IntegerOptions;
8
+ repeatPenalty: NumberOptions;
9
+ repeatPenaltyNum: IntegerOptions;
10
+ presencePenalty: NumberOptions;
11
+ frequencyPenalty: NumberOptions;
12
+ mirostat: IntegerOptions;
13
+ mirostatTau: NumberOptions;
14
+ mirostatEta: NumberOptions;
15
+ penalizeNewline: SchemaOptions;
16
+ stopSequences: SchemaOptions;
17
+ trimWhitespace: SchemaOptions;
18
+ seed: IntegerOptions;
19
+ tokenBias: SchemaOptions;
20
+ evaluationPriority: IntegerOptions;
21
+ contextShiftSize: IntegerOptions;
22
+ disableContextShift: SchemaOptions;
23
+ };
24
+ export declare const defVal: {
25
+ temperature: number;
26
+ topP: number;
27
+ topK: number;
28
+ minP: number;
29
+ maxTokens: number;
30
+ repeatPenalty: number;
31
+ repeatPenaltyNum: number;
32
+ presencePenalty: number;
33
+ frequencyPenalty: number;
34
+ mirostat: number;
35
+ mirostatTau: number;
36
+ mirostatEta: number;
37
+ penalizeNewline: boolean;
38
+ stopSequences: never[];
39
+ trimWhitespace: boolean;
40
+ tokenBias: {};
41
+ evaluationPriority: number;
42
+ contextShiftSize: number;
43
+ disableContextShift: boolean;
44
+ };
45
+ export declare const defValJson: {
46
+ temperature: number;
47
+ topP: number;
48
+ topK: number;
49
+ minP: number;
50
+ maxTokens: number;
51
+ repeatPenalty: number;
52
+ repeatPenaltyNum: number;
53
+ presencePenalty: number;
54
+ frequencyPenalty: number;
55
+ mirostat: number;
56
+ mirostatTau: number;
57
+ mirostatEta: number;
58
+ penalizeNewline: boolean;
59
+ stopSequences: never[];
60
+ trimWhitespace: boolean;
61
+ tokenBias: {};
62
+ evaluationPriority: number;
63
+ contextShiftSize: number;
64
+ disableContextShift: boolean;
65
+ };
66
+ //# sourceMappingURL=value.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"value.d.ts","sourceRoot":"","sources":["../../../src/promtOptions/value.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEhF,eAAO,MAAM,UAAU;iBAKjB,aAAa;UAKb,aAAa;UAKb,cAAc;UAKd,aAAa;eAKb,cAAc;mBAKd,aAAa;sBAKb,cAAc;qBAKd,aAAa;sBAKb,aAAa;cAKb,cAAc;iBAKd,aAAa;iBAKb,aAAa;qBAGb,aAAa;mBAGb,aAAa;oBAGb,aAAa;UAIb,cAAc;eAGd,aAAa;wBAKb,cAAc;sBAKd,cAAc;yBAGd,aAAa;CAClB,CAAA;AAED,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;CAoBlB,CAAA;AAED,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;CAoBtB,CAAA"}
@@ -0,0 +1,134 @@
1
+ export const PromtValue = {
2
+ temperature: {
3
+ description: '[openai, ollama, llama-cpp] Sampling temperature (higher = more creative, lower = more deterministic)',
4
+ minimum: 0.0,
5
+ maximum: 2.0,
6
+ },
7
+ topP: {
8
+ description: '[openai, ollama, llama-cpp] Nucleus sampling: cumulative probability threshold',
9
+ minimum: 0.0,
10
+ maximum: 1.0,
11
+ },
12
+ topK: {
13
+ description: '[ollama, llama-cpp] Top-K sampling: number of highest probability tokens to keep',
14
+ minimum: 1,
15
+ maximum: 1000,
16
+ },
17
+ minP: {
18
+ description: '[llama-cpp] Minimum probability threshold for token sampling',
19
+ minimum: 0.0,
20
+ maximum: 1.0,
21
+ },
22
+ maxTokens: {
23
+ description: '[openai, ollama, llama-cpp] Maximum number of tokens to generate',
24
+ minimum: 1,
25
+ maximum: 131072,
26
+ },
27
+ repeatPenalty: {
28
+ description: '[ollama, llama-cpp] Penalty for repeating tokens (1.0 = no penalty)',
29
+ minimum: -2.0,
30
+ maximum: 2.0,
31
+ },
32
+ repeatPenaltyNum: {
33
+ description: '[ollama, llama-cpp] Number of last tokens to apply repeat penalty to',
34
+ minimum: 0,
35
+ maximum: 2048,
36
+ },
37
+ presencePenalty: {
38
+ description: '[openai, llama-cpp] Penalty for tokens that have appeared (0.0 = no penalty)',
39
+ minimum: -2.0,
40
+ maximum: 2.0,
41
+ },
42
+ frequencyPenalty: {
43
+ description: '[openai, llama-cpp] Penalty proportional to token frequency (0.0 = no penalty)',
44
+ minimum: -2.0,
45
+ maximum: 2.0,
46
+ },
47
+ mirostat: {
48
+ description: '[ollama, llama-cpp] Mirostat sampling mode (0 = disabled, 1 = Mirostat 1.0, 2 = Mirostat 2.0)',
49
+ minimum: 0,
50
+ maximum: 2,
51
+ },
52
+ mirostatTau: {
53
+ description: '[ollama, llama-cpp] Mirostat target entropy (used when mirostat > 0)',
54
+ minimum: 0.0,
55
+ maximum: 10.0,
56
+ },
57
+ mirostatEta: {
58
+ description: '[ollama, llama-cpp] Mirostat learning rate (used when mirostat > 0)',
59
+ minimum: 0,
60
+ maximum: 1.0,
61
+ },
62
+ penalizeNewline: {
63
+ description: '[ollama, llama-cpp] Penalize newline tokens in generation',
64
+ },
65
+ stopSequences: {
66
+ description: '[openai, ollama, llama-cpp] Array of strings that will stop generation when encountered',
67
+ },
68
+ trimWhitespace: {
69
+ description: '[llama-cpp] Trim leading and trailing whitespace from output',
70
+ },
71
+ seed: {
72
+ description: '[openai, ollama, llama-cpp] Random seed for reproducible results (optional)',
73
+ minimum: 0,
74
+ },
75
+ tokenBias: {
76
+ description: '[openai, llama-cpp] Token bias to adjust probability of specific tokens',
77
+ },
78
+ evaluationPriority: {
79
+ description: '[llama-cpp] Priority for sequence evaluation',
80
+ minimum: 0,
81
+ maximum: 10,
82
+ },
83
+ contextShiftSize: {
84
+ description: '[llama-cpp] Number of tokens to remove when context overflows (0 = auto)',
85
+ minimum: 0,
86
+ maximum: 4096,
87
+ },
88
+ disableContextShift: {
89
+ description: '[llama-cpp] Disable context shift when context is full',
90
+ },
91
+ };
92
+ export const defVal = {
93
+ temperature: 0.8,
94
+ topP: 0.9,
95
+ topK: 40,
96
+ minP: 0.0,
97
+ maxTokens: 128,
98
+ repeatPenalty: 1.1,
99
+ repeatPenaltyNum: 64,
100
+ presencePenalty: 0.0,
101
+ frequencyPenalty: 1.1,
102
+ mirostat: 0,
103
+ mirostatTau: 5.0,
104
+ mirostatEta: 0.1,
105
+ penalizeNewline: true,
106
+ stopSequences: [],
107
+ trimWhitespace: true,
108
+ tokenBias: {},
109
+ evaluationPriority: 5,
110
+ contextShiftSize: 0,
111
+ disableContextShift: false,
112
+ };
113
+ export const defValJson = {
114
+ temperature: 0.0,
115
+ topP: 0.1,
116
+ topK: 10,
117
+ minP: 0.0,
118
+ maxTokens: 4096,
119
+ repeatPenalty: 1.0,
120
+ repeatPenaltyNum: 0,
121
+ presencePenalty: 0.0,
122
+ frequencyPenalty: 0.0,
123
+ mirostat: 0,
124
+ mirostatTau: 5.0,
125
+ mirostatEta: 0.1,
126
+ penalizeNewline: false,
127
+ stopSequences: [],
128
+ trimWhitespace: true,
129
+ tokenBias: {},
130
+ evaluationPriority: 5,
131
+ contextShiftSize: 0,
132
+ disableContextShift: false,
133
+ };
134
+ //# sourceMappingURL=value.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"value.js","sourceRoot":"","sources":["../../../src/promtOptions/value.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { TPromtOptions } from './promtOptions/index.js';
2
+ /**
3
+ * Parses and validates prompt options from a raw object.
4
+ *
5
+ * @param use - Schema type to use: 'core' for standard AI models, 'json' for structured JSON output
6
+ * @param raw - Raw object containing option values to parse
7
+ * @param useAllOptions - If true, returns all options with defaults; if false, returns only specified options (default: true)
8
+ * @returns Validated TPromtOptions object. Invalid values are replaced with defaults. Never throws errors.
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * // Get all options with defaults
13
+ * const options = PromtOptionsParse('core', { temperature: 0.7 })
14
+ * // Returns: { temperature: 0.7, topP: 0.9, topK: 40, ... all other defaults }
15
+ *
16
+ * // Get only specified options
17
+ * const options = PromtOptionsParse('core', { temperature: 0.7 }, false)
18
+ * // Returns: { temperature: 0.7 }
19
+ * ```
20
+ */
21
+ export declare function PromtOptionsParse(use: 'core' | 'json', raw?: object, useAllOptions?: boolean): TPromtOptions;
22
+ //# sourceMappingURL=promtOptionsParse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promtOptionsParse.d.ts","sourceRoot":"","sources":["../../src/promtOptionsParse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAwD,MAAM,yBAAyB,CAAA;AAG7G;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,aAAa,GAAE,OAAc,GAAG,aAAa,CAoClH"}
@@ -0,0 +1,54 @@
1
+ import { SPromtOptions, SPromtOptionsJson, defVal, defValJson } from './promtOptions/index.js';
2
+ import { Value } from '@sinclair/typebox/value';
3
+ /**
4
+ * Parses and validates prompt options from a raw object.
5
+ *
6
+ * @param use - Schema type to use: 'core' for standard AI models, 'json' for structured JSON output
7
+ * @param raw - Raw object containing option values to parse
8
+ * @param useAllOptions - If true, returns all options with defaults; if false, returns only specified options (default: true)
9
+ * @returns Validated TPromtOptions object. Invalid values are replaced with defaults. Never throws errors.
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * // Get all options with defaults
14
+ * const options = PromtOptionsParse('core', { temperature: 0.7 })
15
+ * // Returns: { temperature: 0.7, topP: 0.9, topK: 40, ... all other defaults }
16
+ *
17
+ * // Get only specified options
18
+ * const options = PromtOptionsParse('core', { temperature: 0.7 }, false)
19
+ * // Returns: { temperature: 0.7 }
20
+ * ```
21
+ */
22
+ export function PromtOptionsParse(use, raw, useAllOptions = true) {
23
+ const schema = use === 'core' ? SPromtOptions : SPromtOptionsJson;
24
+ const defaults = use === 'core' ? defVal : defValJson;
25
+ const input = raw && typeof raw === 'object' ? raw : {};
26
+ const result = {};
27
+ for (const key of Object.keys(defaults)) {
28
+ const inputValue = input[key];
29
+ const defaultValue = defaults[key];
30
+ if (inputValue === undefined) {
31
+ if (useAllOptions) {
32
+ result[key] = defaultValue;
33
+ }
34
+ continue;
35
+ }
36
+ const propertySchema = schema.properties[key];
37
+ if (propertySchema && Value.Check(propertySchema, inputValue)) {
38
+ result[key] = inputValue;
39
+ }
40
+ else {
41
+ if (useAllOptions) {
42
+ result[key] = defaultValue;
43
+ }
44
+ }
45
+ }
46
+ if (input.seed !== undefined) {
47
+ const seedSchema = schema.properties.seed;
48
+ if (seedSchema && Value.Check(seedSchema, input.seed)) {
49
+ result.seed = input.seed;
50
+ }
51
+ }
52
+ return result;
53
+ }
54
+ //# sourceMappingURL=promtOptionsParse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promtOptionsParse.js","sourceRoot":"","sources":["../../src/promtOptionsParse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,aAAa,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AAC7G,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAA;AAE/C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAoB,EAAE,GAAY,EAAE,gBAAyB,IAAI;IAClG,MAAM,MAAM,GAAG,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,iBAAiB,CAAA;IACjE,MAAM,QAAQ,GAAG,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAA;IACrD,MAAM,KAAK,GAAG,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;IAEvD,MAAM,MAAM,GAAkB,EAAE,CAAA;IAEhC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAA8B,EAAE,CAAC;QACtE,MAAM,UAAU,GAAI,KAAa,CAAC,GAAG,CAAC,CAAA;QACtC,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;QAElC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,aAAa,EAAE,CAAC;gBACnB,MAAM,CAAC,GAAG,CAAC,GAAG,YAAmB,CAAA;YAClC,CAAC;YACD,SAAQ;QACT,CAAC;QAED,MAAM,cAAc,GAAI,MAAM,CAAC,UAAkB,CAAC,GAAG,CAAC,CAAA;QACtD,IAAI,cAAc,IAAI,KAAK,CAAC,KAAK,CAAC,cAAc,EAAE,UAAU,CAAC,EAAE,CAAC;YAC/D,MAAM,CAAC,GAAG,CAAC,GAAG,UAAU,CAAA;QACzB,CAAC;aAAM,CAAC;YACP,IAAI,aAAa,EAAE,CAAC;gBACnB,MAAM,CAAC,GAAG,CAAC,GAAG,YAAmB,CAAA;YAClC,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAK,KAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACvC,MAAM,UAAU,GAAI,MAAM,CAAC,UAAkB,CAAC,IAAI,CAAA;QAClD,IAAI,UAAU,IAAI,KAAK,CAAC,KAAK,CAAC,UAAU,EAAG,KAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YAChE,MAAM,CAAC,IAAI,GAAI,KAAa,CAAC,IAAI,CAAA;QAClC,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAA;AACd,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { TPromt } from './index.js';
2
+ /**
3
+ * Serializes prompt objects into a text string with structured sections.
4
+ *
5
+ * @param promt - Array of TPromt objects to serialize
6
+ * @returns Formatted text string with $$begin/$$end markers and sections
7
+ *
8
+ * @remarks
9
+ * Output format structure:
10
+ * - Each prompt is wrapped in `$$begin` / `$$end`
11
+ * - Sections are ordered: $$options, $$system, $$user, $$jsonresponse, $$segment=*
12
+ * - Options are serialized in key=value format
13
+ * - Arrays and objects are serialized as JSON
14
+ * - JSON response schema is stored as formatted JSON Schema
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * const prompts: TPromt[] = [{
19
+ * system: 'You are helpful',
20
+ * user: 'Hello!',
21
+ * options: { temperature: 0.7 },
22
+ * jsonresponse: '{"type": "object"}'
23
+ * }]
24
+ *
25
+ * const text = PromtStore(prompts)
26
+ * // Returns:
27
+ * // $$begin
28
+ * // $$options
29
+ * // temperature=0.7
30
+ * // $$system
31
+ * // You are helpful
32
+ * // $$user
33
+ * // Hello!
34
+ * // $$jsonresponse
35
+ * // {"type": "object"}
36
+ * // $$end
37
+ * ```
38
+ */
39
+ export declare function PromtStore(promt: TPromt[]): string;
40
+ //# sourceMappingURL=promtStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promtStore.d.ts","sourceRoot":"","sources":["../../src/promtStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAiB,MAAM,YAAY,CAAA;AAElD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAElD"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Serializes prompt objects into a text string with structured sections.
3
+ *
4
+ * @param promt - Array of TPromt objects to serialize
5
+ * @returns Formatted text string with $$begin/$$end markers and sections
6
+ *
7
+ * @remarks
8
+ * Output format structure:
9
+ * - Each prompt is wrapped in `$$begin` / `$$end`
10
+ * - Sections are ordered: $$options, $$system, $$user, $$jsonresponse, $$segment=*
11
+ * - Options are serialized in key=value format
12
+ * - Arrays and objects are serialized as JSON
13
+ * - JSON response schema is stored as formatted JSON Schema
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * const prompts: TPromt[] = [{
18
+ * system: 'You are helpful',
19
+ * user: 'Hello!',
20
+ * options: { temperature: 0.7 },
21
+ * jsonresponse: '{"type": "object"}'
22
+ * }]
23
+ *
24
+ * const text = PromtStore(prompts)
25
+ * // Returns:
26
+ * // $$begin
27
+ * // $$options
28
+ * // temperature=0.7
29
+ * // $$system
30
+ * // You are helpful
31
+ * // $$user
32
+ * // Hello!
33
+ * // $$jsonresponse
34
+ * // {"type": "object"}
35
+ * // $$end
36
+ * ```
37
+ */
38
+ export function PromtStore(promt) {
39
+ return serialize(promt);
40
+ }
41
+ function serialize(promts) {
42
+ const result = [];
43
+ for (const promt of promts) {
44
+ result.push('$$begin');
45
+ if (promt.options) {
46
+ result.push('$$options');
47
+ for (const [key, value] of Object.entries(promt.options)) {
48
+ result.push(serializeOptionValue(key, value));
49
+ }
50
+ }
51
+ if (promt.system) {
52
+ result.push('$$system');
53
+ result.push(promt.system);
54
+ }
55
+ result.push('$$user');
56
+ result.push(promt.user);
57
+ if (promt.jsonresponse) {
58
+ result.push('$$jsonresponse');
59
+ result.push(promt.jsonresponse);
60
+ }
61
+ if (promt.segment) {
62
+ for (const [key, value] of Object.entries(promt.segment)) {
63
+ result.push(`$$segment=${key}`);
64
+ result.push(value);
65
+ }
66
+ }
67
+ result.push('$$end');
68
+ }
69
+ return result.join('\n');
70
+ }
71
+ function serializeOptionValue(key, value) {
72
+ if (value === undefined) {
73
+ return `${key}=`;
74
+ }
75
+ if (Array.isArray(value)) {
76
+ return `${key}=${JSON.stringify(value)}`;
77
+ }
78
+ if (typeof value === 'object' && value !== null) {
79
+ return `${key}=${JSON.stringify(value)}`;
80
+ }
81
+ return `${key}=${value}`;
82
+ }
83
+ //# sourceMappingURL=promtStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promtStore.js","sourceRoot":"","sources":["../../src/promtStore.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,UAAU,UAAU,CAAC,KAAe;IACzC,OAAO,SAAS,CAAC,KAAK,CAAC,CAAA;AACxB,CAAC;AAED,SAAS,SAAS,CAAC,MAAgB;IAClC,MAAM,MAAM,GAAa,EAAE,CAAA;IAE3B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAEtB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YACxB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1D,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAA0B,EAAE,KAAK,CAAC,CAAC,CAAA;YACrE,CAAC;QACF,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACvB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAC1B,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACrB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAEvB,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAC7B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;QAChC,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YACnB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1D,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC,CAAA;gBAC/B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACnB,CAAC;QACF,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACrB,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAwB,EAAE,KAAU;IACjE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,GAAG,GAAG,GAAG,CAAA;IACjB,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,GAAG,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAA;IACzC,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACjD,OAAO,GAAG,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAA;IACzC,CAAC;IAED,OAAO,GAAG,GAAG,IAAI,KAAK,EAAE,CAAA;AACzB,CAAC"}
@@ -0,0 +1,129 @@
1
+ import { TPromtOptions, TPromtOptionsOpenAi, TPromtOptionsOllama, TPromtOptionsLlamaCpp } from './promtOptions/index.js';
2
+ /**
3
+ * Converts universal prompt options to OpenAI API format.
4
+ *
5
+ * @param options - Universal TPromtOptions object
6
+ * @param jsonresponse - Optional JSON Schema grammar string for structured output via OpenAI response_format
7
+ * @returns Options object formatted for OpenAI API with snake_case parameter names
8
+ *
9
+ * @remarks
10
+ * Performs the following conversions:
11
+ * - `topP` → `top_p`
12
+ * - `maxTokens` → `max_tokens`
13
+ * - `frequencyPenalty` → `frequency_penalty`
14
+ * - `presencePenalty` → `presence_penalty`
15
+ * - `stopSequences` → `stop` (only if non-empty)
16
+ * - `tokenBias` → `logit_bias` (only if non-empty)
17
+ * - If `jsonresponse` parameter is provided and valid JSON Schema, creates OpenAI `response_format` object
18
+ * - Invalid or empty `jsonresponse` is ignored
19
+ * - Other parameters: `temperature`, `seed` (unchanged)
20
+ *
21
+ * @example
22
+ * ```typescript
23
+ * const options: TPromtOptions = {
24
+ * temperature: 0.7,
25
+ * topP: 0.9,
26
+ * maxTokens: 2048,
27
+ * frequencyPenalty: 0.5
28
+ * }
29
+ * const jsonresponse = '{"type": "object", "properties": {"name": {"type": "string"}}}'
30
+ * const openaiOptions = ToPromtOptionsOpenAi(options, jsonresponse)
31
+ * // Returns: {
32
+ * // temperature: 0.7,
33
+ * // top_p: 0.9,
34
+ * // max_tokens: 2048,
35
+ * // frequency_penalty: 0.5,
36
+ * // response_format: {
37
+ * // type: "json_schema",
38
+ * // json_schema: {
39
+ * // name: "response",
40
+ * // strict: true,
41
+ * // schema: { type: "object", properties: { name: { type: "string" } } }
42
+ * // }
43
+ * // }
44
+ * // }
45
+ * ```
46
+ */
47
+ export declare function ToPromtOptionsOpenAi(options: TPromtOptions, jsonresponse?: string): TPromtOptionsOpenAi;
48
+ /**
49
+ * Converts universal prompt options to Ollama API format.
50
+ *
51
+ * @param options - Universal TPromtOptions object
52
+ * @returns Options object formatted for Ollama API with snake_case parameter names
53
+ *
54
+ * @remarks
55
+ * Performs the following conversions:
56
+ * - `topP` → `top_p`
57
+ * - `topK` → `top_k`
58
+ * - `minP` → `min_p`
59
+ * - `maxTokens` → `num_predict`
60
+ * - `repeatPenalty` → `repeat_penalty`
61
+ * - `repeatPenaltyNum` → `repeat_last_n`
62
+ * - `mirostatTau` → `mirostat_tau`
63
+ * - `mirostatEta` → `mirostat_eta`
64
+ * - `stopSequences` → `stop` (only if non-empty)
65
+ * - `penalizeNewline` → `penalize_newline`
66
+ * - Other parameters: `temperature`, `mirostat`, `seed` (unchanged)
67
+ *
68
+ * @example
69
+ * ```typescript
70
+ * const options: TPromtOptions = {
71
+ * temperature: 0.8,
72
+ * topK: 40,
73
+ * maxTokens: 512,
74
+ * mirostat: 2,
75
+ * mirostatTau: 5.0
76
+ * }
77
+ * const ollamaOptions = ToPromtOptionsOllama(options)
78
+ * // Returns: { temperature: 0.8, top_k: 40, num_predict: 512, mirostat: 2, mirostat_tau: 5.0 }
79
+ * ```
80
+ */
81
+ export declare function ToPromtOptionsOllama(options: TPromtOptions): TPromtOptionsOllama;
82
+ /**
83
+ * Converts universal prompt options to node-llama-cpp API format.
84
+ *
85
+ * @param options - Universal TPromtOptions object
86
+ * @param jsonresponse - Optional JSON Schema string to convert to GBNF format
87
+ * @returns Options object formatted for node-llama-cpp API with camelCase parameter names
88
+ *
89
+ * @remarks
90
+ * Performs the following conversions:
91
+ * - `trimWhitespace` → `trimWhitespaceSuffix`
92
+ * - `stopSequences` → `customStopTriggers` (only if non-empty)
93
+ * - `tokenBias` → `tokenBias` (only if non-empty)
94
+ * - Combines multiple penalty parameters into `repeatPenalty` object:
95
+ * - `repeatPenalty` → `repeatPenalty.penalty`
96
+ * - `repeatPenaltyNum` → `repeatPenalty.lastTokens`
97
+ * - `frequencyPenalty` → `repeatPenalty.frequencyPenalty`
98
+ * - `presencePenalty` → `repeatPenalty.presencePenalty`
99
+ * - `penalizeNewline` → `repeatPenalty.penalizeNewLine`
100
+ * - If `jsonresponse` parameter is provided, converts JSON Schema to GBNF format
101
+ * - Other parameters remain in camelCase: `temperature`, `topP`, `topK`, `minP`, `maxTokens`, `seed`, `evaluationPriority`, `contextShiftSize`, `disableContextShift`
102
+ *
103
+ * @example
104
+ * ```typescript
105
+ * const options: TPromtOptions = {
106
+ * temperature: 0.7,
107
+ * topP: 0.9,
108
+ * maxTokens: 1024,
109
+ * repeatPenalty: 1.1,
110
+ * repeatPenaltyNum: 64,
111
+ * frequencyPenalty: 0.5
112
+ * }
113
+ * const jsonresponse = '{"type": "object", "properties": {"name": {"type": "string"}}}'
114
+ * const llamaCppOptions = ToPromtOptionsLlamaCpp(options, jsonresponse)
115
+ * // Returns: {
116
+ * // temperature: 0.7,
117
+ * // topP: 0.9,
118
+ * // maxTokens: 1024,
119
+ * // repeatPenalty: {
120
+ * // penalty: 1.1,
121
+ * // lastTokens: 64,
122
+ * // frequencyPenalty: 0.5
123
+ * // },
124
+ * // grammar: <grammar by jsonresponse>
125
+ * // }
126
+ * ```
127
+ */
128
+ export declare function ToPromtOptionsLlamaCpp(options: TPromtOptions, jsonresponse?: string): TPromtOptionsLlamaCpp;
129
+ //# sourceMappingURL=toPromtOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toPromtOptions.d.ts","sourceRoot":"","sources":["../../src/toPromtOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAIxH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,mBAAmB,CAoCvG;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,aAAa,GAAG,mBAAmB,CAoBhF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,qBAAqB,CAoD3G"}