bigquery-data-science 0.7.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (286) hide show
  1. bigquery_data_science/__init__.py +58 -0
  2. bigquery_data_science/_skills/PLANS.md +76 -0
  3. bigquery_data_science/_skills/bigquery-ai/SKILL.md +66 -0
  4. bigquery_data_science/_skills/bigquery-ai/narrative/ai_agg.md +528 -0
  5. bigquery_data_science/_skills/bigquery-ai/narrative/ai_classify.md +450 -0
  6. bigquery_data_science/_skills/bigquery-ai/narrative/ai_count_tokens.md +180 -0
  7. bigquery_data_science/_skills/bigquery-ai/narrative/ai_detect_anomalies.md +322 -0
  8. bigquery_data_science/_skills/bigquery-ai/narrative/ai_embed.md +425 -0
  9. bigquery_data_science/_skills/bigquery-ai/narrative/ai_evaluate.md +368 -0
  10. bigquery_data_science/_skills/bigquery-ai/narrative/ai_forecast.md +437 -0
  11. bigquery_data_science/_skills/bigquery-ai/narrative/ai_generate.md +693 -0
  12. bigquery_data_science/_skills/bigquery-ai/narrative/ai_generate_bool.md +248 -0
  13. bigquery_data_science/_skills/bigquery-ai/narrative/ai_generate_double.md +254 -0
  14. bigquery_data_science/_skills/bigquery-ai/narrative/ai_generate_embedding.md +402 -0
  15. bigquery_data_science/_skills/bigquery-ai/narrative/ai_generate_int.md +252 -0
  16. bigquery_data_science/_skills/bigquery-ai/narrative/ai_generate_table.md +447 -0
  17. bigquery_data_science/_skills/bigquery-ai/narrative/ai_generate_text.md +356 -0
  18. bigquery_data_science/_skills/bigquery-ai/narrative/ai_if.md +373 -0
  19. bigquery_data_science/_skills/bigquery-ai/narrative/ai_key_drivers.md +331 -0
  20. bigquery_data_science/_skills/bigquery-ai/narrative/ai_parse_document.md +416 -0
  21. bigquery_data_science/_skills/bigquery-ai/narrative/ai_predict.md +559 -0
  22. bigquery_data_science/_skills/bigquery-ai/narrative/ai_score.md +310 -0
  23. bigquery_data_science/_skills/bigquery-ai/narrative/ai_search.md +465 -0
  24. bigquery_data_science/_skills/bigquery-ai/narrative/ai_similarity.md +371 -0
  25. bigquery_data_science/_skills/bigquery-ai/narrative/catalog_search.md +951 -0
  26. bigquery_data_science/_skills/bigquery-ai/narrative/content_analysis.md +284 -0
  27. bigquery_data_science/_skills/bigquery-ai/narrative/content_moderation.md +369 -0
  28. bigquery_data_science/_skills/bigquery-ai/narrative/data_enrichment.md +426 -0
  29. bigquery_data_science/_skills/bigquery-ai/narrative/document_intelligence.md +470 -0
  30. bigquery_data_science/_skills/bigquery-ai/narrative/document_rag.md +453 -0
  31. bigquery_data_science/_skills/bigquery-ai/narrative/image_deduplication.md +770 -0
  32. bigquery_data_science/_skills/bigquery-ai/narrative/log_analysis.md +668 -0
  33. bigquery_data_science/_skills/bigquery-ai/narrative/metric_diagnostics.md +568 -0
  34. bigquery_data_science/_skills/bigquery-ai/narrative/ml_annotate_image.md +680 -0
  35. bigquery_data_science/_skills/bigquery-ai/narrative/ml_generate_embedding.md +217 -0
  36. bigquery_data_science/_skills/bigquery-ai/narrative/ml_generate_text.md +223 -0
  37. bigquery_data_science/_skills/bigquery-ai/narrative/ml_process_document.md +392 -0
  38. bigquery_data_science/_skills/bigquery-ai/narrative/ml_transcribe.md +815 -0
  39. bigquery_data_science/_skills/bigquery-ai/narrative/ml_translate.md +600 -0
  40. bigquery_data_science/_skills/bigquery-ai/narrative/ml_understand_text.md +673 -0
  41. bigquery_data_science/_skills/bigquery-ai/narrative/multimodal_analysis.md +266 -0
  42. bigquery_data_science/_skills/bigquery-ai/narrative/rag_pipeline.md +593 -0
  43. bigquery_data_science/_skills/bigquery-ai/narrative/semantic_search.md +510 -0
  44. bigquery_data_science/_skills/bigquery-ai/narrative/tabular_prediction.md +485 -0
  45. bigquery_data_science/_skills/bigquery-ai/narrative/time_series_intelligence.md +489 -0
  46. bigquery_data_science/_skills/bigquery-ai/narrative/vector_search.md +672 -0
  47. bigquery_data_science/_skills/bigquery-ai/reference/augmented-analytics.md +77 -0
  48. bigquery_data_science/_skills/bigquery-ai/reference/cloud-ai-service-models.md +88 -0
  49. bigquery_data_science/_skills/bigquery-ai/reference/document-processing.md +95 -0
  50. bigquery_data_science/_skills/bigquery-ai/reference/embeddings-and-search.md +166 -0
  51. bigquery_data_science/_skills/bigquery-ai/reference/general-purpose-generation.md +87 -0
  52. bigquery_data_science/_skills/bigquery-ai/reference/managed-functions.md +72 -0
  53. bigquery_data_science/_skills/bigquery-ai/reference/predictive-ai.md +113 -0
  54. bigquery_data_science/_skills/bigquery-ai/reference/workflows.md +56 -0
  55. bigquery_data_science/_skills/bigquery-ai/skill.manifest.json +109 -0
  56. bigquery_data_science/_skills/bigquery-ai/syntax/INDEX.md +71 -0
  57. bigquery_data_science/_skills/bigquery-ai/syntax/aiagg.md +67 -0
  58. bigquery_data_science/_skills/bigquery-ai/syntax/aicausal_effect-covered-in-bigquery-ml.md +17 -0
  59. bigquery_data_science/_skills/bigquery-ai/syntax/aiclassify.md +72 -0
  60. bigquery_data_science/_skills/bigquery-ai/syntax/aicount_tokens.md +53 -0
  61. bigquery_data_science/_skills/bigquery-ai/syntax/aidetect_anomalies.md +63 -0
  62. bigquery_data_science/_skills/bigquery-ai/syntax/aiembed.md +85 -0
  63. bigquery_data_science/_skills/bigquery-ai/syntax/aievaluate.md +114 -0
  64. bigquery_data_science/_skills/bigquery-ai/syntax/aiforecast.md +123 -0
  65. bigquery_data_science/_skills/bigquery-ai/syntax/aigenerate.md +69 -0
  66. bigquery_data_science/_skills/bigquery-ai/syntax/aigenerate_bool.md +53 -0
  67. bigquery_data_science/_skills/bigquery-ai/syntax/aigenerate_double.md +45 -0
  68. bigquery_data_science/_skills/bigquery-ai/syntax/aigenerate_embedding.md +108 -0
  69. bigquery_data_science/_skills/bigquery-ai/syntax/aigenerate_int.md +45 -0
  70. bigquery_data_science/_skills/bigquery-ai/syntax/aigenerate_table.md +64 -0
  71. bigquery_data_science/_skills/bigquery-ai/syntax/aigenerate_text.md +167 -0
  72. bigquery_data_science/_skills/bigquery-ai/syntax/aiif.md +56 -0
  73. bigquery_data_science/_skills/bigquery-ai/syntax/aikey_drivers.md +76 -0
  74. bigquery_data_science/_skills/bigquery-ai/syntax/aiparse_document.md +91 -0
  75. bigquery_data_science/_skills/bigquery-ai/syntax/aipredict.md +74 -0
  76. bigquery_data_science/_skills/bigquery-ai/syntax/aiscore.md +52 -0
  77. bigquery_data_science/_skills/bigquery-ai/syntax/aisearch.md +66 -0
  78. bigquery_data_science/_skills/bigquery-ai/syntax/aisimilarity.md +79 -0
  79. bigquery_data_science/_skills/bigquery-ai/syntax/choosing-between-these-and-the-ai-functions.md +11 -0
  80. bigquery_data_science/_skills/bigquery-ai/syntax/hybrid-search-capability.md +165 -0
  81. bigquery_data_science/_skills/bigquery-ai/syntax/mlannotate_image.md +24 -0
  82. bigquery_data_science/_skills/bigquery-ai/syntax/mlgenerate_embedding.md +34 -0
  83. bigquery_data_science/_skills/bigquery-ai/syntax/mlgenerate_text.md +65 -0
  84. bigquery_data_science/_skills/bigquery-ai/syntax/mlprocess_document.md +125 -0
  85. bigquery_data_science/_skills/bigquery-ai/syntax/mltranscribe.md +26 -0
  86. bigquery_data_science/_skills/bigquery-ai/syntax/mltranslate.md +27 -0
  87. bigquery_data_science/_skills/bigquery-ai/syntax/mlunderstand_text.md +32 -0
  88. bigquery_data_science/_skills/bigquery-ai/syntax/multimodal-input-patterns-by-function.md +128 -0
  89. bigquery_data_science/_skills/bigquery-ai/syntax/object-tables.md +109 -0
  90. bigquery_data_science/_skills/bigquery-ai/syntax/objectref-and-objectrefruntime-schema-reference.md +50 -0
  91. bigquery_data_science/_skills/bigquery-ai/syntax/objfetch_metadata.md +49 -0
  92. bigquery_data_science/_skills/bigquery-ai/syntax/objget_access_url.md +66 -0
  93. bigquery_data_science/_skills/bigquery-ai/syntax/objget_read_url.md +40 -0
  94. bigquery_data_science/_skills/bigquery-ai/syntax/objlist.md +34 -0
  95. bigquery_data_science/_skills/bigquery-ai/syntax/objmake_ref.md +58 -0
  96. bigquery_data_science/_skills/bigquery-ai/syntax/per-row-failures-and-the-retry-pattern.md +19 -0
  97. bigquery_data_science/_skills/bigquery-ai/syntax/setup-apis-connection-roles.md +39 -0
  98. bigquery_data_science/_skills/bigquery-ai/syntax/two-input-shapes.md +22 -0
  99. bigquery_data_science/_skills/bigquery-ai/syntax/vector_search.md +78 -0
  100. bigquery_data_science/_skills/bigquery-ai/syntax/what-the-five-have-in-common.md +27 -0
  101. bigquery_data_science/_skills/bigquery-data-science/SKILL.md +69 -0
  102. bigquery_data_science/_skills/bigquery-data-science/reference/namespace-matrix.md +112 -0
  103. bigquery_data_science/_skills/bigquery-data-science/skill.manifest.json +13 -0
  104. bigquery_data_science/_skills/bigquery-ml/SKILL.md +70 -0
  105. bigquery_data_science/_skills/bigquery-ml/narrative/airflow_with_kfp.md +379 -0
  106. bigquery_data_science/_skills/bigquery-ml/narrative/anomaly_fraud_detection.md +195 -0
  107. bigquery_data_science/_skills/bigquery-ml/narrative/arima_plus.md +635 -0
  108. bigquery_data_science/_skills/bigquery-ml/narrative/arima_plus_xreg.md +453 -0
  109. bigquery_data_science/_skills/bigquery-ml/narrative/autoencoder.md +470 -0
  110. bigquery_data_science/_skills/bigquery-ml/narrative/automl_classifier.md +291 -0
  111. bigquery_data_science/_skills/bigquery-ml/narrative/automl_regressor.md +274 -0
  112. bigquery_data_science/_skills/bigquery-ml/narrative/boosted_tree_classifier.md +449 -0
  113. bigquery_data_science/_skills/bigquery-ml/narrative/boosted_tree_regressor.md +400 -0
  114. bigquery_data_science/_skills/bigquery-ml/narrative/bucketizing.md +201 -0
  115. bigquery_data_science/_skills/bigquery-ml/narrative/causal_effect.md +773 -0
  116. bigquery_data_science/_skills/bigquery-ml/narrative/churn_retention.md +271 -0
  117. bigquery_data_science/_skills/bigquery-ml/narrative/cloud_workflows.md +370 -0
  118. bigquery_data_science/_skills/bigquery-ml/narrative/composer_airflow.md +475 -0
  119. bigquery_data_science/_skills/bigquery-ml/narrative/contribution_analysis.md +346 -0
  120. bigquery_data_science/_skills/bigquery-ml/narrative/cross_validation.md +185 -0
  121. bigquery_data_science/_skills/bigquery-ml/narrative/customer_segmentation.md +233 -0
  122. bigquery_data_science/_skills/bigquery-ml/narrative/dataform.md +372 -0
  123. bigquery_data_science/_skills/bigquery-ml/narrative/dbt.md +283 -0
  124. bigquery_data_science/_skills/bigquery-ml/narrative/difference_in_differences.md +280 -0
  125. bigquery_data_science/_skills/bigquery-ml/narrative/distance.md +195 -0
  126. bigquery_data_science/_skills/bigquery-ml/narrative/dnn_classifier.md +326 -0
  127. bigquery_data_science/_skills/bigquery-ml/narrative/dnn_regressor.md +308 -0
  128. bigquery_data_science/_skills/bigquery-ml/narrative/embeddings_classification.md +426 -0
  129. bigquery_data_science/_skills/bigquery-ml/narrative/encoding.md +238 -0
  130. bigquery_data_science/_skills/bigquery-ml/narrative/ensembling.md +278 -0
  131. bigquery_data_science/_skills/bigquery-ml/narrative/evaluation.md +445 -0
  132. bigquery_data_science/_skills/bigquery-ml/narrative/exploration.md +779 -0
  133. bigquery_data_science/_skills/bigquery-ml/narrative/export.md +321 -0
  134. bigquery_data_science/_skills/bigquery-ml/narrative/feature_engineering.md +280 -0
  135. bigquery_data_science/_skills/bigquery-ml/narrative/feature_store.md +652 -0
  136. bigquery_data_science/_skills/bigquery-ml/narrative/feature_store_workflow.md +426 -0
  137. bigquery_data_science/_skills/bigquery-ml/narrative/ga4_churn_prediction.md +285 -0
  138. bigquery_data_science/_skills/bigquery-ml/narrative/hierarchical_forecasting.md +441 -0
  139. bigquery_data_science/_skills/bigquery-ml/narrative/image.md +791 -0
  140. bigquery_data_science/_skills/bigquery-ml/narrative/imported.md +426 -0
  141. bigquery_data_science/_skills/bigquery-ml/narrative/kmeans.md +348 -0
  142. bigquery_data_science/_skills/bigquery-ml/narrative/linear_regression.md +372 -0
  143. bigquery_data_science/_skills/bigquery-ml/narrative/logistic_regression.md +390 -0
  144. bigquery_data_science/_skills/bigquery-ml/narrative/matrix_factorization.md +404 -0
  145. bigquery_data_science/_skills/bigquery-ml/narrative/model_monitoring.md +609 -0
  146. bigquery_data_science/_skills/bigquery-ml/narrative/pca.md +357 -0
  147. bigquery_data_science/_skills/bigquery-ml/narrative/price_elasticity_dml.md +286 -0
  148. bigquery_data_science/_skills/bigquery-ml/narrative/propensity_score_matching.md +350 -0
  149. bigquery_data_science/_skills/bigquery-ml/narrative/random_forest_classifier.md +445 -0
  150. bigquery_data_science/_skills/bigquery-ml/narrative/random_forest_regressor.md +409 -0
  151. bigquery_data_science/_skills/bigquery-ml/narrative/recommendation.md +281 -0
  152. bigquery_data_science/_skills/bigquery-ml/narrative/regression_based_forecasting.md +491 -0
  153. bigquery_data_science/_skills/bigquery-ml/narrative/remote.md +428 -0
  154. bigquery_data_science/_skills/bigquery-ml/narrative/scalers.md +325 -0
  155. bigquery_data_science/_skills/bigquery-ml/narrative/scheduled_queries.md +284 -0
  156. bigquery_data_science/_skills/bigquery-ml/narrative/sql_scripting.md +243 -0
  157. bigquery_data_science/_skills/bigquery-ml/narrative/survival_analysis.md +363 -0
  158. bigquery_data_science/_skills/bigquery-ml/narrative/synthetic_control.md +221 -0
  159. bigquery_data_science/_skills/bigquery-ml/narrative/text.md +215 -0
  160. bigquery_data_science/_skills/bigquery-ml/narrative/time_series.md +669 -0
  161. bigquery_data_science/_skills/bigquery-ml/narrative/transform_only.md +273 -0
  162. bigquery_data_science/_skills/bigquery-ml/narrative/uplift_cate.md +241 -0
  163. bigquery_data_science/_skills/bigquery-ml/narrative/vertex_kfp.md +360 -0
  164. bigquery_data_science/_skills/bigquery-ml/narrative/wide_and_deep_classifier.md +316 -0
  165. bigquery_data_science/_skills/bigquery-ml/narrative/wide_and_deep_regressor.md +298 -0
  166. bigquery_data_science/_skills/bigquery-ml/reference/classification.md +80 -0
  167. bigquery_data_science/_skills/bigquery-ml/reference/model-management.md +90 -0
  168. bigquery_data_science/_skills/bigquery-ml/reference/preprocessing-functions.md +234 -0
  169. bigquery_data_science/_skills/bigquery-ml/reference/regression.md +79 -0
  170. bigquery_data_science/_skills/bigquery-ml/reference/unsupervised-and-specialized.md +101 -0
  171. bigquery_data_science/_skills/bigquery-ml/reference/workflows-and-pipelines.md +111 -0
  172. bigquery_data_science/_skills/bigquery-ml/skill.manifest.json +177 -0
  173. bigquery_data_science/_skills/bigquery-ml/syntax/1-model_type-catalog.md +28 -0
  174. bigquery_data_science/_skills/bigquery-ml/syntax/2-task-mlevaluate-metric-columns.md +26 -0
  175. bigquery_data_science/_skills/bigquery-ml/syntax/3-capability-matrix-per-model-type.md +21 -0
  176. bigquery_data_science/_skills/bigquery-ml/syntax/4-explainability-weights-functions.md +14 -0
  177. bigquery_data_science/_skills/bigquery-ml/syntax/5-connection-matrix.md +11 -0
  178. bigquery_data_science/_skills/bigquery-ml/syntax/6-which-model-free-function-no-create-model-no-connection.md +15 -0
  179. bigquery_data_science/_skills/bigquery-ml/syntax/7-point-in-time-feature-retrieval-which-of-the-two.md +11 -0
  180. bigquery_data_science/_skills/bigquery-ml/syntax/INDEX.md +111 -0
  181. bigquery_data_science/_skills/bigquery-ml/syntax/aicausal_effect.md +85 -0
  182. bigquery_data_science/_skills/bigquery-ml/syntax/arima_plus-forecasting-lifecycle-functions.md +14 -0
  183. bigquery_data_science/_skills/bigquery-ml/syntax/arima_plus-univariate-time-series-forecasting.md +132 -0
  184. bigquery_data_science/_skills/bigquery-ml/syntax/arima_plus_xreg-multivariate-time-series-with-external-regressors.md +103 -0
  185. bigquery_data_science/_skills/bigquery-ml/syntax/autoencoder.md +102 -0
  186. bigquery_data_science/_skills/bigquery-ml/syntax/automl_classifier-automl_regressor.md +88 -0
  187. bigquery_data_science/_skills/bigquery-ml/syntax/boosted_tree_classifier-boosted_tree_regressor.md +117 -0
  188. bigquery_data_science/_skills/bigquery-ml/syntax/contribution_analysis.md +113 -0
  189. bigquery_data_science/_skills/bigquery-ml/syntax/dnn_classifier-dnn_regressor.md +107 -0
  190. bigquery_data_science/_skills/bigquery-ml/syntax/dnn_linear_combined_classifier-dnn_linear_combined_regressor-wide-and-deep.md +98 -0
  191. bigquery_data_science/_skills/bigquery-ml/syntax/explainability-functions-mlexplain_predict-mlglobal_explain-mlfeature_importance.md +7 -0
  192. bigquery_data_science/_skills/bigquery-ml/syntax/exploratory-data-analysis-mldescribe_data-mlcorrelation.md +11 -0
  193. bigquery_data_science/_skills/bigquery-ml/syntax/export-model.md +92 -0
  194. bigquery_data_science/_skills/bigquery-ml/syntax/feature-engineering-standalone-preprocessing-functions.md +13 -0
  195. bigquery_data_science/_skills/bigquery-ml/syntax/image-preprocessing-functions-mldecode_image-mlresize_image-mlconvert_image_type-mlconvert_color_space.md +63 -0
  196. bigquery_data_science/_skills/bigquery-ml/syntax/imported-models-tensorflow-tensorflow_lite-onnx-xgboost.md +36 -0
  197. bigquery_data_science/_skills/bigquery-ml/syntax/kmeans.md +87 -0
  198. bigquery_data_science/_skills/bigquery-ml/syntax/linear_reg-logistic_reg-generalized-linear-models.md +101 -0
  199. bigquery_data_science/_skills/bigquery-ml/syntax/matrix_factorization.md +162 -0
  200. bigquery_data_science/_skills/bigquery-ml/syntax/mladvanced_weights.md +76 -0
  201. bigquery_data_science/_skills/bigquery-ml/syntax/mlarima_coefficients.md +30 -0
  202. bigquery_data_science/_skills/bigquery-ml/syntax/mlarima_evaluate.md +49 -0
  203. bigquery_data_science/_skills/bigquery-ml/syntax/mlbag_of_words.md +47 -0
  204. bigquery_data_science/_skills/bigquery-ml/syntax/mlbucketize.md +47 -0
  205. bigquery_data_science/_skills/bigquery-ml/syntax/mlcentroids.md +46 -0
  206. bigquery_data_science/_skills/bigquery-ml/syntax/mlconfusion_matrix.md +56 -0
  207. bigquery_data_science/_skills/bigquery-ml/syntax/mlconvert_color_space.md +53 -0
  208. bigquery_data_science/_skills/bigquery-ml/syntax/mlconvert_image_type.md +39 -0
  209. bigquery_data_science/_skills/bigquery-ml/syntax/mlcorrelation.md +78 -0
  210. bigquery_data_science/_skills/bigquery-ml/syntax/mldecode_image.md +44 -0
  211. bigquery_data_science/_skills/bigquery-ml/syntax/mldescribe_data.md +74 -0
  212. bigquery_data_science/_skills/bigquery-ml/syntax/mldetect_anomalies.md +86 -0
  213. bigquery_data_science/_skills/bigquery-ml/syntax/mldistance.md +48 -0
  214. bigquery_data_science/_skills/bigquery-ml/syntax/mlentity_features_at_time.md +56 -0
  215. bigquery_data_science/_skills/bigquery-ml/syntax/mlevaluate.md +72 -0
  216. bigquery_data_science/_skills/bigquery-ml/syntax/mlexplain_forecast.md +50 -0
  217. bigquery_data_science/_skills/bigquery-ml/syntax/mlexplain_predict.md +66 -0
  218. bigquery_data_science/_skills/bigquery-ml/syntax/mlfeature_cross.md +46 -0
  219. bigquery_data_science/_skills/bigquery-ml/syntax/mlfeature_importance.md +47 -0
  220. bigquery_data_science/_skills/bigquery-ml/syntax/mlfeature_info.md +50 -0
  221. bigquery_data_science/_skills/bigquery-ml/syntax/mlfeatures_at_time.md +51 -0
  222. bigquery_data_science/_skills/bigquery-ml/syntax/mlforecast.md +76 -0
  223. bigquery_data_science/_skills/bigquery-ml/syntax/mlgenerate_embedding-from-a-bqml-pca-autoencoder-matrix_factorization-model.md +64 -0
  224. bigquery_data_science/_skills/bigquery-ml/syntax/mlglobal_explain.md +63 -0
  225. bigquery_data_science/_skills/bigquery-ml/syntax/mlhash_bucketize.md +47 -0
  226. bigquery_data_science/_skills/bigquery-ml/syntax/mlholiday_info.md +46 -0
  227. bigquery_data_science/_skills/bigquery-ml/syntax/mlimputer.md +46 -0
  228. bigquery_data_science/_skills/bigquery-ml/syntax/mllp_norm.md +47 -0
  229. bigquery_data_science/_skills/bigquery-ml/syntax/mlmetrics.md +80 -0
  230. bigquery_data_science/_skills/bigquery-ml/syntax/mlngrams.md +37 -0
  231. bigquery_data_science/_skills/bigquery-ml/syntax/mlone_hot_encoder-mlmulti_hot_encoder-mllabel_encoder.md +67 -0
  232. bigquery_data_science/_skills/bigquery-ml/syntax/mlpolynomial_expand.md +47 -0
  233. bigquery_data_science/_skills/bigquery-ml/syntax/mlpredict.md +67 -0
  234. bigquery_data_science/_skills/bigquery-ml/syntax/mlprincipal_component_info.md +42 -0
  235. bigquery_data_science/_skills/bigquery-ml/syntax/mlprincipal_components.md +40 -0
  236. bigquery_data_science/_skills/bigquery-ml/syntax/mlquantile_bucketize.md +43 -0
  237. bigquery_data_science/_skills/bigquery-ml/syntax/mlrecommend.md +60 -0
  238. bigquery_data_science/_skills/bigquery-ml/syntax/mlreconstruction_loss.md +48 -0
  239. bigquery_data_science/_skills/bigquery-ml/syntax/mlresize_image.md +45 -0
  240. bigquery_data_science/_skills/bigquery-ml/syntax/mlroc_curve.md +63 -0
  241. bigquery_data_science/_skills/bigquery-ml/syntax/mltf_idf.md +37 -0
  242. bigquery_data_science/_skills/bigquery-ml/syntax/mltfdv_describe.md +34 -0
  243. bigquery_data_science/_skills/bigquery-ml/syntax/mltfdv_validate.md +48 -0
  244. bigquery_data_science/_skills/bigquery-ml/syntax/mltraining_info.md +78 -0
  245. bigquery_data_science/_skills/bigquery-ml/syntax/mltransform-applying-a-saved-transform.md +52 -0
  246. bigquery_data_science/_skills/bigquery-ml/syntax/mltranspose-not-a-function-pointer.md +32 -0
  247. bigquery_data_science/_skills/bigquery-ml/syntax/mltrial_info.md +60 -0
  248. bigquery_data_science/_skills/bigquery-ml/syntax/mlvalidate_data_drift.md +99 -0
  249. bigquery_data_science/_skills/bigquery-ml/syntax/mlvalidate_data_skew.md +50 -0
  250. bigquery_data_science/_skills/bigquery-ml/syntax/mlweights.md +84 -0
  251. bigquery_data_science/_skills/bigquery-ml/syntax/model-free-time-series-decomposition-mltrend-mlseasonality-mldetect_change_points.md +100 -0
  252. bigquery_data_science/_skills/bigquery-ml/syntax/model-introspection-mlfeature_info-mltraining_info-mltrial_info.md +7 -0
  253. bigquery_data_science/_skills/bigquery-ml/syntax/model-monitoring-data-validation.md +23 -0
  254. bigquery_data_science/_skills/bigquery-ml/syntax/numerical-scalers-mlstandard_scaler-mlmin_max_scaler-mlmax_abs_scaler-mlrobust_scaler-mlnormalizer.md +77 -0
  255. bigquery_data_science/_skills/bigquery-ml/syntax/onnx.md +55 -0
  256. bigquery_data_science/_skills/bigquery-ml/syntax/pca.md +91 -0
  257. bigquery_data_science/_skills/bigquery-ml/syntax/point-in-time-feature-retrieval-mlfeatures_at_time-mlentity_features_at_time.md +25 -0
  258. bigquery_data_science/_skills/bigquery-ml/syntax/quick-comparison.md +14 -0
  259. bigquery_data_science/_skills/bigquery-ml/syntax/random_forest_classifier-random_forest_regressor.md +123 -0
  260. bigquery_data_science/_skills/bigquery-ml/syntax/remote-remote-model-over-a-vertex-ai-endpoint-the-mechanism.md +87 -0
  261. bigquery_data_science/_skills/bigquery-ml/syntax/tensorflow.md +48 -0
  262. bigquery_data_science/_skills/bigquery-ml/syntax/tensorflow_lite.md +29 -0
  263. bigquery_data_science/_skills/bigquery-ml/syntax/text-preprocessing-functions-mlngrams-mltf_idf-mlbag_of_words.md +18 -0
  264. bigquery_data_science/_skills/bigquery-ml/syntax/timesfm-built-in-foundation-forecaster-see-bigquery-ai.md +28 -0
  265. bigquery_data_science/_skills/bigquery-ml/syntax/transform_only.md +91 -0
  266. bigquery_data_science/_skills/bigquery-ml/syntax/xgboost.md +72 -0
  267. bigquery_data_science/_skills/pinned-models.json +28 -0
  268. bigquery_data_science/catalog.py +1107 -0
  269. bigquery_data_science/cli.py +786 -0
  270. bigquery_data_science/installer.py +282 -0
  271. bigquery_data_science/mcp_server.py +317 -0
  272. bigquery_data_science/tooling/__init__.py +15 -0
  273. bigquery_data_science/tooling/convert_notebook.py +176 -0
  274. bigquery_data_science/tooling/link_policy.py +247 -0
  275. bigquery_data_science/tooling/manifest.py +152 -0
  276. bigquery_data_science/tooling/markdown_anchors.py +84 -0
  277. bigquery_data_science/tooling/narrative_drift.py +163 -0
  278. bigquery_data_science/tooling/pinned_models.py +216 -0
  279. bigquery_data_science/tooling/reference_structure.py +85 -0
  280. bigquery_data_science/tooling/sync_syntax.py +407 -0
  281. bigquery_data_science/tooling/validate.py +208 -0
  282. bigquery_data_science-0.7.0.dist-info/METADATA +306 -0
  283. bigquery_data_science-0.7.0.dist-info/RECORD +286 -0
  284. bigquery_data_science-0.7.0.dist-info/WHEEL +4 -0
  285. bigquery_data_science-0.7.0.dist-info/entry_points.txt +5 -0
  286. bigquery_data_science-0.7.0.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,322 @@
