SPB Git

spb/wp40_uqo

Public MIT
2.6 KB · 41 lines cpp
1#include "raid/core/estimate.hpp"2#include "raid/core/plan.hpp"34namespace raid {56nlohmann::json Provenance::to_json() const {7  return {{"dataset_id", dataset_id}, {"dataset_version", dataset_version}, {"request_ids", request_ids},8          {"input_hashes", input_hashes}, {"code_version", code_version}, {"source", source}, {"extra", extra}};9}10nlohmann::json Convergence::to_json() const {11  return {{"converged", converged}, {"iterations", iterations}, {"function_evaluations", function_evaluations},12          {"gradient_norm", gradient_norm}, {"status_code", status_code}, {"message", message}};13}14nlohmann::json InferenceResult::to_json() const {15  std::vector<std::vector<f64>> cov(static_cast<usize>(covariance.rows()));16  for (Eigen::Index i = 0; i < covariance.rows(); ++i) { cov[static_cast<usize>(i)].resize(static_cast<usize>(covariance.cols())); for (Eigen::Index j = 0; j < covariance.cols(); ++j) cov[static_cast<usize>(i)][static_cast<usize>(j)] = covariance(i, j); }17  return {{"std_errors", std_errors}, {"t_stats", t_stats}, {"p_values", p_values}, {"covariance", cov},18          {"covariance_type", covariance_type}, {"small_sample_correction", small_sample_correction}};19}20nlohmann::json Estimate::to_json() const {21  nlohmann::json j = {{"model", model}, {"names", names}, {"coefficients", coefficients}, {"loss", loss},22                      {"convergence", convergence.to_json()}, {"warnings", warnings}, {"runtime_seconds", runtime_seconds},23                      {"backend", std::string(to_string(backend))}, {"precision", std::string(to_string(precision))},24                      {"provenance", provenance.to_json()}, {"n_obs", n_obs}, {"extra", extra}, {"ok", ok()}};25  if (inference) j["inference"] = inference->to_json();26  return j;27}28nlohmann::json Device::to_json() const {29  return {{"name", name}, {"kind", std::string(to_string(kind))}, {"memory_bytes", memory_bytes}, {"compute_units", compute_units},30          {"unified_memory", unified_memory}, {"supports_fp64", supports_fp64}, {"max_buffer_bytes", max_buffer_bytes}, {"details", details}};31}32nlohmann::json PrecisionPolicy::to_json() const {33  return {{"requested", std::string(to_string(requested))}, {"fp32_chunk_max", fp32_chunk_max}, {"compensated", compensated}, {"validate_rtol", validate_rtol}};34}35nlohmann::json ExecutionPlan::to_json() const {36  return {{"backend", std::string(to_string(backend))}, {"precision", precision.to_json()}, {"deterministic", deterministic},37          {"threads", threads}, {"chunk_rows", chunk_rows}, {"max_memory_bytes", max_memory_bytes}, {"allow_fallback", allow_fallback}, {"seed", seed}};38}3940}  // namespace raid41
Files · 8bc0ff72827eec1538e444cdd95e673044ea7b85
Menu

Theme