modelfusion 0.47.0 → 0.47.2

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 (100) hide show
  1. package/README.md +37 -36
  2. package/core/structure/Schema.d.ts +5 -5
  3. package/core/structure/UncheckedSchema.cjs +2 -2
  4. package/core/structure/UncheckedSchema.d.ts +2 -2
  5. package/core/structure/UncheckedSchema.js +2 -2
  6. package/core/structure/ZodSchema.cjs +2 -5
  7. package/core/structure/ZodSchema.d.ts +2 -2
  8. package/core/structure/ZodSchema.js +2 -5
  9. package/event-source/readEventSource.cjs +5 -8
  10. package/event-source/readEventSource.d.ts +1 -1
  11. package/event-source/readEventSource.js +5 -5
  12. package/event-source/readEventSourceStream.cjs +3 -6
  13. package/event-source/readEventSourceStream.js +3 -3
  14. package/guard/fixStructure.cjs +50 -0
  15. package/guard/fixStructure.d.ts +50 -0
  16. package/guard/fixStructure.js +50 -0
  17. package/guard/guard.d.ts +1 -1
  18. package/model-function/generate-structure/fixJson.test.cjs +183 -181
  19. package/model-function/generate-structure/fixJson.test.js +181 -182
  20. package/model-function/generate-structure/generateStructure.cjs +1 -1
  21. package/model-function/generate-structure/generateStructure.js +1 -1
  22. package/model-function/generate-structure/generateStructureOrText.cjs +1 -1
  23. package/model-function/generate-structure/generateStructureOrText.js +1 -1
  24. package/model-function/generate-structure/streamStructure.cjs +3 -8
  25. package/model-function/generate-structure/streamStructure.js +3 -5
  26. package/model-provider/anthropic/AnthropicError.cjs +7 -14
  27. package/model-provider/anthropic/AnthropicError.js +7 -11
  28. package/model-provider/anthropic/AnthropicTextGenerationModel.cjs +2 -15
  29. package/model-provider/anthropic/AnthropicTextGenerationModel.js +2 -12
  30. package/model-provider/automatic1111/Automatic1111Error.cjs +2 -5
  31. package/model-provider/automatic1111/Automatic1111Error.d.ts +1 -1
  32. package/model-provider/automatic1111/Automatic1111Error.js +2 -2
  33. package/model-provider/cohere/CohereError.cjs +2 -5
  34. package/model-provider/cohere/CohereError.js +2 -2
  35. package/model-provider/cohere/CohereTextEmbeddingModel.cjs +8 -11
  36. package/model-provider/cohere/CohereTextEmbeddingModel.d.ts +1 -1
  37. package/model-provider/cohere/CohereTextEmbeddingModel.js +1 -1
  38. package/model-provider/cohere/CohereTextGenerationModel.cjs +22 -21
  39. package/model-provider/cohere/CohereTextGenerationModel.js +22 -18
  40. package/model-provider/cohere/CohereTokenizer.cjs +12 -15
  41. package/model-provider/cohere/CohereTokenizer.d.ts +1 -1
  42. package/model-provider/cohere/CohereTokenizer.js +1 -1
  43. package/model-provider/huggingface/HuggingFaceError.cjs +7 -31
  44. package/model-provider/huggingface/HuggingFaceError.js +7 -28
  45. package/model-provider/huggingface/HuggingFaceImageDescriptionModel.cjs +3 -6
  46. package/model-provider/huggingface/HuggingFaceImageDescriptionModel.d.ts +1 -1
  47. package/model-provider/huggingface/HuggingFaceImageDescriptionModel.js +1 -1
  48. package/model-provider/huggingface/HuggingFaceTextEmbeddingModel.cjs +2 -5
  49. package/model-provider/huggingface/HuggingFaceTextEmbeddingModel.d.ts +1 -1
  50. package/model-provider/huggingface/HuggingFaceTextEmbeddingModel.js +1 -1
  51. package/model-provider/huggingface/HuggingFaceTextGenerationModel.cjs +3 -6
  52. package/model-provider/huggingface/HuggingFaceTextGenerationModel.d.ts +1 -1
  53. package/model-provider/huggingface/HuggingFaceTextGenerationModel.js +1 -1
  54. package/model-provider/llamacpp/LlamaCppError.cjs +7 -30
  55. package/model-provider/llamacpp/LlamaCppError.js +7 -27
  56. package/model-provider/llamacpp/LlamaCppTextEmbeddingModel.cjs +3 -6
  57. package/model-provider/llamacpp/LlamaCppTextEmbeddingModel.d.ts +1 -1
  58. package/model-provider/llamacpp/LlamaCppTextEmbeddingModel.js +1 -1
  59. package/model-provider/llamacpp/LlamaCppTextGenerationModel.cjs +53 -66
  60. package/model-provider/llamacpp/LlamaCppTextGenerationModel.d.ts +1 -1
  61. package/model-provider/llamacpp/LlamaCppTextGenerationModel.js +3 -13
  62. package/model-provider/llamacpp/LlamaCppTokenizer.cjs +3 -6
  63. package/model-provider/llamacpp/LlamaCppTokenizer.d.ts +1 -1
  64. package/model-provider/llamacpp/LlamaCppTokenizer.js +1 -1
  65. package/model-provider/openai/OpenAIError.cjs +2 -5
  66. package/model-provider/openai/OpenAIError.js +2 -2
  67. package/model-provider/openai/OpenAITextEmbeddingModel.cjs +11 -14
  68. package/model-provider/openai/OpenAITextEmbeddingModel.d.ts +1 -1
  69. package/model-provider/openai/OpenAITextEmbeddingModel.js +1 -1
  70. package/model-provider/openai/OpenAITextGenerationModel.cjs +26 -39
  71. package/model-provider/openai/OpenAITextGenerationModel.d.ts +1 -1
  72. package/model-provider/openai/OpenAITextGenerationModel.js +3 -13
  73. package/model-provider/openai/OpenAITranscriptionModel.cjs +20 -23
  74. package/model-provider/openai/OpenAITranscriptionModel.d.ts +1 -1
  75. package/model-provider/openai/OpenAITranscriptionModel.js +1 -1
  76. package/model-provider/openai/chat/OpenAIChatModel.cjs +21 -21
  77. package/model-provider/openai/chat/OpenAIChatModel.d.ts +1 -1
  78. package/model-provider/openai/chat/OpenAIChatModel.js +2 -2
  79. package/model-provider/openai/chat/OpenAIChatStreamIterable.cjs +2 -6
  80. package/model-provider/openai/chat/OpenAIChatStreamIterable.js +2 -3
  81. package/model-provider/stability/StabilityError.cjs +2 -5
  82. package/model-provider/stability/StabilityError.js +2 -2
  83. package/package.json +4 -4
  84. package/util/JSONParseError.cjs +33 -0
  85. package/util/JSONParseError.d.ts +9 -0
  86. package/util/JSONParseError.js +29 -0
  87. package/util/index.cjs +2 -0
  88. package/util/index.d.ts +2 -0
  89. package/util/index.js +2 -0
  90. package/util/isDeepEqualData.cjs +53 -0
  91. package/util/isDeepEqualData.d.ts +8 -0
  92. package/util/isDeepEqualData.js +49 -0
  93. package/util/isDeepEqualData.test.cjs +108 -0
  94. package/util/isDeepEqualData.test.d.ts +1 -0
  95. package/util/isDeepEqualData.test.js +103 -0
  96. package/util/parseJSON.cjs +67 -0
  97. package/util/parseJSON.d.ts +18 -0
  98. package/util/parseJSON.js +58 -0
  99. package/vector-index/memory/MemoryVectorIndex.cjs +7 -10
  100. package/vector-index/memory/MemoryVectorIndex.js +3 -3
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.safeParseJsonWithSchema = exports.safeParseJsonWithZod = exports.parseJsonWithZod = void 0;
7
+ const secure_json_parse_1 = __importDefault(require("secure-json-parse"));
8
+ const JSONParseError_js_1 = require("./JSONParseError.cjs");
9
+ function parseJsonWithZod(json, schema) {
10
+ try {
11
+ const parsedJson = secure_json_parse_1.default.parse(json);
12
+ return schema.parse(parsedJson);
13
+ }
14
+ catch (error) {
15
+ throw new JSONParseError_js_1.JSONParseError({
16
+ valueText: json,
17
+ cause: error,
18
+ });
19
+ }
20
+ }
21
+ exports.parseJsonWithZod = parseJsonWithZod;
22
+ function safeParseJsonWithZod(json, schema) {
23
+ try {
24
+ const parsedJson = secure_json_parse_1.default.parse(json);
25
+ const validationResult = schema.safeParse(parsedJson);
26
+ if (validationResult.success) {
27
+ return validationResult;
28
+ }
29
+ return {
30
+ success: false,
31
+ error: new JSONParseError_js_1.JSONParseError({
32
+ valueText: json,
33
+ cause: validationResult.error,
34
+ }),
35
+ };
36
+ }
37
+ catch (error) {
38
+ throw new JSONParseError_js_1.JSONParseError({
39
+ valueText: json,
40
+ cause: error,
41
+ });
42
+ }
43
+ }
44
+ exports.safeParseJsonWithZod = safeParseJsonWithZod;
45
+ function safeParseJsonWithSchema(json, schema) {
46
+ try {
47
+ const parsedJson = secure_json_parse_1.default.parse(json);
48
+ const validationResult = schema.validate(parsedJson);
49
+ if (validationResult.success) {
50
+ return validationResult;
51
+ }
52
+ return {
53
+ success: false,
54
+ error: new JSONParseError_js_1.JSONParseError({
55
+ valueText: json,
56
+ cause: validationResult.error,
57
+ }),
58
+ };
59
+ }
60
+ catch (error) {
61
+ throw new JSONParseError_js_1.JSONParseError({
62
+ valueText: json,
63
+ cause: error,
64
+ });
65
+ }
66
+ }
67
+ exports.safeParseJsonWithSchema = safeParseJsonWithSchema;
@@ -0,0 +1,18 @@
1
+ import { z } from "zod";
2
+ import { Schema } from "../core/structure/Schema.js";
3
+ import { JSONParseError } from "./JSONParseError.js";
4
+ export declare function parseJsonWithZod<T>(json: string, schema: z.Schema<T>): T;
5
+ export declare function safeParseJsonWithZod<T>(json: string, schema: z.Schema<T>): {
6
+ success: true;
7
+ data: T;
8
+ } | {
9
+ success: false;
10
+ error: JSONParseError;
11
+ };
12
+ export declare function safeParseJsonWithSchema<T>(json: string, schema: Schema<T>): {
13
+ success: true;
14
+ data: T;
15
+ } | {
16
+ success: false;
17
+ error: JSONParseError;
18
+ };
@@ -0,0 +1,58 @@
1
+ import SecureJSON from "secure-json-parse";
2
+ import { JSONParseError } from "./JSONParseError.js";
3
+ export function parseJsonWithZod(json, schema) {
4
+ try {
5
+ const parsedJson = SecureJSON.parse(json);
6
+ return schema.parse(parsedJson);
7
+ }
8
+ catch (error) {
9
+ throw new JSONParseError({
10
+ valueText: json,
11
+ cause: error,
12
+ });
13
+ }
14
+ }
15
+ export function safeParseJsonWithZod(json, schema) {
16
+ try {
17
+ const parsedJson = SecureJSON.parse(json);
18
+ const validationResult = schema.safeParse(parsedJson);
19
+ if (validationResult.success) {
20
+ return validationResult;
21
+ }
22
+ return {
23
+ success: false,
24
+ error: new JSONParseError({
25
+ valueText: json,
26
+ cause: validationResult.error,
27
+ }),
28
+ };
29
+ }
30
+ catch (error) {
31
+ throw new JSONParseError({
32
+ valueText: json,
33
+ cause: error,
34
+ });
35
+ }
36
+ }
37
+ export function safeParseJsonWithSchema(json, schema) {
38
+ try {
39
+ const parsedJson = SecureJSON.parse(json);
40
+ const validationResult = schema.validate(parsedJson);
41
+ if (validationResult.success) {
42
+ return validationResult;
43
+ }
44
+ return {
45
+ success: false,
46
+ error: new JSONParseError({
47
+ valueText: json,
48
+ cause: validationResult.error,
49
+ }),
50
+ };
51
+ }
52
+ catch (error) {
53
+ throw new JSONParseError({
54
+ valueText: json,
55
+ cause: error,
56
+ });
57
+ }
58
+ }
@@ -1,16 +1,13 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.MemoryVectorIndex = void 0;
7
- const secure_json_parse_1 = __importDefault(require("secure-json-parse"));
8
- const zod_1 = __importDefault(require("zod"));
4
+ const zod_1 = require("zod");
9
5
  const cosineSimilarity_js_1 = require("../../util/cosineSimilarity.cjs");
