You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PostgresML provides a dashboard with analytical views of the training data and model performance, as well as integrated notebooks for rapid iteration. It is primarily written in Rust using [Rocket](https://rocket.rs/) as a lightweight web framework and [SQLx](https://github.com/launchbadge/sqlx) to interact with the database.
4
+
5
+
Please see the [online documentation](https://postgresml.org/user_guides/setup/quick_start_with_docker/) for general information on installing or deploying PostgresML. This document is intended to help developers set up a local copy of the dashboard.
6
+
7
+
## Requirements
8
+
9
+
The dashboard requires a Postgres database with the [pgml-extension](https://github.com/postgresml/postgresml/tree/master/pgml-extension) to generate the core schema. See that subproject for developer setup.
10
+
11
+
We develop and test this web application on Linux, OS X, and Windows using WSL2.
12
+
13
+
## Build process
14
+
15
+
You'll need to specify a database url for the extension to interact with via an environment variable:
Copy file name to clipboardExpand all lines: pgml-docs/docs/user_guides/setup/v2/installation.md
+15-38Lines changed: 15 additions & 38 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -216,46 +216,23 @@ That's it, PostgresML is ready. You can validate the installation by running:
216
216
(1 row)
217
217
```
218
218
219
-
## Dashboard
219
+
## Run the dashboard
220
220
221
-
The dashboard is a Django application. Installing it requires no special dependencies or commands:
221
+
The dashboard is a web app that can be run against any Postgres database with the extension installed. There is a Dockerfile included with the source code if you wish to run it as a container. Basic installation can be achieved with:
222
222
223
+
1. Clone the repo (if you haven't already for the extension):
Copy file name to clipboardExpand all lines: pgml-extension/README.md
+20-7Lines changed: 20 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,16 +1,16 @@
1
-
# PostgresML 2.0
1
+
# PostgresML Extension
2
2
3
-
PostgresML is a PostgreSQL extension providing end-to-end machine learning inside your database. The extension is written in Rust using `tcdi/pgx` and provides LightGBM, XGBoostand [Linfa](https://github.com/rust-ml/linfa) algorithms.
3
+
PostgresML is a PostgreSQL extension providing end-to-end machine learning inside your database. The extension is primarily written in Rust using [pgx](https://github.com/tcdi/pgx) and provides a SQL interface to various machine learning algorithm implementations such as [XGBoost](https://github.com/dmlc/xgboost), [LightGBM](https://github.com/microsoft/LightGBM), and [other classical methods](https://github.com/rust-ml/linfa).
4
4
5
-
A backwards compatibility layer to Scikit-learn is provided as well, so the entirety of Scikit, XGBoost and LightGBM are available via the standard Scikit interface using Python. The Python layer is written using `pyo3`.
5
+
Python seems to be the de facto ML industry standard, so we also include "reference" implementations of classical algorithms from Scikit-learn as well for comparison to the Rust implementations, but runtime performance and correctness. The Python integration is written using `pyo3`.
6
6
7
-
See [our blog](https://postgresml.org/blog/postgresml-is-moving-to-rust-for-our-2.0-release/) for a performance comparison to Python.
7
+
See [our blog](https://postgresml.org/blog/postgresml-is-moving-to-rust-for-our-2.0-release/) for a performance comparison and further motivations.
8
8
9
9
## Requirements
10
10
11
-
PostgresML 2.0 requires Python 3.7 or above and the Rust compiler and toolchain. You can download the Rust compiler [here](https://rust-lang.org).
11
+
PostgresML requires Python 3.7 or above and the Rust compiler and toolchain. You can download the Rust compiler [here](https://rust-lang.org).
12
12
13
-
We develop this extension on Ubuntu, so it'll work best there, but it's very likely to work on other distros as well. Windows is only supported through WSL2. It's been tested and it works. Mac OS is also supported.
13
+
We develop and test this extension on Linux, OS X, and Windows using WSL2.
14
14
15
15
## Dependencies
16
16
@@ -36,7 +36,7 @@ If your system comes with Python 3.6 or lower, you'll need to install `libpython
36
36
37
37
## Update postgresql.conf
38
38
39
-
PostgresML 2.0 requires to be loaded as a shared library. For local development, this is in `~/.pgx/data-13/postgresql.conf`:
39
+
PostgresML requires to be loaded as a shared library. For local development, this is in `~/.pgx/data-13/postgresql.conf`:
0 commit comments