1
+ > **Source (`statmike/bigquery-data-science`):** **Notebook:** [`bigquery-ai/functions/ai_detect_anomalies/ai_detect_anomalies.ipynb`](https://github.com/statmike/bigquery-data-science/blob/main/bigquery-ai/functions/ai_detect_anomalies/ai_detect_anomalies.ipynb) · **SQL:** [`bigquery-ai/functions/ai_detect_anomalies/ai_detect_anomalies.sql`](https://github.com/statmike/bigquery-data-science/blob/main/bigquery-ai/functions/ai_detect_anomalies/ai_detect_anomalies.sql)
2
+
3
+ # AI.DETECT_ANOMALIES — BigQuery AI Functions
4
+
5
+ `AI.DETECT_ANOMALIES` is a GA table-valued function that detects anomalies in time series data using TimesFM. It forecasts expected values from historical data, then flags data points that deviate significantly.
6
+
7
+ **When to use it:**
8
+ - You want to detect unusual spikes or drops in time series data
9
+ - You need anomaly probability scores for each data point
10
+ - You want to detect anomalies across multiple time series simultaneously
11
+ - You can choose between TimesFM 2.5 (the default) and TimesFM 3.0 (Preview) via the `model` parameter
12
+ - You can control how much history the model sees with `context_window` (64–15,360 on TimesFM 2.5; 64–2,048 on TimesFM 3.0)
13
+
14
+ **Alternatives:**
15
+ - `functions/ai_forecast` (`AI.FORECAST`) — Generate forecasts without anomaly detection
16
+ - `functions/ai_evaluate` (`AI.EVALUATE`) — Evaluate forecast accuracy instead of detecting anomalies
17
+ - `bigquery-ml/functions/time_series` (`ML.DETECT_CHANGE_POINTS`) — finds *sustained* level shifts rather than individual outlying points, with no model and no forecast baseline. A spike that returns to normal the next day is an anomaly, not a change point; a permanent step up in volume is a change point that may never register as an anomaly. Different questions on the same series — see also `ML.TREND` and `ML.SEASONALITY` there for model-free decomposition.
18
+
19
+ **Featured in:** `workflows/time_series_intelligence` (Time Series Intelligence)
20
+
21
+ **References:** `RESOURCES.md` (Full syntax reference) | [Official documentation](https://cloud.google.com/bigquery/docs/reference/standard-sql/bigqueryml-syntax-ai-detect-anomalies) | `setup` (Setup guide)
22
+
23
+ ---
24
+ ## Setup
25
+
26
+ Set your project and location, authenticate, and create a temporary dataset for this notebook.
27
+
28
+ > This function doesn't require a connection or model — it uses end-user credentials automatically. See the `setup` (Setup Reference) for details.
29
+
30
+ ```python
31
+ PROJECT_ID = 'statmike-mlops-349915' # <-- Replace with your project ID
32
+ LOCATION = 'US' # BigQuery dataset location
33
+ DATASET_ID = 'bq_ai_functions' # Shared dataset across all notebooks
34
+ ```
35
+
36
+ ### Environment
37
+
38
+ > **Already set up the project environment?** The cell below is a no-op — packages are already in your kernel. See the `setup` (Setup Reference) for details.
39
+ >
40
+ > **Running standalone** (Colab, Colab Enterprise, Vertex AI Workbench)? The cell below installs required packages into your current kernel.
41
+
42
+ ```python
43
+ from google.cloud import bigquery
44
+ import pandas as pd
45
+
46
+ client = bigquery.Client(project=PROJECT_ID)
47
+ pd.set_option('display.max_colwidth', None)
48
+
49
+ # Create the shared dataset (idempotent)
50
+ dataset_ref = bigquery.DatasetReference(PROJECT_ID, DATASET_ID)
51
+ dataset = bigquery.Dataset(dataset_ref)
52
+ dataset.location = LOCATION
53
+ client.create_dataset(dataset, exists_ok=True)
54
+ print(f'Dataset {PROJECT_ID}.{DATASET_ID} ready')
55
+
56
+ # Register %%bigquery cell magic (auto-loaded in Colab, needed elsewhere)
57
+ %load_ext bigquery_magics
58
+ ```
59
+
60
+ ---
61
+ ## Examples — SQL
62
+
63
+ Progressive examples from simplest to most advanced. Each cell adds one new concept.
64
+
65
+ ### Setup: Create historical and target data
66
+
67
+ Anomaly detection needs two inputs:
68
+ 1. **Historical data** — used to build a forecast baseline
69
+ 2. **Target data** — checked for anomalies against the baseline
70
+
71
+ We create data with a realistic pattern (upward trend + weekly seasonality), then inject two clear anomalies into the target period: a spike on Dec 15 and a drop on Dec 25.
72
+
73
+ ```python
74
+ # Create historical data (Jan-Nov 2024): upward trend + weekly seasonality + noise
75
+ query = f'''
76
+ CREATE OR REPLACE TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_history` AS
77
+ WITH dates AS (
78
+ SELECT date FROM UNNEST(GENERATE_DATE_ARRAY('2024-01-01', '2024-11-30')) AS date
79
+ )
80
+ SELECT date,
81
+ GREATEST(0,
82
+ 1000
83
+ + EXTRACT(DAYOFYEAR FROM date) * 2 -- upward trend (~2/day)
84
+ + CASE EXTRACT(DAYOFWEEK FROM date)
85
+ WHEN 1 THEN -200 -- Sunday dip
86
+ WHEN 7 THEN 300 -- Saturday peak
87
+ ELSE 0
88
+ END
89
+ + CAST(100 * (RAND() - 0.5) AS INT64) -- noise
90
+ ) AS daily_sales
91
+ FROM dates
92
+ '''
93
+ client.query(query).result()
94
+
95
+ # Create target data (Dec 2024): same pattern but with 2 injected anomalies
96
+ # IMPORTANT: target must follow the same pattern as history, otherwise
97
+ # the model flags every deviation from the learned seasonality.
98
+ query = f'''
99
+ CREATE OR REPLACE TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_target` AS
100
+ WITH dates AS (
101
+ SELECT date FROM UNNEST(GENERATE_DATE_ARRAY('2024-12-01', '2024-12-31')) AS date
102
+ )
103
+ SELECT date,
104
+ CASE
105
+ WHEN date = '2024-12-15' THEN 5000 -- injected spike anomaly (Sunday)
106
+ WHEN date = '2024-12-25' THEN 50 -- injected drop anomaly (Wednesday)
107
+ ELSE GREATEST(0,
108
+ 1000
109
+ + EXTRACT(DAYOFYEAR FROM date) * 2 -- same trend
110
+ + CASE EXTRACT(DAYOFWEEK FROM date)
111
+ WHEN 1 THEN -200 -- same weekly seasonality
112
+ WHEN 7 THEN 300
113
+ ELSE 0
114
+ END
115
+ + CAST(100 * (RAND() - 0.5) AS INT64) -- same noise
116
+ )
117
+ END AS daily_sales
118
+ FROM dates
119
+ '''
120
+ client.query(query).result()
121
+ print('Historical and target data created')
122
+ ```
123
+
124
+ ### 1. Basic anomaly detection
125
+
126
+ Pass historical and target tables. Returns each target point with `is_anomaly`, bounds, and probability.
127
+
128
+ ```python
129
+ query = f'''
130
+ SELECT
131
+ time_series_timestamp,
132
+ time_series_data,
133
+ is_anomaly,
134
+ ROUND(anomaly_probability, 4) AS anomaly_prob,
135
+ ROUND(lower_bound, 0) AS lower_bound,
136
+ ROUND(upper_bound, 0) AS upper_bound
137
+ FROM AI.DETECT_ANOMALIES(
138
+ TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_history`,
139
+ TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_target`,
140
+ data_col => 'daily_sales',
141
+ timestamp_col => 'date'
142
+ )
143
+ ORDER BY time_series_timestamp
144
+ '''
145
+ df = client.query(query).to_dataframe()
146
+
147
+ anomalies = df[df['is_anomaly'] == True]
148
+ print(f'Total points: {len(df)}, Anomalies detected: {len(anomalies)}')
149
+ print(f'\nAnomalous points:')
150
+ print(anomalies[['time_series_timestamp', 'time_series_data', 'anomaly_prob', 'lower_bound', 'upper_bound']].to_string(index=False))
151
+ ```
152
+
153
+ ### 2. Adjusting the anomaly threshold
154
+
155
+ The `anomaly_prob_threshold` controls sensitivity (default: 0.95). A data point is flagged as anomalous if its anomaly probability exceeds this threshold.
156
+
157
+ - **Higher threshold** (e.g., 0.99) → fewer, more extreme anomalies only
158
+ - **Lower threshold** (e.g., 0.8) → more anomalies, catches subtler deviations
159
+
160
+ Here we show all points sorted by anomaly probability to see the full distribution.
161
+
162
+ ```python
163
+ query = f'''
164
+ SELECT
165
+ time_series_timestamp,
166
+ time_series_data,
167
+ is_anomaly,
168
+ ROUND(anomaly_probability, 4) AS anomaly_prob,
169
+ ROUND(lower_bound, 0) AS lower,
170
+ ROUND(upper_bound, 0) AS upper
171
+ FROM AI.DETECT_ANOMALIES(
172
+ TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_history`,
173
+ TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_target`,
174
+ data_col => 'daily_sales',
175
+ timestamp_col => 'date',
176
+ anomaly_prob_threshold => 0.99 -- stricter: only the most extreme anomalies
177
+ )
178
+ ORDER BY anomaly_prob DESC
179
+ '''
180
+ df = client.query(query).to_dataframe()
181
+
182
+ anomalies = df[df['is_anomaly'] == True]
183
+ print(f'With threshold=0.99: {len(anomalies)} anomalies (vs default 0.95)')
184
+ df.head(10)
185
+ ```
186
+
187
+ ### 3. Using a query for history (subset)
188
+
189
+ Pass a query instead of a table reference to filter historical data.
190
+
191
+ ```python
192
+ query = f'''
193
+ SELECT
194
+ time_series_timestamp,
195
+ time_series_data,
196
+ is_anomaly,
197
+ ROUND(anomaly_probability, 4) AS anomaly_prob
198
+ FROM AI.DETECT_ANOMALIES(
199
+ (SELECT * FROM `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_history`
200
+ WHERE date >= '2024-09-01'), -- use only recent history
201
+ TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_target`,
202
+ data_col => 'daily_sales',
203
+ timestamp_col => 'date'
204
+ )
205
+ WHERE is_anomaly = TRUE
206
+ ORDER BY anomaly_prob DESC
207
+ '''
208
+ client.query(query).to_dataframe()
209
+ ```
210
+
211
+ ### 4. Setting the context window
212
+
213
+ The `context_window` controls how many historical time points the model uses to learn patterns. Supported values depend on the model:
214
+ - **TimesFM 2.5** (default): 64, 128, 256, 512, 1024, 2048, 4096, 8192, 15360 — the smallest window covering your input data is auto-selected when unspecified
215
+ - **TimesFM 3.0** (Preview): any multiple of 32 from 64 to 2048 — the maximum, 2048, is used when unspecified
216
+
217
+ A larger window can capture longer-term patterns but uses more resources.
218
+
219
+ ```python
220
+ query = f'''
221
+ SELECT
222
+ time_series_timestamp,
223
+ time_series_data,
224
+ is_anomaly,
225
+ ROUND(anomaly_probability, 4) AS anomaly_prob
226
+ FROM AI.DETECT_ANOMALIES(
227
+ TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_history`,
228
+ TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_target`,
229
+ data_col => 'daily_sales',
230
+ timestamp_col => 'date',
231
+ context_window => 128
232
+ )
233
+ WHERE is_anomaly = TRUE
234
+ ORDER BY anomaly_prob DESC
235
+ '''
236
+ client.query(query).to_dataframe()
237
+ ```
238
+
239
+ ### 5. Pinning the TimesFM model version
240
+
241
+ The `model` parameter selects which TimesFM version to use. **The default is TimesFM 2.5**; `'TimesFM 3.0'` (Preview) is the other accepted value. Pin `model` explicitly so a future default move cannot shift your anomaly probabilities.
242
+
243
+ Pinning does not make the function reproducible, though. `AI.DETECT_ANOMALIES` returns a different result on a minority of runs even with `model` and `context_window` both pinned and the query cache off — the same behavior measured in detail on `functions/ai_evaluate` (`AI.EVALUATE`), where 2 of 16 pinned runs moved the reported error by ~32%. Materialize the anomaly table once and read the stored rows rather than re-running the function.
244
+
245
+ TimesFM 3.0 takes the same arguments on this function; its reach is shorter (at most 2,048 history points against 2.5's 15,360).
246
+
247
+ ```python
248
+ query = f'''
249
+ SELECT
250
+ time_series_timestamp,
251
+ time_series_data,
252
+ is_anomaly,
253
+ ROUND(anomaly_probability, 4) AS anomaly_prob
254
+ FROM AI.DETECT_ANOMALIES(
255
+ TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_history`,
256
+ TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_target`,
257
+ data_col => 'daily_sales',
258
+ timestamp_col => 'date',
259
+ model => 'TimesFM 2.5'
260
+ )
261
+ WHERE is_anomaly = TRUE
262
+ ORDER BY anomaly_prob DESC
263
+ '''
264
+ client.query(query).to_dataframe()
265
+ ```
266
+
267
+ ---
268
+ ## Examples — `%%bigquery` Magics
269
+
270
+ The same examples using IPython magic commands. Magics let you write SQL directly in notebook cells without Python string wrapping.
271
+
272
+ Key patterns:
273
+ - `%%bigquery` — run SQL, display results inline
274
+ - `%%bigquery df` — run SQL, capture results into a pandas DataFrame
275
+
276
+ ### Anomaly detection with `%%bigquery`
277
+
278
+ ```sql
279
+ %%bigquery --project {PROJECT_ID}
280
+
281
+ SELECT time_series_timestamp, time_series_data, is_anomaly,
282
+ ROUND(anomaly_probability, 4) AS anomaly_prob
283
+ FROM AI.DETECT_ANOMALIES(
284
+ TABLE `statmike-mlops-349915.bq_ai_functions.ai_detect_anomalies_history`,
285
+ TABLE `statmike-mlops-349915.bq_ai_functions.ai_detect_anomalies_target`,
286
+ data_col => 'daily_sales',
287
+ timestamp_col => 'date'
288
+ )
289
+ WHERE is_anomaly = TRUE
290
+ ORDER BY anomaly_probability DESC
291
+ ```
292
+
293
+ ---
294
+ ## Examples — BigFrames
295
+
296
+ `AI.DETECT_ANOMALIES` has no direct BigFrames equivalent for TimesFM. Use `session.read_gbq_query()` to execute the SQL from BigFrames.
297
+
298
+ **Note:** `bigframes.ml.forecasting.ARIMAPlus.detect_anomalies()` exists but uses ARIMA_PLUS, not TimesFM.
299
+
300
+ ```python
301
+ import bigframes.pandas as bpd
302
+
303
+ bpd.options.bigquery.project = PROJECT_ID
304
+ bpd.options.bigquery.location = LOCATION
305
+ ```
306
+
307
+ ### Running AI.DETECT_ANOMALIES via read_gbq_query
308
+
309
+ ```python
310
+ query = f"""
311
+ SELECT time_series_timestamp, time_series_data, is_anomaly, anomaly_probability
312
+ FROM AI.DETECT_ANOMALIES(
313
+ TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_history`,
314
+ TABLE `{PROJECT_ID}.{DATASET_ID}.ai_detect_anomalies_target`,
315
+ data_col => 'daily_sales',
316
+ timestamp_col => 'date'
317
+ )
318
+ ORDER BY time_series_timestamp
319
+ """
320
+ df = bpd.read_gbq_query(query)
321
+ df.to_pandas()
322
+ ```