judgeval 0.2.1 → 0.2.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 (45) hide show
  1. package/dist/cjs/common/logger-instance.js +19 -17
  2. package/dist/cjs/common/logger-instance.js.map +1 -1
  3. package/dist/cjs/common/tracer.js +58 -50
  4. package/dist/cjs/common/tracer.js.map +1 -1
  5. package/dist/cjs/constants.js +6 -4
  6. package/dist/cjs/constants.js.map +1 -1
  7. package/dist/cjs/data/datasets/eval-dataset-client.js +349 -0
  8. package/dist/cjs/data/datasets/eval-dataset-client.js.map +1 -0
  9. package/dist/cjs/data/datasets/eval-dataset.js +405 -0
  10. package/dist/cjs/data/datasets/eval-dataset.js.map +1 -0
  11. package/dist/cjs/data/example.js +22 -1
  12. package/dist/cjs/data/example.js.map +1 -1
  13. package/dist/cjs/e2etests/eval-operations.test.js +282 -0
  14. package/dist/cjs/e2etests/eval-operations.test.js.map +1 -0
  15. package/dist/cjs/e2etests/judgee-traces.test.js +278 -0
  16. package/dist/cjs/e2etests/judgee-traces.test.js.map +1 -0
  17. package/dist/cjs/judgment-client.js +309 -534
  18. package/dist/cjs/judgment-client.js.map +1 -1
  19. package/dist/esm/common/logger-instance.js +19 -17
  20. package/dist/esm/common/logger-instance.js.map +1 -1
  21. package/dist/esm/common/tracer.js +58 -50
  22. package/dist/esm/common/tracer.js.map +1 -1
  23. package/dist/esm/constants.js +5 -3
  24. package/dist/esm/constants.js.map +1 -1
  25. package/dist/esm/data/datasets/eval-dataset-client.js +342 -0
  26. package/dist/esm/data/datasets/eval-dataset-client.js.map +1 -0
  27. package/dist/esm/data/datasets/eval-dataset.js +375 -0
  28. package/dist/esm/data/datasets/eval-dataset.js.map +1 -0
  29. package/dist/esm/data/example.js +22 -1
  30. package/dist/esm/data/example.js.map +1 -1
  31. package/dist/esm/e2etests/eval-operations.test.js +254 -0
  32. package/dist/esm/e2etests/eval-operations.test.js.map +1 -0
  33. package/dist/esm/e2etests/judgee-traces.test.js +253 -0
  34. package/dist/esm/e2etests/judgee-traces.test.js.map +1 -0
  35. package/dist/esm/judgment-client.js +311 -536
  36. package/dist/esm/judgment-client.js.map +1 -1
  37. package/dist/types/common/tracer.d.ts +0 -1
  38. package/dist/types/constants.d.ts +2 -3
  39. package/dist/types/data/datasets/eval-dataset-client.d.ts +39 -0
  40. package/dist/types/data/datasets/eval-dataset.d.ts +45 -0
  41. package/dist/types/data/example.d.ts +24 -12
  42. package/dist/types/e2etests/eval-operations.test.d.ts +5 -0
  43. package/dist/types/e2etests/judgee-traces.test.d.ts +5 -0
  44. package/dist/types/judgment-client.d.ts +3 -25
  45. package/package.json +3 -9
