@retab/node 0.0.46 → 0.0.52

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 (263) hide show
  1. package/README.md +8 -215
  2. package/dist/api/client.d.ts +2 -2
  3. package/dist/api/client.d.ts.map +1 -1
  4. package/dist/api/client.js +2 -2
  5. package/dist/api/documents/client.d.ts +3 -3
  6. package/dist/api/documents/client.d.ts.map +1 -1
  7. package/dist/api/documents/client.js +3 -3
  8. package/dist/api/projects/client.d.ts +15 -0
  9. package/dist/api/projects/client.d.ts.map +1 -0
  10. package/dist/api/projects/client.js +43 -0
  11. package/dist/api/projects/documents/client.d.ts +12 -0
  12. package/dist/api/projects/documents/client.d.ts.map +1 -0
  13. package/dist/api/projects/documents/client.js +39 -0
  14. package/dist/api/projects/iterations/client.d.ts +17 -0
  15. package/dist/api/projects/iterations/client.d.ts.map +1 -0
  16. package/dist/api/projects/iterations/client.js +64 -0
  17. package/dist/client.d.ts +1 -0
  18. package/dist/client.d.ts.map +1 -1
  19. package/dist/client.js +6 -1
  20. package/dist/generated_types.d.ts +17837 -40090
  21. package/dist/generated_types.d.ts.map +1 -1
  22. package/dist/generated_types.js +309 -979
  23. package/dist/index.d.ts +7 -2
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +2 -2
  26. package/dist/types.d.ts +188 -80
  27. package/dist/types.d.ts.map +1 -1
  28. package/dist/types.js +22 -1
  29. package/package.json +6 -9
  30. package/dist/api/consensus/client.d.ts +0 -7
  31. package/dist/api/consensus/client.d.ts.map +0 -1
  32. package/dist/api/consensus/client.js +0 -14
  33. package/dist/errors.d.ts +0 -34
  34. package/dist/errors.d.ts.map +0 -1
  35. package/dist/errors.js +0 -53
  36. package/dist/resource.d.ts +0 -12
  37. package/dist/resource.d.ts.map +0 -1
  38. package/dist/resource.js +0 -19
  39. package/dist/resources/consensus/completions.d.ts +0 -66
  40. package/dist/resources/consensus/completions.d.ts.map +0 -1
  41. package/dist/resources/consensus/completions.js +0 -84
  42. package/dist/resources/consensus/index.d.ts +0 -72
  43. package/dist/resources/consensus/index.d.ts.map +0 -1
  44. package/dist/resources/consensus/index.js +0 -76
  45. package/dist/resources/consensus/responses.d.ts +0 -69
  46. package/dist/resources/consensus/responses.d.ts.map +0 -1
  47. package/dist/resources/consensus/responses.js +0 -99
  48. package/dist/resources/documents/extractions.d.ts +0 -74
  49. package/dist/resources/documents/extractions.d.ts.map +0 -1
  50. package/dist/resources/documents/extractions.js +0 -196
  51. package/dist/resources/documents/index.d.ts +0 -21
  52. package/dist/resources/documents/index.d.ts.map +0 -1
  53. package/dist/resources/documents/index.js +0 -55
  54. package/dist/resources/evaluations/documents.d.ts +0 -40
  55. package/dist/resources/evaluations/documents.d.ts.map +0 -1
  56. package/dist/resources/evaluations/documents.js +0 -123
  57. package/dist/resources/evaluations/index.d.ts +0 -14
  58. package/dist/resources/evaluations/index.d.ts.map +0 -1
  59. package/dist/resources/evaluations/index.js +0 -17
  60. package/dist/resources/evaluations/iterations.d.ts +0 -50
  61. package/dist/resources/evaluations/iterations.d.ts.map +0 -1
  62. package/dist/resources/evaluations/iterations.js +0 -156
  63. package/dist/resources/files.d.ts +0 -82
  64. package/dist/resources/files.d.ts.map +0 -1
  65. package/dist/resources/files.js +0 -150
  66. package/dist/resources/finetuning.d.ts +0 -105
  67. package/dist/resources/finetuning.d.ts.map +0 -1
  68. package/dist/resources/finetuning.js +0 -181
  69. package/dist/resources/index.d.ts +0 -11
  70. package/dist/resources/index.d.ts.map +0 -1
  71. package/dist/resources/index.js +0 -10
  72. package/dist/resources/models.d.ts +0 -57
  73. package/dist/resources/models.d.ts.map +0 -1
  74. package/dist/resources/models.js +0 -72
  75. package/dist/resources/processors/automations/endpoints.d.ts +0 -90
  76. package/dist/resources/processors/automations/endpoints.d.ts.map +0 -1
  77. package/dist/resources/processors/automations/endpoints.js +0 -145
  78. package/dist/resources/processors/automations/index.d.ts +0 -7
  79. package/dist/resources/processors/automations/index.d.ts.map +0 -1
  80. package/dist/resources/processors/automations/index.js +0 -6
  81. package/dist/resources/processors/automations/links.d.ts +0 -90
  82. package/dist/resources/processors/automations/links.d.ts.map +0 -1
  83. package/dist/resources/processors/automations/links.js +0 -149
  84. package/dist/resources/processors/automations/logs.d.ts +0 -35
  85. package/dist/resources/processors/automations/logs.d.ts.map +0 -1
  86. package/dist/resources/processors/automations/logs.js +0 -60
  87. package/dist/resources/processors/automations/mailboxes.d.ts +0 -102
  88. package/dist/resources/processors/automations/mailboxes.d.ts.map +0 -1
  89. package/dist/resources/processors/automations/mailboxes.js +0 -157
  90. package/dist/resources/processors/automations/outlook.d.ts +0 -114
  91. package/dist/resources/processors/automations/outlook.d.ts.map +0 -1
  92. package/dist/resources/processors/automations/outlook.js +0 -170
  93. package/dist/resources/processors/automations/tests.d.ts +0 -58
  94. package/dist/resources/processors/automations/tests.d.ts.map +0 -1
  95. package/dist/resources/processors/automations/tests.js +0 -90
  96. package/dist/resources/processors/index.d.ts +0 -303
  97. package/dist/resources/processors/index.d.ts.map +0 -1
  98. package/dist/resources/processors/index.js +0 -261
  99. package/dist/resources/schemas.d.ts +0 -63
  100. package/dist/resources/schemas.d.ts.map +0 -1
  101. package/dist/resources/schemas.js +0 -183
  102. package/dist/resources/secrets/external_api_keys.d.ts +0 -61
  103. package/dist/resources/secrets/external_api_keys.d.ts.map +0 -1
  104. package/dist/resources/secrets/external_api_keys.js +0 -120
  105. package/dist/resources/secrets/index.d.ts +0 -14
  106. package/dist/resources/secrets/index.d.ts.map +0 -1
  107. package/dist/resources/secrets/index.js +0 -17
  108. package/dist/resources/secrets/webhooks.d.ts +0 -73
  109. package/dist/resources/secrets/webhooks.d.ts.map +0 -1
  110. package/dist/resources/secrets/webhooks.js +0 -145
  111. package/dist/resources/usage.d.ts +0 -223
  112. package/dist/resources/usage.d.ts.map +0 -1
  113. package/dist/resources/usage.js +0 -310
  114. package/dist/types/ai_models.d.ts +0 -389
  115. package/dist/types/ai_models.d.ts.map +0 -1
  116. package/dist/types/ai_models.js +0 -145
  117. package/dist/types/automations/cron.d.ts +0 -28
  118. package/dist/types/automations/cron.d.ts.map +0 -1
  119. package/dist/types/automations/cron.js +0 -1
  120. package/dist/types/automations/endpoints.d.ts +0 -13
  121. package/dist/types/automations/endpoints.d.ts.map +0 -1
  122. package/dist/types/automations/endpoints.js +0 -1
  123. package/dist/types/automations/index.d.ts +0 -7
  124. package/dist/types/automations/index.d.ts.map +0 -1
  125. package/dist/types/automations/index.js +0 -6
  126. package/dist/types/automations/links.d.ts +0 -15
  127. package/dist/types/automations/links.d.ts.map +0 -1
  128. package/dist/types/automations/links.js +0 -1
  129. package/dist/types/automations/mailboxes.d.ts +0 -18
  130. package/dist/types/automations/mailboxes.d.ts.map +0 -1
  131. package/dist/types/automations/mailboxes.js +0 -1
  132. package/dist/types/automations/outlook.d.ts +0 -37
  133. package/dist/types/automations/outlook.d.ts.map +0 -1
  134. package/dist/types/automations/outlook.js +0 -1
  135. package/dist/types/automations/webhooks.d.ts +0 -13
  136. package/dist/types/automations/webhooks.d.ts.map +0 -1
  137. package/dist/types/automations/webhooks.js +0 -1
  138. package/dist/types/browser_canvas.d.ts +0 -4
  139. package/dist/types/browser_canvas.d.ts.map +0 -1
  140. package/dist/types/browser_canvas.js +0 -2
  141. package/dist/types/chat.d.ts +0 -99
  142. package/dist/types/chat.d.ts.map +0 -1
  143. package/dist/types/chat.js +0 -20
  144. package/dist/types/consensus.d.ts +0 -10
  145. package/dist/types/consensus.d.ts.map +0 -1
  146. package/dist/types/consensus.js +0 -1
  147. package/dist/types/db/annotations.d.ts +0 -108
  148. package/dist/types/db/annotations.d.ts.map +0 -1
  149. package/dist/types/db/annotations.js +0 -6
  150. package/dist/types/db/files.d.ts +0 -133
  151. package/dist/types/db/files.d.ts.map +0 -1
  152. package/dist/types/db/files.js +0 -5
  153. package/dist/types/documents/extractions.d.ts +0 -1849
  154. package/dist/types/documents/extractions.d.ts.map +0 -1
  155. package/dist/types/documents/extractions.js +0 -211
  156. package/dist/types/documents/processing.d.ts +0 -249
  157. package/dist/types/documents/processing.d.ts.map +0 -1
  158. package/dist/types/documents/processing.js +0 -6
  159. package/dist/types/evaluations/iterations.d.ts +0 -41
  160. package/dist/types/evaluations/iterations.d.ts.map +0 -1
  161. package/dist/types/evaluations/iterations.js +0 -1
  162. package/dist/types/jobs/base.d.ts +0 -162
  163. package/dist/types/jobs/base.d.ts.map +0 -1
  164. package/dist/types/jobs/base.js +0 -6
  165. package/dist/types/jobs/specialized.d.ts +0 -200
  166. package/dist/types/jobs/specialized.d.ts.map +0 -1
  167. package/dist/types/jobs/specialized.js +0 -37
  168. package/dist/types/logs.d.ts +0 -92
  169. package/dist/types/logs.d.ts.map +0 -1
  170. package/dist/types/logs.js +0 -1
  171. package/dist/types/mime.d.ts +0 -426
  172. package/dist/types/mime.d.ts.map +0 -1
  173. package/dist/types/mime.js +0 -48
  174. package/dist/types/modalities.d.ts +0 -31
  175. package/dist/types/modalities.d.ts.map +0 -1
  176. package/dist/types/modalities.js +0 -109
  177. package/dist/types/pagination.d.ts +0 -5
  178. package/dist/types/pagination.d.ts.map +0 -1
  179. package/dist/types/pagination.js +0 -1
  180. package/dist/types/schemas/enhancement.d.ts +0 -250
  181. package/dist/types/schemas/enhancement.d.ts.map +0 -1
  182. package/dist/types/schemas/enhancement.js +0 -6
  183. package/dist/types/schemas/generate.d.ts +0 -160
  184. package/dist/types/schemas/generate.d.ts.map +0 -1
  185. package/dist/types/schemas/generate.js +0 -19
  186. package/dist/types/schemas/object.d.ts +0 -116
  187. package/dist/types/schemas/object.d.ts.map +0 -1
  188. package/dist/types/schemas/object.js +0 -861
  189. package/dist/types/secrets/external_api_keys.d.ts +0 -27
  190. package/dist/types/secrets/external_api_keys.d.ts.map +0 -1
  191. package/dist/types/secrets/external_api_keys.js +0 -11
  192. package/dist/types/secrets/index.d.ts +0 -2
  193. package/dist/types/secrets/index.d.ts.map +0 -1
  194. package/dist/types/secrets/index.js +0 -1
  195. package/dist/types/standards.d.ts +0 -37
  196. package/dist/types/standards.d.ts.map +0 -1
  197. package/dist/types/standards.js +0 -1
  198. package/dist/utils/ai_models.d.ts +0 -10
  199. package/dist/utils/ai_models.d.ts.map +0 -1
  200. package/dist/utils/ai_models.js +0 -183
  201. package/dist/utils/batch_processing.d.ts +0 -227
  202. package/dist/utils/batch_processing.d.ts.map +0 -1
  203. package/dist/utils/batch_processing.js +0 -268
  204. package/dist/utils/benchmarking.d.ts +0 -115
  205. package/dist/utils/benchmarking.d.ts.map +0 -1
  206. package/dist/utils/benchmarking.js +0 -355
  207. package/dist/utils/chat.d.ts +0 -70
  208. package/dist/utils/chat.d.ts.map +0 -1
  209. package/dist/utils/chat.js +0 -79
  210. package/dist/utils/cost_calculation.d.ts +0 -26
  211. package/dist/utils/cost_calculation.d.ts.map +0 -1
  212. package/dist/utils/cost_calculation.js +0 -99
  213. package/dist/utils/datasets.d.ts +0 -135
  214. package/dist/utils/datasets.d.ts.map +0 -1
  215. package/dist/utils/datasets.js +0 -359
  216. package/dist/utils/display.d.ts +0 -108
  217. package/dist/utils/display.d.ts.map +0 -1
  218. package/dist/utils/display.js +0 -244
  219. package/dist/utils/hash.d.ts +0 -18
  220. package/dist/utils/hash.d.ts.map +0 -1
  221. package/dist/utils/hash.js +0 -31
  222. package/dist/utils/hashing.d.ts +0 -18
  223. package/dist/utils/hashing.d.ts.map +0 -1
  224. package/dist/utils/hashing.js +0 -28
  225. package/dist/utils/index.d.ts +0 -8
  226. package/dist/utils/index.d.ts.map +0 -1
  227. package/dist/utils/index.js +0 -10
  228. package/dist/utils/json_schema.d.ts +0 -18
  229. package/dist/utils/json_schema.d.ts.map +0 -1
  230. package/dist/utils/json_schema.js +0 -334
  231. package/dist/utils/json_schema_utils.d.ts +0 -42
  232. package/dist/utils/json_schema_utils.d.ts.map +0 -1
  233. package/dist/utils/json_schema_utils.js +0 -212
  234. package/dist/utils/jsonl.d.ts +0 -60
  235. package/dist/utils/jsonl.d.ts.map +0 -1
  236. package/dist/utils/jsonl.js +0 -259
  237. package/dist/utils/mime.d.ts +0 -6
  238. package/dist/utils/mime.d.ts.map +0 -1
  239. package/dist/utils/mime.js +0 -129
  240. package/dist/utils/model_cards.d.ts +0 -219
  241. package/dist/utils/model_cards.d.ts.map +0 -1
  242. package/dist/utils/model_cards.js +0 -462
  243. package/dist/utils/prompt_optimization.d.ts +0 -96
  244. package/dist/utils/prompt_optimization.d.ts.map +0 -1
  245. package/dist/utils/prompt_optimization.js +0 -275
  246. package/dist/utils/responses.d.ts +0 -35
  247. package/dist/utils/responses.d.ts.map +0 -1
  248. package/dist/utils/responses.js +0 -37
  249. package/dist/utils/stream.d.ts +0 -13
  250. package/dist/utils/stream.d.ts.map +0 -1
  251. package/dist/utils/stream.js +0 -64
  252. package/dist/utils/stream_context_managers.d.ts +0 -147
  253. package/dist/utils/stream_context_managers.d.ts.map +0 -1
  254. package/dist/utils/stream_context_managers.js +0 -380
  255. package/dist/utils/usage.d.ts +0 -57
  256. package/dist/utils/usage.d.ts.map +0 -1
  257. package/dist/utils/usage.js +0 -97
  258. package/dist/utils/webhook_secrets.d.ts +0 -59
  259. package/dist/utils/webhook_secrets.d.ts.map +0 -1
  260. package/dist/utils/webhook_secrets.js +0 -107
  261. package/dist/utils/zod_to_json_schema.d.ts +0 -11
  262. package/dist/utils/zod_to_json_schema.d.ts.map +0 -1
  263. package/dist/utils/zod_to_json_schema.js +0 -123
