diff --git a/docs/integrations/vector-databases/postgres-vector-database.md b/docs/integrations/vector-databases/postgres-vector-database.md new file mode 100644 index 00000000..165cf341 --- /dev/null +++ b/docs/integrations/vector-databases/postgres-vector-database.md @@ -0,0 +1,76 @@ +# Integrating with Postgres Vector Database in Orkes Conductor + +To effectively utilize AI and LLM tasks in Orkes Conductor, it's essential to integrate your Conductor cluster with the necessary Vector Database models. + +PGvector is a popular open-source extension for PostgreSQL known for its efficiency and versatility in handling large-scale vector data. This integration empowers you to access, query, and manipulate vector data effectively, enhancing the capabilities of Orkes Conductor in various natural language processing and artificial intelligence applications. + +This guide will provide the steps for integrating Postgres as a Vector Database with Orkes Conductor. + +## Steps to integrate with Postgres Database + +Before beginning to integrate with Postgres, you need to get specific configuration parameters from Postgres, such as database username, password, and URL. Now, let’s integrate this with Orkes Conductor. + +1. Navigate to **Integrations** from the left menu on your Orkes Conductor console. +2. Click **+New integration** button from the top-right of your window. +3. Under the **Vector Databases** section, choose **Postgres Vector Database**. +4. Click **+Add** and provide the following parameters: + +

Create Postgres Integration

+ +| Parameters | Description | +| ---------- | ----------- | +| Integration name | Provide a name for the integration. | +| Postgres Database User | Provide the database username. | +| Postgres Database Password | Provide the password associated with the database username. | +| Postgres Database URL | Provide the database URL.

**Note**: To use this integration for JDBC tasks, ensure that you provide the JDBC connection string in the format: **jdbc:database://url/databaseName**. | +| Embedding dimensions | Provide the number of dimensions in the embeddings. The embedding dimensions often depend on the AI model used to generate the embeddings. | +| Distance metric | Choose the distance metric, which is a metric to measure the similarity or distance between vectors. Supported values: | +| Indexing method | Choose the indexing method. Supported methods: | +| Number of inverted lists to create for ivfflat index | The number of inverted lists to create when using the **_ivfflat_** indexing method. This parameter is only relevant if **_ivfflat_** is chosen as the indexing method. | +| Description | Provide a description of your integration. | + +5. You can toggle-on the **Active** button to activate the integration instantly. +6. Click **Save**. + +## Adding Indexes to Postgres Integration + +Now that you have integrated your Conductor console with the Postgres provider, the next step is to integrate with the specific indexes. + +To add a new index to the Postgres integration: + +1. Navigate to the integrations page and click the '+' button next to the integration you created. + +

Create Indexes for Postgres Integration

+ +2. Click **+New Index**. +3. Provide the index name and an optional description. + +

Create Indexes for Postgres Integration Model

+ +4. Turn on the **Active** button to enable the model immediately. +5. Click **Save**. + +This ensures the integration model is saved for future use in LLM tasks within Orkes Conductor. + +## RBAC - Governance on who can use Integrations + +The integration with the required models is now ready. Next, we should determine the access control to these models. + +The permission can be granted to applications/groups within the Orkes Conductor console. + +To provide explicit permission to Groups: + +1. Navigate to **Access Control > Groups** from the left menu on your Orkes Conductor console. +2. Create a new group or choose an existing group. +3. Under the **Permissions** section, click **+Add Permission**. +4. Under the **Integrations** tab, select the required integrations with the required permissions. + +

Add Permissions for Postgres Vector Database Integration

+ +5. Click **Add Permissions**. This ensures that all the group members can access these integration models in their workflows. + +Similarly, you can also provide permissions to [applications](https://orkes.io/content/access-control-and-security/applications#configuring-application). + +:::info +Once the integration is set up and the required access is granted, the integration can be utilized for [JDBC](https://orkes.io/content/reference-docs/system-tasks/jdbc) tasks within Orkes Conductor. +::: \ No newline at end of file diff --git a/sidebars.js b/sidebars.js index fdeeab30..3df1030a 100644 --- a/sidebars.js +++ b/sidebars.js @@ -494,6 +494,11 @@ const sidebars = { id: 'integrations/vector-databases/weaviate', label: 'Weaviate', }, + { + type: 'doc', + id: 'integrations/vector-databases/postgres-vector-database', + label: 'Postgres Vector Database', + }, ], collapsible: true, collapsed: true, diff --git a/static/img/add-integration-permission-for-postgresvector-db.png b/static/img/add-integration-permission-for-postgresvector-db.png new file mode 100644 index 00000000..36f32972 Binary files /dev/null and b/static/img/add-integration-permission-for-postgresvector-db.png differ diff --git a/static/img/create-new-pgvector-integration-index.png b/static/img/create-new-pgvector-integration-index.png new file mode 100644 index 00000000..168b76dd Binary files /dev/null and b/static/img/create-new-pgvector-integration-index.png differ diff --git a/static/img/create-new-postgres-integration-index-model.png b/static/img/create-new-postgres-integration-index-model.png new file mode 100644 index 00000000..8f6b1b21 Binary files /dev/null and b/static/img/create-new-postgres-integration-index-model.png differ diff --git a/static/img/create-new-postgres-integration.png b/static/img/create-new-postgres-integration.png new file mode 100644 index 00000000..10061e4c Binary files /dev/null and b/static/img/create-new-postgres-integration.png differ