@@ -0,0 +1,375 @@
1
+ import { Example } from '../example.js'; // Import class and options
2
+ import * as fs from 'fs';
3
+ import * as path from 'path';
4
+ import Papa from 'papaparse'; // Added PapaParse
5
+ import YAML from 'js-yaml'; // Added js-yaml
6
+ import { format } from 'date-fns'; // For default filename timestamp
7
+ const ACCEPTABLE_FILE_TYPES = ['json', 'csv', 'yaml'];
8
+ // Define keys that represent lists potentially split by a delimiter in CSV
9
+ // Use camelCase names from Example class/ExampleOptions
10
+ const LIST_LIKE_KEYS = [
11
+ 'context',
12
+ 'retrievalContext',
13
+ 'toolsCalled',
14
+ 'expectedTools',
15
+ ];
16
+ export class EvalDataset {
17
+ // These might not be needed directly in the TS class if client handles auth
18
+ // public judgment_api_key: string;
19
+ // public organization_id: string;
20
+ constructor(examples = []) {
21
+ console.debug(`Initializing EvalDataset with ${examples.length} examples`);
22
+ this.examples = examples;
23
+ this._alias = null;
24
+ this._id = null;
25
+ // Assuming API keys are handled by the client, not stored in the dataset object itself
26
+ // this.judgment_api_key = judgment_api_key || process.env.JUDGMENT_API_KEY || '';
27
+ // this.organization_id = organization_id || process.env.JUDGMENT_ORG_ID || '';
28
+ // if (!this.judgment_api_key) {
29
+ // console.warn("No judgment_api_key provided");
30
+ // }
31
+ }
32
+ addExample(e) {
33
+ this.examples.push(e);
34
+ }
35
+ get length() {
36
+ return this.examples.length;
37
+ }
38
+ get alias() {
39
+ return this._alias;
40
+ }
41
+ set alias(value) {
42
+ this._alias = value;
43
+ }
44
+ get id() {
45
+ return this._id;
46
+ }
47
+ set id(value) {
48
+ this._id = value;
49
+ }
50
+ /**
51
+ * Adds examples from a JSON file.
52
+ * Assumes the JSON file has a top-level key "examples" containing an array of example objects.
53
+ * @param filePath Path to the JSON file.
54
+ */
55
+ addFromJson(filePath) {
56
+ console.debug(`Loading dataset from JSON file: ${filePath}`);
57
+ try {
58
+ const fileContent = fs.readFileSync(filePath, 'utf-8');
59
+ const payload = JSON.parse(fileContent);
60
+ const examplesFromJson = payload === null || payload === void 0 ? void 0 : payload.examples;
61
+ if (!Array.isArray(examplesFromJson)) {
62
+ throw new Error('Invalid JSON format: "examples" key not found or not an array.');
63
+ }
64
+ console.info(`Adding ${examplesFromJson.length} examples from JSON`);
65
+ examplesFromJson.forEach((e) => {
66
+ // Map snake_case from file to camelCase for ExampleOptions
67
+ const options = {
68
+ input: e.input,
69
+ actualOutput: e.actual_output,
70
+ expectedOutput: e.expected_output,
71
+ context: e.context,
72
+ retrievalContext: e.retrieval_context,
73
+ additionalMetadata: e.additional_metadata,
74
+ toolsCalled: e.tools_called,
75
+ expectedTools: e.expected_tools,
76
+ name: e.name,
77
+ exampleId: e.example_id,
78
+ exampleIndex: e.example_index,
79
+ timestamp: e.timestamp,
80
+ traceId: e.trace_id,
81
+ example: e.example,
82
+ };
83
+ // TODO: Add handling for fields not in ExampleOptions (name, comments, etc.) if needed
84
+ this.addExample(new Example(options));
85
+ });
86
+ }
87
+ catch (error) {
88
+ if (error.code === 'ENOENT') {
89
+ console.error(`JSON file not found: ${filePath}`);
90
+ throw new Error(`The file ${filePath} was not found.`);
91
+ }
92
+ else if (error instanceof SyntaxError) {
93
+ console.error(`Invalid JSON file: ${filePath}`, error);
94
+ throw new Error(`The file ${filePath} is not a valid JSON file.`);
95
+ }
96
+ else {
97
+ console.error(`Error loading dataset from JSON: ${filePath}`, error);
98
+ throw error; // Re-throw other errors
99
+ }
100
+ }
101
+ }
102
+ /**
103
+ * Adds examples from a YAML file.
104
+ * Assumes the YAML file has a top-level key "examples" containing an array of example objects.
105
+ * @param filePath Path to the YAML file.
106
+ */
107
+ addFromYaml(filePath) {
108
+ console.debug(`Loading dataset from YAML file: ${filePath}`);
109
+ try {
110
+ const fileContent = fs.readFileSync(filePath, 'utf-8');
111
+ const payload = YAML.load(fileContent);
112
+ if (!payload) {
113
+ throw new Error('The YAML file is empty.');
114
+ }
115
+ const examplesFromYaml = payload === null || payload === void 0 ? void 0 : payload.examples;
116
+ if (!Array.isArray(examplesFromYaml)) {
117
+ throw new Error('Invalid YAML format: "examples" key not found or not an array.');
118
+ }
119
+ console.info(`Adding ${examplesFromYaml.length} examples from YAML`);
120
+ examplesFromYaml.forEach((e) => {
121
+ // Map snake_case from file to camelCase for ExampleOptions
122
+ const options = {
123
+ input: e.input,
124
+ actualOutput: e.actual_output,
125
+ expectedOutput: e.expected_output,
126
+ context: e.context,
127
+ retrievalContext: e.retrieval_context,
128
+ additionalMetadata: e.additional_metadata,
129
+ toolsCalled: e.tools_called,
130
+ expectedTools: e.expected_tools,
131
+ name: e.name,
132
+ exampleId: e.example_id,
133
+ exampleIndex: e.example_index,
134
+ timestamp: e.timestamp,
135
+ traceId: e.trace_id,
136
+ example: e.example,
137
+ };
138
+ this.addExample(new Example(options));
139
+ });
140
+ }
141
+ catch (error) {
142
+ if (error.code === 'ENOENT') {
143
+ console.error(`YAML file not found: ${filePath}`);
144
+ throw new Error(`The file ${filePath} was not found.`);
145
+ }
146
+ else if (error instanceof YAML.YAMLException) {
147
+ console.error(`Invalid YAML file: ${filePath}`, error);
148
+ throw new Error(`The file ${filePath} is not a valid YAML file.`);
149
+ }
150
+ else {
151
+ console.error(`Error loading dataset from YAML: ${filePath}`, error);
152
+ throw error; // Re-throw other errors
153
+ }
154
+ }
155
+ }
156
+ /**
157
+ * Adds examples from a CSV file.
158
+ * @param filePath Path to the CSV file.
159
+ * @param headerMapping Dictionary mapping Example headers (keys) to custom headers in the CSV (values).
160
+ * @param primaryDelimiter Main delimiter used in CSV file. Defaults to ",".
161
+ * @param secondaryDelimiter Secondary delimiter for list fields (context, retrieval_context, etc.). Defaults to ";".
162
+ */
163
+ addFromCsv(filePath,
164
+ // headerMapping values are CSV headers, keys need to be ExampleOptions properties (camelCase)
165
+ headerMapping, primaryDelimiter = ',', secondaryDelimiter = ';') {
166
+ console.debug(`Loading dataset from CSV file: ${filePath}`);
167
+ try {
168
+ const fileContent = fs.readFileSync(filePath, 'utf-8');
169
+ // Invert headerMapping for easier lookup: CSV Header -> ExampleOption Key
170
+ const csvHeaderToExampleKeyMap = Object.entries(headerMapping).reduce((acc, [exampleKey, csvHeader]) => {
171
+ if (csvHeader)
172
+ acc[csvHeader] = exampleKey;
173
+ return acc;
174
+ }, {});
175
+ const parseResult = Papa.parse(fileContent, {
176
+ header: true,
177
+ delimiter: primaryDelimiter,
178
+ skipEmptyLines: true,
179
+ dynamicTyping: (field) => {
180
+ const exampleKey = csvHeaderToExampleKeyMap[field];
181
+ // Prevent auto-typing traceId
182
+ if (exampleKey === 'traceId')
183
+ return false;
184
+ return true;
185
+ },
186
+ });
187
+ if (parseResult.errors.length > 0) {
188
+ console.error('CSV parsing errors:', parseResult.errors);
189
+ // throw new Error(`Failed to parse CSV file: ${filePath}`);
190
+ }
191
+ const csvData = parseResult.data;
192
+ const newExamples = [];
193
+ csvData.forEach((row, index) => {
194
+ var _a;
195
+ const exampleOptions = {};
196
+ // Need a way to handle the 'example' boolean column if it's not in ExampleOptions
197
+ let isExampleRow = true; // Assume true unless 'example' column says otherwise
198
+ const exampleColumnCsvHeader = headerMapping['example']; // Assuming 'example' key exists in mapping for the boolean
199
+ for (const csvHeader in row) {
200
+ const exampleKey = csvHeaderToExampleKeyMap[csvHeader];
201
+ if (!exampleKey)
202
+ continue;
203
+ let value = row[csvHeader];
204
+ if (value === null || value === undefined || value === '') {
205
+ value = exampleKey === 'additionalMetadata' ? {} : null;
206
+ }
207
+ else {
208
+ value = String(value);
209
+ if (LIST_LIKE_KEYS.includes(exampleKey)) {
210
+ value = value
211
+ .split(secondaryDelimiter)
212
+ .map((item) => item.trim())
213
+ .filter((item) => item !== '');
214
+ }
215
+ else if (exampleKey === 'additionalMetadata') {
216
+ try {
217
+ value = JSON.parse(value);
218
+ }
219
+ catch (e) {
220
+ console.warn(`Row ${index + 2}: Could not parse additionalMetadata "${value}" as JSON. Storing as string.`);
221
+ }
222
+ }
223
+ else if (exampleColumnCsvHeader && csvHeader === exampleColumnCsvHeader) {
224
+ // Check if current CSV header matches the one mapped to the 'example' concept
225
+ const lowerVal = value.toLowerCase();
226
+ isExampleRow = !['false', '0', 'no', ''].includes(lowerVal);
227
+ // We don't store this boolean directly on ExampleOptions unless it has an 'example' field
228
+ continue; // Don't assign this value to exampleOptions map
229
+ }
230
+ else if (exampleKey === 'example') {
231
+ // Check key directly
232
+ const lowerVal = value.toLowerCase();
233
+ isExampleRow = !['false', '0', 'no', ''].includes(lowerVal);
234
+ // Assign to options IF the key exists in headerMapping
235
+ if (headerMapping.example) {
236
+ exampleOptions[exampleKey] = isExampleRow;
237
+ }
238
+ // Don't continue here, let assignment happen below
239
+ }
240
+ else if (exampleKey === 'actualOutput' || exampleKey === 'expectedOutput') {
241
+ // If it contains the delimiter, treat as array, otherwise string
242
+ if (value.includes(secondaryDelimiter)) {
243
+ value = value
244
+ .split(secondaryDelimiter)
245
+ .map((item) => item.trim())
246
+ .filter((item) => item !== '');
247
+ } // else leave as string
248
+ }
249
+ }
250
+ exampleOptions[exampleKey] = value; // Assign using the camelCase key
251
+ }
252
+ // Only add if it's marked as an example and has required fields
253
+ if (isExampleRow) {
254
+ // Check required fields using camelCase
255
+ if (exampleOptions.input === undefined ||
256
+ exampleOptions.input === null
257
+ // actualOutput is optional in ExampleOptions, so don't check here
258
+ ) {
259
+ console.warn(`Row ${index + 2}: Skipping example due to missing 'input'.`);
260
+ }
261
+ else {
262
+ // Add trace_id if missing and mapped
263
+ if (headerMapping.traceId && !exampleOptions.traceId) {
264
+ exampleOptions.traceId = String((_a = row[headerMapping.traceId]) !== null && _a !== void 0 ? _a : null); // Ensure it's a string
265
+ }
266
+ newExamples.push(new Example(exampleOptions));
267
+ }
268
+ }
269
+ });
270
+ console.info(`Adding ${newExamples.length} examples from CSV`);
271
+ newExamples.forEach((e) => this.addExample(e));
272
+ }
273
+ catch (error) {
274
+ if (error.code === 'ENOENT') {
275
+ console.error(`CSV file not found: ${filePath}`);
276
+ throw new Error(`The file ${filePath} was not found.`);
277
+ }
278
+ else {
279
+ console.error(`Error loading dataset from CSV: ${filePath}`, error);
280
+ throw error; // Re-throw other errors
281
+ }
282
+ }
283
+ }
284
+ /**
285
+ * Saves the dataset as a file.
286
+ * @param fileType The file type to save as ('json', 'csv', 'yaml').
287
+ * @param dirPath The directory path to save the file to.
288
+ * @param saveName Optional: The name of the file (without extension). Defaults to a timestamp.
289
+ * @param secondaryDelimiter Optional: The delimiter used for joining list fields in CSV output. Defaults to ";".
290
+ */
291
+ saveAs(fileType, dirPath, saveName, secondaryDelimiter = ';') {
292
+ if (!ACCEPTABLE_FILE_TYPES.includes(fileType)) {
293
+ throw new TypeError(`Invalid file type: ${fileType}. Please choose from ${ACCEPTABLE_FILE_TYPES.join(', ')}`);
294
+ }
295
+ try {
296
+ // Ensure directory exists
297
+ if (!fs.existsSync(dirPath)) {
298
+ fs.mkdirSync(dirPath, { recursive: true });
299
+ }
300
+ const fileName = saveName !== null && saveName !== void 0 ? saveName : format(new Date(), 'yyyyMMdd_HHmmss');
301
+ const completePath = path.join(dirPath, `${fileName}.${fileType}`);
302
+ // Use the Example class's toJSON method which outputs snake_case keys
303
+ const examplesForOutput = this.examples.map(e => e.toJSON());
304
+ console.info(`Saving dataset to ${completePath}`);
305
+ if (fileType === 'json') {
306
+ const jsonContent = JSON.stringify({ examples: examplesForOutput }, null, 4);
307
+ fs.writeFileSync(completePath, jsonContent, 'utf-8');
308
+ }
309
+ else if (fileType === 'yaml') {
310
+ // The toJSON output is already structured correctly for YAML
311
+ const yamlContent = YAML.dump({ examples: examplesForOutput }, { noRefs: true, lineWidth: -1 });
312
+ fs.writeFileSync(completePath, yamlContent, 'utf-8');
313
+ }
314
+ else if (fileType === 'csv') {
315
+ // Define CSV headers using the snake_case keys expected in the output
316
+ const csvHeaders = [
317
+ 'input',
318
+ 'actual_output',
319
+ 'expected_output',
320
+ 'context',
321
+ 'retrieval_context',
322
+ 'additional_metadata',
323
+ 'tools_called',
324
+ 'expected_tools',
325
+ 'name',
326
+ 'example_id',
327
+ 'example_index',
328
+ 'timestamp',
329
+ 'trace_id',
330
+ 'example',
331
+ ];
332
+ // Prepare data for PapaParse using the snake_case keys from toJSON()
333
+ const csvData = examplesForOutput.map((e_json) => {
334
+ const row = {};
335
+ csvHeaders.forEach((header) => {
336
+ const value = e_json[header];
337
+ // Check original camelCase list keys for joining arrays
338
+ if ((header === 'context' ||
339
+ header === 'retrieval_context' ||
340
+ header === 'tools_called' ||
341
+ header === 'expected_tools') && Array.isArray(value)) {
342
+ row[header] = value.join(secondaryDelimiter);
343
+ }
344
+ else if (header === 'additional_metadata' && typeof value === 'object' && value !== null) {
345
+ try {
346
+ row[header] = JSON.stringify(value);
347
+ }
348
+ catch (_a) {
349
+ row[header] = String(value);
350
+ }
351
+ }
352
+ else if (header === 'example') {
353
+ row[header] = value !== null && value !== void 0 ? value : true; // Default to true if null/undefined
354
+ }
355
+ else {
356
+ row[header] = value === undefined ? null : value;
357
+ }
358
+ });
359
+ return row;
360
+ });
361
+ const csvContent = Papa.unparse(csvData, {
362
+ columns: csvHeaders,
363
+ header: true,
364
+ delimiter: ',',
365
+ });
366
+ fs.writeFileSync(completePath, csvContent, 'utf-8');
367
+ }
368
+ }
369
+ catch (error) {
370
+ console.error(`Error saving dataset to ${fileType}:`, error);
371
+ throw error; // Re-throw error
372
+ }
373
+ }
374
+ }
375
+ //# sourceMappingURL=eval-dataset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eval-dataset.js","sourceRoot":"","sources":["../../../../src/data/datasets/eval-dataset.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,12 @@ export class Example {
8
8
  this.additionalMetadata = options.additionalMetadata;
