ChemPal Documentation - v1.6.0
    Preparing search index...

    Function printFuzzProbe

    • Prints a FuzzProbeResult as console tables: one ranked table per scorer, then the merged title-by-scorer matrix, then the biggest scorer disagreements.

      Parameters

      • result: FuzzProbeResult

        The scored result to print.

      • Optionallimit: number

        Rows to show in the merged and spread tables.

      Returns void

      Nothing; writes to the console.

      printFuzzProbe(scoreCorpus("acetone", corpus), 10);
      
      export function printFuzzProbe(result: FuzzProbeResult, limit?: number): void {
      const rows = resolveLimit(limit);
      console.info(
      `[fuzzTest] query="${result.query}" — ${result.corpusSize} cached titles, ${result.scorers.length} scorers`,
      );

      for (const name of result.scorers) {
      console.groupCollapsed(`${name} — top ${result.byScorer[name].length}`);
      console.table(
      result.byScorer[name].map((row) => ({
      score: row.score,
      title: row.title,
      supplier: row.supplier,
      source: row.source,
      })),
      );
      console.groupEnd();
      }

      console.groupCollapsed(`All titles × scorers (top ${rows} by average)`);
      console.table(
      result.byTitle
      .map((row) => ({ title: row.title, supplier: row.supplier, ...row.scores }))
      .slice(0, rows),
      );
      console.groupEnd();

      console.groupCollapsed(`Biggest scorer disagreements (top ${rows})`);
      console.table(result.spread.slice(0, rows));
      console.groupEnd();
      }