orchestrated 0.1.16 → 0.1.17

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 (3) hide show
  1. package/index.js +24 -5
  2. package/index.js.map +4 -4
  3. package/package.json +1 -1
package/index.js CHANGED
@@ -117068,7 +117068,9 @@ class S3FileManager {
117068
117068
  body: content
117069
117069
  });
117070
117070
  if (!uploadResponse.ok) {
117071
- throw new Error(`Failed to upload batch file to S3: ${uploadResponse.statusText}`);
117071
+ const errorBody = await uploadResponse.text();
117072
+ throw new Error(`Failed to upload batch file to S3 (${uploadResponse.status}): ${uploadResponse.statusText}
117073
+ ${errorBody}`);
117072
117074
  }
117073
117075
  return `s3://${result.bucket}/${asset.s3Key}`;
117074
117076
  }
@@ -118172,11 +118174,11 @@ function getEvaluationOptions(name, options, state) {
118172
118174
  let batchClient;
118173
118175
  let evalClient;
118174
118176
  let openaiClient;
118177
+ const batchProcessor = merged.batchProcessor ?? "OPENAI";
118175
118178
  if (execute === "batch") {
118176
118179
  if (merged.batchClient) {
118177
118180
  batchClient = merged.batchClient;
118178
118181
  } else {
118179
- const batchProcessor = merged.batchProcessor ?? "OPENAI";
118180
118182
  if (batchProcessor === "BEDROCK_OPENAI") {
118181
118183
  if (!state.bedrockRegion || !state.bedrockApiKey || !state.bedrockServiceRoleArn || !state.bedrockModelId || !state.bedrockS3Bucket) {
118182
118184
  throw new Error(`Bedrock configuration is incomplete. Required: bedrockRegion, bedrockApiKey, bedrockServiceRoleArn, bedrockModelId, bedrockS3Bucket.
@@ -118192,6 +118194,15 @@ function getEvaluationOptions(name, options, state) {
118192
118194
  s3Bucket: state.bedrockS3Bucket
118193
118195
  }
118194
118196
  });
118197
+ const OpenAI4 = __require("openai").default;
118198
+ openaiClient = new OpenAI4({
118199
+ baseURL: `https://bedrock-runtime.${state.bedrockRegion}.amazonaws.com/openai/v1`,
118200
+ apiKey: state.bedrockApiKey,
118201
+ defaultHeaders: {
118202
+ "X-Amzn-Bedrock-RoleArn": state.bedrockServiceRoleArn,
118203
+ "X-Amzn-Bedrock-ModelId": state.bedrockModelId
118204
+ }
118205
+ });
118195
118206
  } else {
118196
118207
  batchClient = new BatchClient;
118197
118208
  }
@@ -118215,6 +118226,7 @@ function getEvaluationOptions(name, options, state) {
118215
118226
  createProgressTracker: createProgressTracker || (() => new NullProgressTracker),
118216
118227
  onPendingBatch,
118217
118228
  execute,
118229
+ batchProcessor,
118218
118230
  batchClient,
118219
118231
  evalClient,
118220
118232
  openaiClient,
@@ -118494,9 +118506,10 @@ async function runEval(name, evaluator, options) {
118494
118506
  jsonl,
118495
118507
  returnResults,
118496
118508
  progress,
118497
- execute,
118509
+ batchProcessor,
118498
118510
  batchClient
118499
118511
  } = options;
118512
+ let { execute } = options;
118500
118513
  const ctx = init({
118501
118514
  ...evaluator.ctx ?? {},
118502
118515
  state,
@@ -118508,6 +118521,11 @@ async function runEval(name, evaluator, options) {
118508
118521
  [ATTR_DATASET_SOURCE_TYPE]: data.ctx.sourceType,
118509
118522
  [ATTR_EVAL_EXECUTION_METADATA_TEST_CASE_COUNT]: data.ctx.caseCount
118510
118523
  });
118524
+ const totalBatchRequests = data.dataset.length * evaluator.scores.length;
118525
+ if (execute === "batch" && batchProcessor === "BEDROCK_OPENAI" && totalBatchRequests < 100) {
118526
+ execute = "sync";
118527
+ iso.writeln(`ℹ ${totalBatchRequests} batch request(s) (${data.dataset.length} records × ${evaluator.scores.length} scorers) is below the 100 minimum for Bedrock batch. Falling back to sync mode.`);
118528
+ }
118511
118529
  if (execute === "batch" && batchClient) {
118512
118530
  await batchClient.initialize(name, data.ctx.checksum, data.ctx.dataSourceType);
118513
118531
  if (batchClient.hasPendingBatch) {
@@ -118517,10 +118535,11 @@ async function runEval(name, evaluator, options) {
118517
118535
  const results = [];
118518
118536
  const errors6 = new Map;
118519
118537
  progress.start(data.dataset.length);
118538
+ const effectiveOptions = execute !== options.execute ? { ...options, execute } : options;
118520
118539
  for (const dataCase of data.dataset) {
118521
118540
  const caseResult = await evaluateDataCase(dataCase, evaluator, ctx.mutate({
118522
118541
  dataset: data.ctx
118523
- }), options);
118542
+ }), effectiveOptions);
118524
118543
  results.push(caseResult.result);
118525
118544
  aggregateScorerErrors(errors6, caseResult.errors);
118526
118545
  if (execute === "sync" && options.onResult) {
@@ -118995,4 +119014,4 @@ export {
118995
119014
  Behavioral
118996
119015
  };
118997
119016
 
118998
- //# debugId=B986FC088997E94964756E2164756E21
119017
+ //# debugId=E1E84E83EB06C98C64756E2164756E21