The ML Platform Behind Uber's AI
Michelangelo AI: Uber's end-to-end machine learning platform.
Translation pending
Turning PySpark Into a Universal DataFrame API
Translation pending
Developer toolsPython · ShellGitHub @eakmanrqSelf-installOwner unconfirmed
Paste into Claude or ChatGPT for installation instructions suited to your environment.
Have you tried it? One tap is enough. No sign-in needed.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Install SQLFrame with DuckDB. You need Python 3.10 or later; no cloud account or Spark installation is required.
pip install "sqlframe[duckdb]"
from sqlframe.duckdb import DuckDBSession
session = DuckDBSession()
df = session.createDataFrame(
[("US", 120), ("UK", 80), ("US", 30)],
["country", "revenue"],
)
df.groupBy("country").sum("revenue").orderBy("country").show()
+---------+--------------+
| country | sum(revenue) |
+---------+--------------+
| UK | 80 |
| US | 150 |
+---------+--------------+
To inspect a transformation's SQL, call df.sql(optimize=True). Follow the quickstart for a complete walkthrough.
| Engine | Install |
|---|---|
| DuckDB | pip install "sqlframe[duckdb]" |
| BigQuery | pip install "sqlframe[bigquery]" |
| Snowflake | pip install "sqlframe[snowflake]" |
| Postgres | pip install "sqlframe[postgres]" |
| ClickHouse (preview) | pip install "sqlframe[clickhouse]" |
| Databricks | pip install "sqlframe[databricks]" |
| Spark | pip install "sqlframe[spark]" |
| Standalone | pip install sqlframe |
| Trino (preview) | pip install "sqlframe[trino]" |
Standalone sessions generate SQL without a database connection. For local Parquet support, install sqlframe[standalone].
ClickHouse and Trino are preview integrations; see their guides for supported workflows and limits.
Community integrations: GizmoSQL · Redshift (pip install "sqlframe[redshift]").
SQLFrame is also available on conda-forge: conda install -c conda-forge sqlframe.
Activate SQLFrame before importing PySpark to run supported transformations on another engine.
from sqlframe import activate
activate("duckdb")
from pyspark.sql import SparkSession
session = SparkSession.builder.getOrCreate()
You can also import SQLFrame directly, as shown in the quickstart. See the activation guide and your engine's API compatibility reference for details.
SQLFrame is open source under the MIT license.