Team Ai
Datasetpublic

Chulinz/Text2SQL-Decisions

Text2SQL-Decisions v0.3 28,081 English-only examples across two separate configurations. Both are template-generated, execution-validated drafts, not human-reviewed benchmarks. No model has been fine-tuned as part of this release. Configuration Rows Task License default 25,000 Four-candidate SQL plan selection on public sensor and e-commerce data CC BY 4.0 meter 3,081 Bounded meter planning decisions, including conversational context CC0-1.0 The configurations… See the full description on the dataset page: https://huggingface.co/datasets/Chulinz/Text2SQL-Decisions.

sourceHugging Facecc-by-4.0updated 1d agoView on Hugging Face
0likes67downloads
data-fixture.ts34 linesDownload Raw Back to meter_fixture
1import { fixtureAsOf, fixtureStart } from './data-config.js';2import type { FixtureMeter, FixtureReading } from './data-schema.js';3 4export const meterCatalog: FixtureMeter[] = Array.from({ length: 15 }, (_, index) => ({5  id: `meter-${String(index + 1).padStart(2, '0')}`,6  name: `${['DI Water', 'Chemical', 'H2SO4'][index % 3]} ${index + 1}`,7  resource: ['DI Water', 'Chemical', 'H2SO4'][index % 3],8  unit: index % 3 === 0 ? 'm3' : 'L',9  building: index < 9 ? 'A' : 'B',10  floor: Math.floor(index / 3) % 3 + 1,11  expected_interval_minutes: 60,12}));13 14export function generateMeterReadings(): FixtureReading[] {15  const readings: FixtureReading[] = [];16  const end = Date.parse(fixtureAsOf);17  for (const [index, meter] of meterCatalog.entries()) {18    if (index === 14) continue;19    let cumulative = 1000 + index * 100;20    for (let time = Date.parse(fixtureStart), step = 0; time <= end; time += 3_600_000, step++) {21      const reset = index === 3 && time === Date.parse('2026-10-08T00:00:00Z');22      const today = time > Date.parse('2026-10-08T17:00:00Z');23      const increment = (index + 1) * (1 + step % 6 / 10) * (index === 2 && today ? 5 : 1);24      cumulative = reset ? 0 : Math.round((cumulative + increment) * 1000) / 1000;25      if (index === 12 && time > end - 5 * 3_600_000) continue;26      if (index === 4 && time > end - 9 * 3_600_000 && time < end - 5 * 3_600_000) continue;27      readings.push({ meter_id: meter.id, recorded_at: new Date(time).toISOString(), cumulative_value: cumulative,28        quality: index === 5 && time === end - 2 * 3_600_000 ? 'invalid' : 'valid', reset });29    }30  }31  readings.push({ meter_id: 'meter-14', recorded_at: new Date(end + 3_600_000).toISOString(), cumulative_value: 999999, quality: 'valid', reset: false });32  return readings;33}34