From 9d2ce67a78fc7881d47c0e6ff65267280eb8cc24 Mon Sep 17 00:00:00 2001 From: Aaron Po Date: Sat, 27 Jun 2026 22:40:22 -0400 Subject: [PATCH] Run pipeling, update sqllite file --- .../public/biergarten.sqlite | Bin 77824 -> 106496 bytes .../includes/data_generation/data_generator.h | 2 +- tooling/pipeline/src/main.cc | 57 +++++++++--------- 3 files changed, 28 insertions(+), 31 deletions(-) diff --git a/tooling/pipeline-results-viewer/public/biergarten.sqlite b/tooling/pipeline-results-viewer/public/biergarten.sqlite index aae149a07c1e51408a2ddf1f18168230bbcd805a..f3dd1320d91ec7a9be9f134238df2bffe86ab2f7 100644 GIT binary patch literal 106496 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 LbOVppK?aC6Fn1uge?@sO1&)O zTA{piy#bd19WwF!{qLs|1q2K1rq7N;y@^sZvf^tKd>j z9Y*CXpVe}yz9b$Q-NAfsiL zJpo5)qbsa>OW!q1n8rB-VK6Kjv7*Sqw)L_B8FfW(a@RU@tSn%yE?&H zrm#&BO1rVJ)J@QIW0I8Y?mQGnwZttn>)~~EMd&Fvp{2!oa9Q>yRs(h*5oY3u(u1Xe zqJXLkmzT0DE)+}>tfi}EUZKJ38UJ2J9~yLi(|R62o{_%;dq?&^x+qs&S@`_yFf!&x z#@$z1mDJ%7Q#QNa%sd*E%sLQQ75P!QilHYe=VNi?qLD zIdO|G+tbf&qY?g1-xVWE0Dix*|@|~Mc4AeXqUpi1p{)I0Qk}cRep25 z-5daMa9aW{BDX&aD>E-SaQx8i0Q)d+#E-#>@1hSp#zlUYAZ?yD=WhUefEQ6%S;E6YL1U+V5umsCDS8J0nRgvpYK1|3pVR>pN zmme8pL0Tb=HQc|D_e&I^na{))JyH^n+o{U4xyMndvH>?nMR}!wtyTM7;q$N$#34hA zJq~I|ZU@+srHJ?qdO*1YK5|d?e-l{fiQ>T-@1FB~Av*_&z6 z^+oO2NQh>WmZJ;B!-dGvP_sJ@qlPa;5~=!3Xc^s>kvmzmU-Uy}%om)Ks9t36^8Sb< z8ulU!Qb{8=Bcor9y?616QITYzpuJ?QjA9&^sT{+caNU+srA|uNFc9#a`qZI)NO$0) z020*$0!i_K#^UpweU_MZtuGz|Ib`1_qfCIp)^94!3`36larj;_Wew zMD8zDuC_NXb*fE zmu8TaRnF*uhtVlQxJhLo$~y#OCeLhwfY+QOcwa;0o8)~c&>+7`m)NOHNW?;lmbEx! zk0`;_7-CYUJ!I};&r29o2%^@gY8w|Mo{d2v&rrlUXRT_T1)I`w6E(sn00ui0GcoCi zbk^@ymBLAfWp|vfApNGSvZpAr2(=fZ^kt{k4z4gm{g=VIsaOhHkyQ{#82X4dFJxov z65RlIx~<;YraI2h*F+U+hzi4?R}=9I0AGkhXh-cKMZubym-H3rrJJi02eQyU56DEI z#B?Iw73v1UOGBa-DDovSG^#Xl4mcPEvEq1Ex--X}IW`?PM$DwW=SP7R3T_gG%8g@v H+2sERZ(@p( literal 77824 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 c7ZVew=psN-yKn{^>9(nullptr); } - { - log_producer->Log({.level = LogLevel::Info, - .phase = PipelinePhase::Startup, - .message = "Web client: HttpWebClient"}); - } + + log_producer->Log({.level = LogLevel::Info, + .phase = PipelinePhase::Startup, + .message = "Web client: HttpWebClient"}); + return std::unique_ptr( std::make_unique(log_producer)); }), @@ -147,18 +147,17 @@ int main(const int argc, char** argv) { [options, &log_producer]( const auto& inj) -> std::unique_ptr { if (options.generator.use_mocked) { - { - log_producer->Log({.level = LogLevel::Info, - .phase = PipelinePhase::Startup, - .message = "Enrichment: mock"}); - } - return std::make_unique(); - } - { log_producer->Log({.level = LogLevel::Info, .phase = PipelinePhase::Startup, - .message = "Enrichment: Wikipedia"}); + .message = "Enrichment: mock"}); + + return std::make_unique(); } + + log_producer->Log({.level = LogLevel::Info, + .phase = PipelinePhase::Startup, + .message = "Enrichment: Wikipedia"}); + return std::make_unique( inj.template create>(), log_producer); @@ -168,24 +167,22 @@ int main(const int argc, char** argv) { &log_producer ](const auto& inj) -> std::unique_ptr { if (options.generator.use_mocked) { - { - log_producer->Log({.level = LogLevel::Info, - .phase = PipelinePhase::Startup, - .message = "Generator: mock"}); - } + log_producer->Log({.level = LogLevel::Info, + .phase = PipelinePhase::Startup, + .message = "Generator: mock"}); + return std::make_unique(); } - { - log_producer->Log( - {.level = LogLevel::Info, - .phase = PipelinePhase::Startup, - .message = std::format( - "Generator: LlamaGenerator | model={} | " - "temp={:.2f} " - "top_p={:.2f} top_k={} n_ctx={} seed={}", - model_path, sampling.temperature, sampling.top_p, - sampling.top_k, sampling.n_ctx, sampling.seed)}); - } + + log_producer->Log( + {.level = LogLevel::Info, + .phase = PipelinePhase::Startup, + .message = std::format( + "Generator: LlamaGenerator | model={} | " + "temp={:.2f} top_p={:.2f} top_k={} n_ctx={} seed={}", + model_path, sampling.temperature, sampling.top_p, + sampling.top_k, sampling.n_ctx, sampling.seed)}); + return std::make_unique( options, model_path, log_producer, inj.template create>(),