@@ -1,259 +0,0 @@
1
- import fs from 'fs';
2
- import { createReadStream, createWriteStream } from 'fs';
3
- import { createInterface } from 'readline';
4
- import { pipeline } from 'stream/promises';
5
- import { Transform } from 'stream';
6
- /**
7
- * Read JSONL file and return array of parsed objects
8
- */
9
- export async function readJSONL(filePath, options = {}) {
10
- const { encoding = 'utf8' } = options;
11
- const results = [];
12
- const fileStream = createReadStream(filePath, { encoding });
13
- const rl = createInterface({
14
- input: fileStream,
15
- crlfDelay: Infinity, // Handle Windows line endings
16
- });
17
- for await (const line of rl) {
18
- const trimmedLine = line.trim();
19
- if (trimmedLine) {
20
- try {
21
- results.push(JSON.parse(trimmedLine));
22
- }
23
- catch (error) {
24
- throw new Error(`Invalid JSON on line ${results.length + 1}: ${error instanceof Error ? error.message : String(error)}`);
25
- }
26
- }
27
- }
28
- return results;
29
- }
30
- /**
31
- * Write array of objects to JSONL file
32
- */
33
- export async function writeJSONL(filePath, data, options = {}) {
34
- const { encoding = 'utf8' } = options;
35
- const writeStream = createWriteStream(filePath, { encoding });
36
- for (const item of data) {
37
- const jsonLine = JSON.stringify(item) + '\n';
38
- writeStream.write(jsonLine);
39
- }
40
- writeStream.end();
41
- return new Promise((resolve, reject) => {
42
- writeStream.on('finish', resolve);
43
- writeStream.on('error', reject);
44
- });
45
- }
46
- /**
47
- * Append single object to JSONL file
48
- */
49
- export async function appendJSONL(filePath, data, options = {}) {
50
- const { encoding = 'utf8' } = options;
51
- const jsonLine = JSON.stringify(data) + '\n';
52
- return new Promise((resolve, reject) => {
53
- fs.appendFile(filePath, jsonLine, { encoding }, (error) => {
54
- if (error) {
55
- reject(error);
56
- }
57
- else {
58
- resolve();
59
- }
60
- });
61
- });
62
- }
63
- /**
64
- * Stream JSONL file processing with transformation
65
- */
66
- export async function streamJSONL(inputPath, outputPath, transform, options = {}) {
67
- const { encoding = 'utf8' } = options;
68
- const inputStream = createReadStream(inputPath, { encoding });
69
- const outputStream = createWriteStream(outputPath, { encoding });
70
- const transformStream = new Transform({
71
- objectMode: true,
72
- async transform(chunk, _encoding, callback) {
73
- try {
74
- const line = chunk.toString().trim();
75
- if (line) {
76
- const parsed = JSON.parse(line);
77
- const transformed = await transform(parsed);
78
- const jsonLine = JSON.stringify(transformed) + '\n';
79
- callback(null, jsonLine);
80
- }
81
- else {
82
- callback();
83
- }
84
- }
85
- catch (error) {
86
- callback(error instanceof Error ? error : new Error(String(error)));
87
- }
88
- },
89
- });
90
- const rl = createInterface({
91
- input: inputStream,
92
- crlfDelay: Infinity,
93
- });
94
- for await (const line of rl) {
95
- transformStream.write(line);
96
- }
97
- transformStream.end();
98
- await pipeline(transformStream, outputStream);
99
- }
100
- /**
101
- * Validate JSONL file format
102
- */
103
- export async function validateJSONL(filePath) {
104
- const errors = [];
105
- let lineNumber = 0;
106
- try {
107
- const fileStream = createReadStream(filePath, { encoding: 'utf8' });
108
- const rl = createInterface({
109
- input: fileStream,
110
- crlfDelay: Infinity,
111
- });
112
- for await (const line of rl) {
113
- lineNumber++;
114
- const trimmedLine = line.trim();
115
- if (trimmedLine) {
116
- try {
117
- JSON.parse(trimmedLine);
118
- }
119
- catch (error) {
120
- errors.push(`Line ${lineNumber}: Invalid JSON - ${error instanceof Error ? error.message : String(error)}`);
121
- }
122
- }
123
- }
124
- }
125
- catch (error) {
126
- errors.push(`File reading error: ${error instanceof Error ? error.message : String(error)}`);
127
- }
128
- return {
129
- valid: errors.length === 0,
130
- errors,
131
- };
132
- }
133
- /**
134
- * Count lines in JSONL file
135
- */
136
- export async function countJSONL(filePath) {
137
- let count = 0;
138
- const fileStream = createReadStream(filePath, { encoding: 'utf8' });
139
- const rl = createInterface({
140
- input: fileStream,
141
- crlfDelay: Infinity,
142
- });
143
- for await (const line of rl) {
144
- if (line.trim()) {
145
- count++;
146
- }
147
- }
148
- return count;
149
- }
150
- /**
151
- * Split JSONL file into chunks
152
- */
153
- export async function splitJSONL(inputPath, outputDir, chunkSize, options = {}) {
154
- const { encoding = 'utf8' } = options;
155
- const outputFiles = [];
156
- let currentChunk = 0;
157
- let currentCount = 0;
158
- let currentStream = null;
159
- const getOutputPath = (chunk) => {
160
- const outputPath = `${outputDir}/chunk_${chunk.toString().padStart(3, '0')}.jsonl`;
161
- outputFiles.push(outputPath);
162
- return outputPath;
163
- };
164
- const fileStream = createReadStream(inputPath, { encoding });
165
- const rl = createInterface({
166
- input: fileStream,
167
- crlfDelay: Infinity,
168
- });
169
- for await (const line of rl) {
170
- const trimmedLine = line.trim();
171
- if (trimmedLine) {
172
- if (currentCount === 0) {
173
- if (currentStream) {
174
- currentStream.end();
175
- }
176
- currentStream = createWriteStream(getOutputPath(currentChunk), { encoding });
177
- currentChunk++;
178
- }
179
- currentStream.write(trimmedLine + '\n');
180
- currentCount++;
181
- if (currentCount >= chunkSize) {
182
- currentCount = 0;
183
- }
184
- }
185
- }
186
- if (currentStream) {
187
- currentStream.end();
188
- }
189
- return outputFiles;
190
- }
191
- /**
192
- * Merge multiple JSONL files
193
- */
194
- export async function mergeJSONL(inputPaths, outputPath, options = {}) {
195
- const { encoding = 'utf8' } = options;
196
- const outputStream = createWriteStream(outputPath, { encoding });
197
- for (const inputPath of inputPaths) {
198
- const fileStream = createReadStream(inputPath, { encoding });
199
- const rl = createInterface({
200
- input: fileStream,
201
- crlfDelay: Infinity,
202
- });
203
- for await (const line of rl) {
204
- const trimmedLine = line.trim();
205
- if (trimmedLine) {
206
- outputStream.write(trimmedLine + '\n');
207
- }
208
- }
209
- }
210
- outputStream.end();
211
- return new Promise((resolve, reject) => {
212
- outputStream.on('finish', resolve);
213
- outputStream.on('error', reject);
214
- });
215
- }
216
- /**
217
- * Filter JSONL file based on predicate
218
- */
219
- export async function filterJSONL(inputPath, outputPath, predicate, options = {}) {
220
- const { encoding = 'utf8' } = options;
221
- let filteredCount = 0;
222
- const outputStream = createWriteStream(outputPath, { encoding });
223
- const fileStream = createReadStream(inputPath, { encoding });
224
- const rl = createInterface({
225
- input: fileStream,
226
- crlfDelay: Infinity,
227
- });
228
- for await (const line of rl) {
229
- const trimmedLine = line.trim();
230
- if (trimmedLine) {
231
- try {
232
- const parsed = JSON.parse(trimmedLine);
233
- if (await predicate(parsed)) {
234
- outputStream.write(trimmedLine + '\n');
235
- filteredCount++;
236
- }
237
- }
238
- catch (error) {
239
- // Skip invalid JSON lines
240
- }
241
- }
242
- }
243
- outputStream.end();
244
- return new Promise((resolve, reject) => {
245
- outputStream.on('finish', () => resolve(filteredCount));
246
- outputStream.on('error', reject);
247
- });
248
- }
249
- export default {
250
- readJSONL,
251
- writeJSONL,
252
- appendJSONL,
253
- streamJSONL,
254
- validateJSONL,
255
- countJSONL,
256
- splitJSONL,
257
- mergeJSONL,
258
- filterJSONL,
259
- };
@@ -1,6 +0,0 @@
1
- import { MIMEData } from '../types/mime.js';
2
- export declare function prepareMimeDocument(document: string | Buffer | MIMEData): MIMEData;
3
- export declare function prepareMimeDocumentList(documents: Array<string | Buffer | MIMEData>): MIMEData[];
4
- export declare function getMimeType(filePath: string): string;
5
- export declare function validateMimeData(data: any): MIMEData;
6
- //# sourceMappingURL=mime.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mime.d.ts","sourceRoot":"","sources":["../../src/utils/mime.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAkB,MAAM,kBAAkB,CAAC;AAE5D,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,CA6ClF;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,GAAG,QAAQ,EAAE,CAEhG;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAwEpD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,GAAG,GAAG,QAAQ,CAEpD"}
@@ -1,129 +0,0 @@
1
- import fs from 'fs';
2
- import path from 'path';
3
- import { MIMEDataSchema } from '../types/mime.js';
4
- export function prepareMimeDocument(document) {
5
- if (typeof document === 'string') {
6
- // If it's a file path, read the file
7
- if (fs.existsSync(document)) {
8
- const filename = path.basename(document);
9
- const content = fs.readFileSync(document);
10
- const base64Content = content.toString('base64');
11
- const mimeType = getMimeType(document);
12
- return {
13
- id: 'doc_' + Date.now(),
14
- extension: path.extname(filename).slice(1) || 'unknown',
15
- content: base64Content,
16
- mime_type: mimeType,
17
- unique_filename: filename,
18
- size: content.length,
19
- filename,
20
- url: `data:${mimeType};base64,${base64Content}`,
21
- };
22
- }
23
- // Otherwise treat as text content
24
- const base64Content = Buffer.from(document).toString('base64');
25
- return {
26
- id: 'doc_' + Date.now(),
27
- extension: 'txt',
28
- content: base64Content,
29
- mime_type: 'text/plain',
30
- unique_filename: 'content.txt',
31
- size: Buffer.byteLength(document),
32
- filename: 'content.txt',
33
- url: `data:text/plain;base64,${base64Content}`,
34
- };
35
- }
36
- else if (Buffer.isBuffer(document)) {
37
- const base64Content = document.toString('base64');
38
- return {
39
- id: 'doc_' + Date.now(),
40
- extension: 'bin',
41
- content: base64Content,
42
- mime_type: 'application/octet-stream',
43
- unique_filename: 'content.bin',
44
- size: document.length,
45
- filename: 'content.bin',
46
- url: `data:application/octet-stream;base64,${base64Content}`,
47
- };
48
- }
49
- return document;
50
- }
51
- export function prepareMimeDocumentList(documents) {
52
- return documents.map(doc => prepareMimeDocument(doc));
53
- }
54
- export function getMimeType(filePath) {
55
- const ext = path.extname(filePath).toLowerCase();
56
- const mimeTypes = {
57
- '.pdf': 'application/pdf',
58
- '.jpg': 'image/jpeg',
59
- '.jpeg': 'image/jpeg',
60
- '.png': 'image/png',
61
- '.gif': 'image/gif',
62
- '.bmp': 'image/bmp',
63
- '.tiff': 'image/tiff',
64
- '.webp': 'image/webp',
65
- '.txt': 'text/plain',
66
- '.json': 'application/json',
67
- '.html': 'text/html',
68
- '.htm': 'text/html',
69
- '.xml': 'application/xml',
70
- '.csv': 'text/csv',
71
- '.tsv': 'text/tab-separated-values',
72
- '.md': 'text/markdown',
73
- '.log': 'text/plain',
74
- '.yaml': 'application/x-yaml',
75
- '.yml': 'application/x-yaml',
76
- '.rtf': 'application/rtf',
77
- '.ini': 'text/plain',
78
- '.conf': 'text/plain',
79
- '.cfg': 'text/plain',
80
- '.nfo': 'text/plain',
81
- '.srt': 'text/plain',
82
- '.sql': 'text/plain',
83
- '.sh': 'text/x-shellscript',
84
- '.bat': 'text/plain',
85
- '.ps1': 'text/plain',
86
- '.js': 'text/javascript',
87
- '.jsx': 'text/javascript',
88
- '.ts': 'text/typescript',
89
- '.tsx': 'text/typescript',
90
- '.py': 'text/x-python',
91
- '.java': 'text/x-java-source',
92
- '.c': 'text/x-c',
93
- '.cpp': 'text/x-c++',
94
- '.cs': 'text/x-csharp',
95
- '.rb': 'text/x-ruby',
96
- '.php': 'text/x-php',
97
- '.swift': 'text/x-swift',
98
- '.kt': 'text/x-kotlin',
99
- '.go': 'text/x-go',
100
- '.rs': 'text/x-rust',
101
- '.pl': 'text/x-perl',
102
- '.r': 'text/x-r',
103
- '.m': 'text/x-objc',
104
- '.scala': 'text/x-scala',
105
- '.xls': 'application/vnd.ms-excel',
106
- '.xlsx': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
107
- '.ods': 'application/vnd.oasis.opendocument.spreadsheet',
108
- '.doc': 'application/msword',
109
- '.docx': 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
110
- '.odt': 'application/vnd.oasis.opendocument.text',
111
- '.ppt': 'application/vnd.ms-powerpoint',
112
- '.pptx': 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
113
- '.odp': 'application/vnd.oasis.opendocument.presentation',
114
- '.mhtml': 'message/rfc822',
115
- '.eml': 'message/rfc822',
116
- '.msg': 'application/vnd.ms-outlook',
117
- '.mp3': 'audio/mpeg',
118
- '.mp4': 'video/mp4',
119
- '.mpeg': 'video/mpeg',
120
- '.mpga': 'audio/mpeg',
121
- '.m4a': 'audio/mp4',
122
- '.wav': 'audio/wav',
123
- '.webm': 'video/webm',
124
- };
125
- return mimeTypes[ext] || 'application/octet-stream';
126
- }
127
- export function validateMimeData(data) {
128
- return MIMEDataSchema.parse(data);
129
- }
@@ -1,219 +0,0 @@
1
- /**
2
- * Model cards and AI provider configuration management
3
- * Equivalent to Python's utils/_model_cards/ directory
4
- */
5
- export interface ModelCard {
6
- id: string;
7
- name: string;
8
- provider: 'openai' | 'anthropic' | 'xai' | 'gemini' | 'custom';
9
- model_family: string;
10
- version: string;
11
- description: string;
12
- capabilities: ModelCapabilities;
13
- limitations: ModelLimitations;
14
- pricing: ModelPricing;
15
- performance_benchmarks: PerformanceBenchmarks;
16
- technical_specs: TechnicalSpecs;
17
- usage_guidelines: UsageGuidelines;
18
- supported_features: string[];
19
- deprecated: boolean;
20
- deprecation_date?: Date;
21
- replacement_model?: string;
22
- created_at: Date;
23
- updated_at: Date;
24
- }
25
- export interface ModelCapabilities {
26
- text_generation: boolean;
27
- text_analysis: boolean;
28
- document_extraction: boolean;
29
- image_understanding: boolean;
30
- function_calling: boolean;
31
- json_mode: boolean;
32
- streaming: boolean;
33
- batch_processing: boolean;
34
- fine_tuning: boolean;
35
- embedding_generation: boolean;
36
- reasoning: boolean;
37
- code_generation: boolean;
38
- multilingual: boolean;
39
- supported_languages?: string[];
40
- max_context_window: number;
41
- max_output_tokens: number;
42
- }
43
- export interface ModelLimitations {
44
- rate_limits: {
45
- requests_per_minute: number;
46
- tokens_per_minute: number;
47
- requests_per_day?: number;
48
- };
49
- content_restrictions: string[];
50
- geographical_restrictions?: string[];
51
- knowledge_cutoff_date?: Date;
52
- training_data_cutoff?: Date;
53
- known_biases?: string[];
54
- accuracy_limitations?: string[];
55
- performance_degradation_scenarios?: string[];
56
- }
57
- export interface ModelPricing {
58
- input_tokens_per_1k: number;
59
- output_tokens_per_1k: number;
60
- image_tokens_per_1k?: number;
61
- fine_tuning_training_per_1k?: number;
62
- fine_tuning_usage_per_1k?: number;
63
- batch_discount_percentage?: number;
64
- currency: 'USD' | 'EUR' | 'GBP';
65
- billing_unit: 'token' | 'request' | 'minute';
66
- minimum_charge?: number;
67
- free_tier?: {
68
- requests_per_month: number;
69
- tokens_per_month: number;
70
- };
71
- }
72
- export interface PerformanceBenchmarks {
73
- accuracy_scores: {
74
- general_text: number;
75
- document_extraction: number;
76
- reasoning: number;
77
- code_generation: number;
78
- multilingual: number;
79
- };
80
- speed_metrics: {
81
- average_latency_ms: number;
82
- tokens_per_second: number;
83
- throughput_requests_per_minute: number;
84
- };
85
- reliability_metrics: {
86
- uptime_percentage: number;
87
- error_rate_percentage: number;
88
- consistency_score: number;
89
- };
90
- cost_efficiency: {
91
- cost_per_accurate_response: number;
92
- cost_performance_ratio: number;
93
- };
94
- }
95
- export interface TechnicalSpecs {
96
- architecture: string;
97
- parameter_count?: string;
98
- training_data_size?: string;
99
- training_compute?: string;
100
- inference_hardware: string[];
101
- optimization_techniques: string[];
102
- supported_formats: {
103
- input: string[];
104
- output: string[];
105
- };
106
- api_compatibility: {
107
- openai_compatible: boolean;
108
- custom_endpoints: boolean;
109
- webhook_support: boolean;
110
- };
111
- }
112
- export interface UsageGuidelines {
113
- recommended_use_cases: string[];
114
- not_recommended_for: string[];
115
- best_practices: string[];
116
- prompt_engineering_tips: string[];
117
- parameter_recommendations: {
118
- temperature: {
119
- creative_tasks: number;
120
- analytical_tasks: number;
121
- extraction_tasks: number;
122
- };
123
- top_p?: number;
124
- frequency_penalty?: number;
125
- presence_penalty?: number;
126
- };
127
- context_window_optimization: string[];
128
- }
129
- export interface ProviderConfig {
130
- provider_id: 'openai' | 'anthropic' | 'xai' | 'gemini' | 'custom';
131
- provider_name: string;
132
- api_base_url: string;
133
- authentication: {
134
- type: 'api_key' | 'oauth' | 'bearer_token' | 'custom';
135
- header_name: string;
136
- header_prefix?: string;
137
- };
138
- rate_limiting: {
139
- default_rpm: number;
140
- default_tpm: number;
141
- burst_allowance: number;
142
- backoff_strategy: 'exponential' | 'linear' | 'fixed';
143
- };
144
- request_format: {
145
- content_type: string;
146
- encoding: string;
147
- supports_streaming: boolean;
148
- supports_batch: boolean;
149
- };
150
- response_format: {
151
- content_type: string;
152
- error_format: 'openai' | 'anthropic' | 'custom';
153
- streaming_format?: string;
154
- };
155
- supported_models: string[];
156
- model_aliases?: Record<string, string>;
157
- default_parameters: Record<string, any>;
158
- health_check: {
159
- endpoint: string;
160
- method: 'GET' | 'POST';
161
- expected_status: number;
162
- timeout_ms: number;
163
- };
164
- }
165
- export interface ModelSelectionCriteria {
166
- task_type: 'extraction' | 'generation' | 'analysis' | 'classification' | 'reasoning';
167
- accuracy_priority: 'low' | 'medium' | 'high' | 'critical';
168
- speed_priority: 'low' | 'medium' | 'high' | 'critical';
169
- cost_priority: 'low' | 'medium' | 'high' | 'critical';
170
- context_length_required: number;
171
- output_length_required: number;
172
- supports_images: boolean;
173
- supports_function_calling: boolean;
174
- supports_json_mode: boolean;
175
- language_requirements?: string[];
176
- compliance_requirements?: string[];
177
- geographical_restrictions?: string[];
178
- }
179
- export interface ModelRecommendation {
180
- model_id: string;
181
- model_name: string;
182
- provider: string;
183
- confidence_score: number;
184
- rationale: string[];
185
- expected_performance: {
186
- accuracy: number;
187
- latency_ms: number;
188
- cost_per_request: number;
189
- };
190
- trade_offs: string[];
191
- alternative_models: Array<{
192
- model_id: string;
193
- reason: string;
194
- trade_off: string;
195
- }>;
196
- }
197
- export declare const modelCards: Record<string, ModelCard>;
198
- export declare const providerConfigs: Record<string, ProviderConfig>;
199
- export declare class ModelCardManager {
200
- private static instance;
201
- private cards;
202
- private configs;
203
- constructor();
204
- static getInstance(): ModelCardManager;
205
- getModelCard(modelId: string): ModelCard | undefined;
206
- getProviderConfig(providerId: string): ProviderConfig | undefined;
207
- getAllModels(): ModelCard[];
208
- getModelsByProvider(providerId: string): ModelCard[];
209
- recommendModel(criteria: ModelSelectionCriteria): ModelRecommendation[];
210
- addModelCard(card: ModelCard): void;
211
- updateModelCard(modelId: string, updates: Partial<ModelCard>): void;
212
- }
213
- declare const _default: {
214
- ModelCardManager: typeof ModelCardManager;
215
- modelCards: Record<string, ModelCard>;
216
- providerConfigs: Record<string, ProviderConfig>;
217
- };
218
- export default _default;
219
- //# sourceMappingURL=model_cards.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"model_cards.d.ts","sourceRoot":"","sources":["../../src/utils/model_cards.ts"],"names":[],"mappings":"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"}