Skip to content

Revert "GITBOOK-117: No subject" #1275

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jan 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pgml-cms/docs/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
* [pgml.tune()](introduction/apis/sql-extensions/pgml.tune.md)
* [Client SDKs](introduction/apis/client-sdks/README.md)
* [Overview](introduction/apis/client-sdks/getting-started.md)
* [Collections](../../pgml-docs/docs/guides/sdks/collections.md)
* [Collections](introduction/apis/client-sdks/collections.md)
* [Pipelines](introduction/apis/client-sdks/pipelines.md)
* [Search](introduction/apis/client-sdks/search.md)
* [Tutorials](introduction/apis/client-sdks/tutorials/README.md)
Expand Down
36 changes: 28 additions & 8 deletions pgml-cms/docs/introduction/apis/sql-extensions/pgml.deploy.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,11 @@ pgml.deploy(

There are 3 different deployment strategies available:

| Strategy | Description |
| ------------- | --------------------------------------------------------------------------------------------------------------------- |
| `most_recent` | The most recently trained model for this project is immediately deployed, regardless of metrics. |
| `best_score` | The model that achieved the best key metric score is immediately deployed. |
| `rollback` | The model that was last deployed for this project is immediately redeployed, overriding the currently deployed model. |
| Strategy | Description |
| ------------- |--------------------------------------------------------------------------------------------------|
| `most_recent` | The most recently trained model for this project is immediately deployed, regardless of metrics. |
| `best_score` | The model that achieved the best key metric score is immediately deployed. |
| `rollback` | The model that was deployed before to the current one is deployed. |

The default deployment behavior allows any algorithm to qualify. It's automatically used during training, but can be manually executed as well:

Expand All @@ -40,11 +40,12 @@ The default deployment behavior allows any algorithm to qualify. It's automatica

#### SQL

<pre class="language-sql"><code class="lang-sql"><strong>SELECT * FROM pgml.deploy(
</strong> 'Handwritten Digit Image Classifier',
```sql
SELECT * FROM pgml.deploy(
'Handwritten Digit Image Classifier',
strategy => 'best_score'
);
</code></pre>
```

#### Output

Expand Down Expand Up @@ -121,3 +122,22 @@ SELECT * FROM pgml.deploy(
Handwritten Digit Image Classifier | rollback | xgboost
(1 row)
```

### Specific Model IDs

In the case you need to deploy an exact model that is not the `most_recent` or `best_score`, you may deploy a model by id. Model id's can be found in the `pgml.models` table.

#### SQL

```sql
SELECT * FROM pgml.deploy(12);
```

#### Output

```sql
project | strategy | algorithm
------------------------------------+----------+-----------
Handwritten Digit Image Classifier | specific | xgboost
(1 row)
```
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,11 @@ In this example:

There are 3 steps to preprocessing data:

* [Encoding](data-pre-processing.md#ordinal-encoding) categorical values into quantitative values
* [Imputing](data-pre-processing.md#imputing-missing-values) NULL values to some quantitative value
* [Scaling](data-pre-processing.md#scaling-values) quantitative values across all variables to similar ranges
* [Encoding](../../../../../../pgml-dashboard/content/docs/training/preprocessing.md#categorical-encodings) categorical values into quantitative values
* [Imputing](../../../../../../pgml-dashboard/content/docs/training/preprocessing.md#imputing-missing-values) NULL values to some quantitative value
* [Scaling](../../../../../../pgml-dashboard/content/docs/training/preprocessing.md#scaling-values) quantitative values across all variables to similar ranges

These preprocessing steps may be specified on a per-column basis to the [train()](./) function. By default, PostgresML does minimal preprocessing on training data, and will raise an error during analysis if NULL values are encountered without a preprocessor. All types other than `TEXT` are treated as quantitative variables and cast to floating point representations before passing them to the underlying algorithm implementations.
These preprocessing steps may be specified on a per-column basis to the [train()](../../../../../../docs/training/overview/) function. By default, PostgresML does minimal preprocessing on training data, and will raise an error during analysis if NULL values are encountered without a preprocessor. All types other than `TEXT` are treated as quantitative variables and cast to floating point representations before passing them to the underlying algorithm implementations.

```sql
SELECT pgml.train(
Expand Down
2 changes: 1 addition & 1 deletion pgml-cms/docs/resources/developer-docs/contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ Once there, you can initialize `pgrx` and get going:
#### Pgrx command line and environments

```commandline
cargo install cargo-pgrx --version "0.9.8" --locked && \
cargo install cargo-pgrx --version "0.11.2" --locked && \
cargo pgrx init # This will take a few minutes
```

Expand Down
9 changes: 4 additions & 5 deletions pgml-cms/docs/resources/developer-docs/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ brew bundle
PostgresML is written in Rust, so you'll need to install the latest compiler from [rust-lang.org](https://rust-lang.org). Additionally, we use the Rust PostgreSQL extension framework `pgrx`, which requires some initialization steps:

```bash
cargo install cargo-pgrx --version 0.9.8 && \
cargo install cargo-pgrx --version 0.11.2 && \
cargo pgrx init
```

Expand All @@ -63,8 +63,7 @@ To install the necessary Python packages into a virtual environment, use the `vi
```bash
virtualenv pgml-venv && \
source pgml-venv/bin/activate && \
pip install -r requirements.txt && \
pip install -r requirements-xformers.txt --no-dependencies
pip install -r requirements.txt
```
{% endtab %}

Expand Down Expand Up @@ -146,7 +145,7 @@ pgml_test=# SELECT pgml.version();
We like and use pgvector a lot, as documented in our blog posts and examples, to store and search embeddings. You can install pgvector from source pretty easily:

```bash
git clone --branch v0.4.4 https://github.com/pgvector/pgvector && \
git clone --branch v0.5.0 https://github.com/pgvector/pgvector && \
cd pgvector && \
echo "trusted = true" >> vector.control && \
make && \
Expand Down Expand Up @@ -288,7 +287,7 @@ We use the `pgrx` Postgres Rust extension framework, which comes with its own in

```bash
cd pgml-extension && \
cargo install cargo-pgrx --version 0.9.8 && \
cargo install cargo-pgrx --version 0.11.2 && \
cargo pgrx init
```

Expand Down
Loading