Skip to main content
const evaluation = await tracia.traces.evaluate(traceId, options);
Submit an evaluation for a trace. Evaluations allow you to score traces, providing feedback on response quality.

Parameters

ParameterTypeRequiredDescription
traceIdstringYesThe trace ID to evaluate
options.evaluatorstringYesThe evaluator key. Currently only quality is supported.
options.valuenumberYesThe evaluation score. Use Eval.POSITIVE (1) or Eval.NEGATIVE (0)
options.notestringNoOptional note explaining the evaluation

Response

interface EvaluateResult {
  id: string;
  evaluatorKey: string;
  evaluatorName: string;
  value: number;
  source: string;
  note: string | null;
  createdAt: string;
}

Examples

Binary Evaluation (Thumbs Up/Down)

import { Tracia, Eval } from 'tracia';

const tracia = new Tracia({ apiKey: process.env.TRACIA_API_KEY });

// Positive evaluation
await tracia.traces.evaluate('tr_abc123def456', {
  evaluator: 'quality',
  value: Eval.POSITIVE
});

// Negative evaluation
await tracia.traces.evaluate('tr_abc123def456', {
  evaluator: 'quality',
  value: Eval.NEGATIVE
});

Adding a Note

await tracia.traces.evaluate('tr_abc123def456', {
  evaluator: 'quality',
  value: Eval.NEGATIVE,
  note: 'Response was off-topic and did not address the user question'
});

User Feedback Integration

// Capture user feedback from your application
async function submitUserFeedback(traceId: string, isHelpful: boolean, comment?: string) {
  await tracia.traces.evaluate(traceId, {
    evaluator: 'quality',
    value: isHelpful ? Eval.POSITIVE : Eval.NEGATIVE,
    note: comment
  });
}

Error Handling

import { Tracia, TraciaError, TraciaErrorCode, Eval } from 'tracia';

try {
  await tracia.traces.evaluate('tr_abc123def456', {
    evaluator: 'quality',
    value: Eval.POSITIVE
  });
} catch (error) {
  if (error instanceof TraciaError) {
    if (error.code === TraciaErrorCode.NOT_FOUND) {
      console.error('Trace not found');
    } else if (error.code === TraciaErrorCode.INVALID_REQUEST) {
      console.error('Invalid evaluation value');
    }
  }
}