9
9
  this.toolsCalled = options.toolsCalled;
10
10
  this.expectedTools = options.expectedTools;
11
+ this.name = options.name;
11
12
  this.exampleId = options.exampleId || this.generateUUID();
12
13
  this.exampleIndex = options.exampleIndex;
13
- this.timestamp = options.timestamp;
14
+ this.timestamp = options.timestamp || new Date().toISOString();
15
+ this.traceId = options.traceId;
16
+ this.example = options.example;
14
17
  }
15
18
  /**
16
19
  * Generate a UUID for the example ID
@@ -41,9 +44,12 @@ export class Example {
41
44
  additional_metadata: this.additionalMetadata,
42
45
  tools_called: this.toolsCalled,
43
46
  expected_tools: this.expectedTools,
47
+ name: this.name,
44
48
  example_id: this.exampleId,
45
49
  example_index: this.exampleIndex,
46
50
  timestamp: this.timestamp,
51
+ trace_id: this.traceId,
52
+ example: this.example,
47
53
  };
48
54
  }
49
55
  }
@@ -86,6 +92,10 @@ export class ExampleBuilder {
86
92
  this._expectedTools = expectedTools;
87
93
  return this;
88
94
  }
95
+ name(name) {
96
+ this._name = name;
97
+ return this;
98
+ }
89
99
  exampleId(exampleId) {
90
100
  this._exampleId = exampleId;
91
101
  return this;
@@ -98,6 +108,14 @@ export class ExampleBuilder {
98
108
  this._timestamp = timestamp;
99
109
  return this;
100
110
  }
111
+ traceId(traceId) {
112
+ this._traceId = traceId;
113
+ return this;
114
+ }
115
+ example(example) {
116
+ this._example = example;
117
+ return this;
118
+ }
101
119
  build() {
102
120
  if (!this._input) {
103
121
  throw new Error('Input is required for an Example');
@@ -111,9 +129,12 @@ export class ExampleBuilder {
111
129
  additionalMetadata: this._additionalMetadata,
112
130
  toolsCalled: this._toolsCalled,
113
131
  expectedTools: this._expectedTools,
132
+ name: this._name,
114
133
  exampleId: this._exampleId,
115
134
  exampleIndex: this._exampleIndex,
116
135
  timestamp: this._timestamp,
136
+ traceId: this._traceId,
137
+ example: this._example,
117
138
  });
118
139
  }
119
140
  }
@@ -1 +1 @@
1
- {"version":3,"file":"example.js","sourceRoot":"","sources":["../../../src/data/example.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"example.js","sourceRoot":"","sources":["../../../src/data/example.ts"],"names":[],"mappings":"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"}