@llmdata/rubric
Version:
TypeScript/Node.js bindings for Rubric - LLM-based evaluation using weighted rubrics. High-performance Rust core with idiomatic TypeScript API.
39 lines (30 loc) • 1.08 kB
TypeScript
/* auto-generated by NAPI-RS */
/* eslint-disable */
export declare class PerCriterionGrader {
constructor(generator?: (systemPrompt: string, userPrompt: string) => string | Promise<string>, systemPrompt?: string | undefined | null)
}
export declare class Rubric {
constructor(criteria: Array<CriterionInput>)
static fromDict(criteria: Array<CriterionInput>): Rubric
len(): number
isEmpty(): boolean
grade(toGrade: string, grader?: PerCriterionGrader | undefined | null, query?: string | undefined | null): Promise<EvaluationReport>
}
export interface CriterionInput {
weight: number
requirement: string
}
export interface CriterionReport {
weight: number
requirement: string
verdict: string
reason: string
}
export interface EvaluationReport {
score: number
report?: Array<CriterionReport>
}
export declare function perCriterionDefaultSystemPrompt(): string
export declare function rubricFromFile(path: string): Rubric
export declare function rubricFromJson(json: string): Rubric
export declare function rubricFromYaml(yaml: string): Rubric