10
- const jsonDataSchema = zod_1.default.array(zod_1.default.object({
11
- id: zod_1.default.string(),
12
- vector: zod_1.default.array(zod_1.default.number()),
13
- data: zod_1.default.unknown(),
6
+ const parseJSON_js_1 = require("../../util/parseJSON.cjs");
7
+ const jsonDataSchema = zod_1.z.array(zod_1.z.object({
8
+ id: zod_1.z.string(),
9
+ vector: zod_1.z.array(zod_1.z.number()),
10
+ data: zod_1.z.unknown(),
14
11
  }));
15
12
  /**
16
13
  * A very simple vector index that stores all entries in memory. Useful when you only have
@@ -28,7 +25,7 @@ class MemoryVectorIndex {
28
25
  }
29
26
  static async deserialize({ serializedData, schema, }) {
30
27
  // validate the outer structure:
31
- const json = jsonDataSchema.parse(secure_json_parse_1.default.parse(serializedData));
28
+ const json = (0, parseJSON_js_1.parseJsonWithZod)(serializedData, jsonDataSchema);
32
29
  if (schema != null) {
33
30
  // when a schema is provided, validate all entries:
34
31
  for (const entry of json) {
@@ -1,6 +1,6 @@
1
- import SecureJSON from "secure-json-parse";
2
- import z from "zod";
1
+ import { z } from "zod";
3
2
  import { cosineSimilarity } from "../../util/cosineSimilarity.js";
3
+ import { parseJsonWithZod } from "../../util/parseJSON.js";
4
4
  const jsonDataSchema = z.array(z.object({
5
5
  id: z.string(),
6
6
  vector: z.array(z.number()),
@@ -22,7 +22,7 @@ export class MemoryVectorIndex {
22
22
  }
23
23
  static async deserialize({ serializedData, schema, }) {
24
24
  // validate the outer structure:
25
- const json = jsonDataSchema.parse(SecureJSON.parse(serializedData));
25
+ const json = parseJsonWithZod(serializedData, jsonDataSchema);
26
26
  if (schema != null) {
27
27
  // when a schema is provided, validate all entries:
28
28
  for (const entry of json) {