Back to Postgresml

Connect your app

pgml-cms/docs/introduction/getting-started/connect-your-app.md

2.10.04.7 KB
Original Source

Connect your app

You can connect to your PostgresML database from any PostgreSQL-compatible client. PostgresML can serve in the traditional role of an application database, along with it's extended role as an MLOps platform, to make it easy to build and maintain AI applications together with your application data.

Client SDK

We provide a client SDK for JavaScript, Python and Rust. The SDK manages connections to the database, and makes it easy to construct efficient queries for AI use cases, like managing RAG document collections, or building chatbots. All of the ML & AI still happens inside the database, with centralized operations, hardware and dependency management.

Installation

The SDK is available from npm and PyPI:

{% tabs %} {% tab title="JavaScript" %}

bash
npm i pgml

{% endtab %}

{% tab title="Python " %}

bash
pip install pgml

{% endtab %} {% endtabs %}

Our SDK comes with zero additional dependencies. The core of the SDK is written in Rust, and we provide language bindings and native packaging & distribution.

Test the connection

Once you have installed our SDK into your environment, you can test connectivity to our cloud with just a few lines of code:

{% tabs %} {% tab title="JavaScript" %}

javascript
const pgml = require("pgml");

const main = () => {
    const client = pgml.newOpenSourceAI();
    const results = client.chat_completions_create(
          "meta-llama/Meta-Llama-3.1-8B-Instruct",
          [
              {
                  role: "system",
                  content: "You are a friendly chatbot who always responds in the style of a pirate",
              },
              {
                  role: "user",
                  content: "How many helicopters can a human eat in one sitting?",
              },
          ],
    );
    console.log(results);
}

{% endtab %}

{% tab title="Python" %}

python
import pgml

async def main():
    client = pgml.OpenSourceAI()
    results = client.chat_completions_create(
        "meta-llama/Meta-Llama-3.1-8B-Instruct",
        [
            {
                "role": "system",
                "content": "You are a friendly chatbot who always responds in the style of a pirate",
            },
            {
                "role": "user",
                "content": "How many helicopters can a human eat in one sitting?",
            },
        ],
        temperature=0.85,
    )
    print(results)

{% endtab %} {% endtabs %}

Native PostgreSQL libraries

Using the SDK is completely optional. If you're comfortable with writing SQL, you can connect directly to the database using your favorite PostgreSQL client library or ORM:

SQL editors

If you need to write ad-hoc queries, you can use any of these popular tools to execute SQL queries directly on your database: