Wednesday, June 17, 2026

Oracle AI Database Private Agent Factory: Complete Step-by-Step Installation and Configuration Guide on Oracle Cloud Infrastructure

As Oracle continues to expand its AI ecosystem, a powerful new addition has emerged for organizations looking to build enterprise-grade AI agents directly on top of their Oracle databases: Oracle AI Database Private Agent Factory (PAF).

This platform enables developers, architects, and data professionals to create sophisticated AI agents and multi-step workflows through a visual drag-and-drop interface while leveraging the native AI capabilities already embedded within Oracle Autonomous Database.

Unlike standalone AI orchestration frameworks, Private Agent Factory tightly integrates with Oracle Database AI capabilities, including the DBMS Cloud AI framework, allowing organizations to build secure, private, and database-centric AI solutions within their OCI environment.

In this article, I'll walk through the complete deployment process, from infrastructure setup to installing and configuring the PAF platform.

What is Oracle AI Database Private Agent Factory?



Oracle AI Database Private Agent Factory is a low-code/no-code platform that allows users to:

  • Build AI agents visually
  • Create complex agent workflows
  • Connect to Oracle Autonomous AI Database
  • Integrate multiple LLM providers
  • Utilize Select AI and MCP capabilities
  • Create Retrieval-Augmented Generation (RAG) solutions
  • Develop knowledge-based assistants
  • Configure custom tools and integrations
  • Orchestrate multi-agent processes


The platform can be deployed directly from OCI Marketplace and is designed for rapid implementation.

Architecture Overview

Before beginning the installation, let's understand the major components involved.

OCI Components

  • OCI Compartment
  • IAM Policies
  • Autonomous AI Database
  • Virtual Cloud Network (VCN)
  • OCI Marketplace Stack
  • Compute Instance (PAF Application)

AI Components
  • Oracle AI Database Private Agent Factory
  • Oracle Generative AI Service
  • Embedding Models
  • Chat Models
  • Knowledge Bases
  • Agent Workflows

Prerequisites


Before deploying the solution, ensure you have:

OCI Requirements


- OCI Account

- Permissions to create OCI resources

- Access to OCI Marketplace

- Ability to create IAM policies

Recommended Resources

- Autonomous Database

- Compute Shape : E5 Flex or E6 Flex

- VCN : Dedicated Network

- LLM Provider : OCI Generative AI


Step 1: Create a Dedicated OCI Compartment


The first step is creating a dedicated compartment that will host all resources related to the deployment.


Navigate to:

Identity & Security -> Compartments



Create Compartment

Example:

Name: PrivateAgentFactoryCompartment

Description: PrivateAgentFactoryCompartment


Using a dedicated compartment simplifies:

- Resource management

- Cost tracking

- Security governance

- Environment isolation



Step 2: Configure IAM Policies


Before deploying resources, appropriate permissions must be granted.

Let's navigate to: Identity & Security ->  Policies

Create a policy at the root tenancy level.

For a Sandbox or testing environments, you can create a broad policy allowing users to manage resources within the target compartment.

In production environments, Oracle recommends implementing more granular least-privilege policies.

Example:

Allow group Administrators to manage all-resources in compartment PrivateAgentFactoryCompartment



This policy enables users to:

- Create databases

- Deploy marketplace stacks

- Manage networking

- Provision compute resources


Step 3: Create an Autonomous AI Database


Let's Navigate to:
Oracle Database -> Autonomous AI Database


Select your compartment and click: Create Autonomous Database

Configure Database Details

Database Name

Workload Type

Choose one of the following:

- Data Warehouse
- Transaction Processing

For this deployment, I've chosen ATP (Transaction processing).

Compute Resources: Increase CPU allocation beyond the default configuration to provide adequate capacity for AI workloads.

Example: 4 ECPUs

Specify the Administrator Password

Create Autonomous Database

Database provisioning typically takes: 3 - 4 minutes




Step 4: Create the Database User Required by PAF


After the database becomes available:
Navigate to: Database Actions -> SQL


Open the SQL Worksheet.

Below is the script provided by Oracle as part of the prerequisites.

CREATE USER <DB_USER> IDENTIFIED BY <DB_PASSWORD> DEFAULT TABLESPACE USERS QUOTA unlimited ON USERS;

GRANT CONNECT, RESOURCE, CREATE TABLE, CREATE SYNONYM, CREATE DATABASE LINK,

CREATE ANY INDEX, INSERT ANY TABLE, CREATE SEQUENCE, CREATE TRIGGER, CREATE USER, DROP USER TO <DB_USER>;

GRANT CREATE SESSION TO <DB_USER> WITH ADMIN OPTION;

GRANT READ, WRITE ON DIRECTORY DATA_PUMP_DIR TO <DB_USER>;

GRANT SELECT ON SYS.V$PARAMETER TO <DB_USER>;


What does this script do ?

- Creates the application user

- Grants privileges

- Enables required database capabilities


Modify this script and replace the placeholder username with your desired value like PAF_USER

For example:

CREATE USER PAF_USER IDENTIFIED BY "<password>" DEFAULT TABLESPACE USERS QUOTA unlimited ON USERS;
GRANT CONNECT, RESOURCE, CREATE TABLE, CREATE SYNONYM, CREATE DATABASE LINK, CREATE ANY INDEX,
INSERT ANY TABLE, CREATE SEQUENCE, CREATE TRIGGER, CREATE USER, DROP USER TO PAF_USER;
GRANT CREATE SESSION TO PAF_USER WITH ADMIN OPTION;
GRANT READ, WRITE ON DIRECTORY DATA_PUMP_DIR TO PAF_USER;
GRANT SELECT ON SYS.V_$PARAMETER TO PAF_USER;

Step 5: Download the Autonomous Database Wallet


The application connects to Autonomous Database using a secure wallet.

Navigate to: Database Connection

Click: Download Wallet

Configure Wallet Password: Enter a wallet password.

Important: The wallet password does not need to match the database password.


Download the wallet ZIP file and save it securely.


Example: Wallet_AJATP.zip


This file will be uploaded during application installation.




Step 6: Create a Virtual Cloud Network (VCN)


Navigate to: Networking -> Virtual Cloud Networks



Let's create the VCN using Actions -> VCN Wizard



Select Create VCN with Internet Connectivity



Proceed through the wizard using default values and create the VCN.


Provisioning generally completes within seconds.


Step 7: Configure Security Rules


Once the VCN is created, navigate to: Security Lists




Add the required Ingress and Egress rules.


Ingress Rules:

Port 8080: Required for application access.

TCP 8080


Database Connectivity Port: Allow outbound traffic to Autonomous Database.

TCP 1521, 1522

Depending on your database configuration, these ports may vary.




Egress Rules:

0.0.0.0/0 - All Protocols



Note: All above configurations must be completed before starting the PAF deployment.

Step 8: Deploy Oracle AI Database Private Agent Factory


- Navigate to OCI Marketplace -> All Applications

- Search for: Oracle AI Database Private Agent Factory



- Launch Stack

- Accept Marketplace terms.

- Leave most options at default values.


Configure Stack Parameters:

- Name: Provide a desired name for the stack

- Region: Provide your tenant region

- Compartment: Select the previously created compartment for PAF.




- VCN: Select the previously created VCN for PAF.

- Network Type: Public



- Virtual Machine Shape: VM.Standard.E5.Flex

- OCPU Count: 8

- Memory: 64GB



- Create Stack


Provisioning typically takes 5 minutes


Step 9: Launch the Installer


- Once the stack creation completes, navigate to the Jobs section.

- Click on the Job




- Once the Job is opened, navigate to Logs tab


- Scroll all the way to the end the log


- Here, we'll find the installation URL for our Private Agent Factory environment



Example:

Agent_Factory_URL = "https://<Host IP>:8080/agentFactory/installation"


Bookmark this URL as this would be actual URL to access Private Agent Factory platform: https://<Host IP>:8080/agentFactory

Step 10: Create the Initial Platform User


- Open the Agent Factory installation URL (obtained in the previous step) in a browser.

- You will be presented with a installation Wizard.

- Create your administrator account.

- This account will become the initial platform administrator.


Step 11: Configure Database Connectivity


- Navigate to the Database configuration tab. Here, we will provide database connection information.

- Upload the AI database wallet (previously downloaded).

- Provide: Database User and Database Password for the dedicated PAF_USER (previously created).



- Click Test Connection

- A successful validation confirms connectivity between the platform and Autonomous Database.

- Click Next and click Install on the next screen



Step 12: Monitor Installation


The installer displays deployment logs showing:

  • Database schema creation
  • Metadata initialization
  • Application configuration
  • Component deployment

We need to wait until installation completes.

The Next button becomes available once all tasks succeed.


Step 13: Configure the LLM Provider

The next step is configuring the AI model provider.

- I've selected OCI Generative AI as the provider but you can select ay other option if you have the API keys from those providers.

For OCI Gen AI, we first need to obtain below details:

  • Endpoint URL
  • Compartment OCID
  • User OCID
  • Tenancy OCID
  • Fingerprint
  • Region
  • API Signing Key




Step 14: Generate OCI API Keys

- To complete the above step, we first need to create API keys for a given user so that we can use the same in the LLM configuration.

- Navigate to User Profile -> API Keys

- Generate and download the new API keys (Public and Private).



- It will also show the Configuration file that will contain User OCID, Tenancy OCID, Fingerprint, Region.

- Save these details for later use.


Step 15: Configure Chat Model

- Now, let's use these values and populate in the LLM configuration from Step 13

- Endpoint will be the standard Inference API URL based on your region (Chicago in my case)

- Choose the model of your choice. For example "meta.llama-4-maverick-17b-128e-instruct-fp8"

- Enter User OCID, Tenancy OCID, Compartment OCID, Region, Fingerprint based on the values obtained in the previous step above.

- Upload the Private key file





- Test the Connection

- Save the Configuration


Step 16: Configure Embedding Model

- Repeat the same process for embeddings.

- Endpoint will be the standard Inference API URL based on your region (Chicago in my case)

- Choose the model of your choice. For example "cohere-embed-v4.0"

- Enter User OCID, Tenancy OCID, Compartment OCID, Region, Fingerprint based on the values obtained in the previous step above.

- Upload the Private key file



- Test the Connection

- Save the Configuration

- Finish the installation


Step 17: Complete Installation

- Once you finish the installation, the PAF platform is now fully configured.

- Log in using the credentials created earlier.



Once logged in, you will land in the actual Private Agent Factory platform and it's ready for you to explore, build and publish various AI agents.



I will be covering each feature of this platform along with the hands-on examples in my subsequent blogs so stay tuned !



Conclusion

Oracle AI Database Private Agent Factory provides a powerful, enterprise-ready framework for building AI agents directly on top of Oracle Autonomous AI Database. With its visual drag-and-drop interface, built-in workflow orchestration, multi-model support, and deep database integration, organizations can rapidly build intelligent applications without assembling a complex AI infrastructure stack from scratch.

The deployment process can be completed in less than an hour, and it's an excellent platform for experimentation, proof-of-concepts, as well as enterprise AI development.

Whether you're building conversational assistants, RAG solutions, document-processing pipelines, or multi-agent workflows, Oracle AI Database Private Agent Factory offers a streamlined path from idea to implementation.



Share:

Monday, June 8, 2026

How to Configure Push Notifications in Progressive Web App in Oracle APEX

In this blog, we learned about how to create a Progressive Web App in Oracle Apex.

Progressive Web App offers many benefits including an app experience very close to a Native App, one of which is a Push Notification feature. Take an example of an Android or iOS App; we all have seen many of the Native apps on these platforms pushing various Push Notifications to us, whether to inform you that your package is out for delivery or just to deliver the daily news bites to you.

Progressive Web App (PWA) brings the Push Notifications feature to the Apex Apps. Let's see how we can configure and use it.

We can enable Push Notifications in two ways - While creating a brand new App or In an existing App


New App:


- Create a new App and click on 'Use Create App Wizard'




- Let's check the boxes 'Install Progressive Web App' and 'Push Notifications'




Existing App:


- Navigate to Shared Components

- Click on Progressive Web App



- Scroll down to Push Notifications section

- Enable Push Notifications and click on Generate Credentials



- Generate Credentials will automatically generate a new key pair credentials for your application which is needed so that the end users can subscribe to push notifications securely.

- Once done, it will update the Credentials and Setting Page details



We have now enabled PWA and Push notifications in our App.

Now, lets see how we can send the actual Push Notifications.

We can send Push Notifications via two methods - API call and Page Process


1. API call method:


The two main APIs we need are: 

apex_pwa.send_push_notification - This API creates the actual Push Notification and adds it to the Queue

apex_pwa.push_queue - This API Pushes all the Notifications that are ready to be processed in the Queue


- Let's create a new Button on our Home page and select Create Dynamic Action option





- Let's name the Dynamic Action as PushNotification and set the True Action as Execute Server-side Code







- In the PL/SQL Code editor, enter below code snippet. 


Replace Your_APEX_UserName and Your_APEX_AppURL with actual values from your App.


BEGIN

apex_pwa.send_push_notification (
            p_application_id => :APP_ID,
            p_user_name      => '',
            p_title          => 'Test Notification',
            p_body           => 'This is a test notification.',
            p_icon_url       => '#APP_FILES#icons/app-icon-512.png',
            p_target_url     => ''
);

apex_pwa.push_queue;

EXCEPTION
WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE(SQLERRM);

END;

To get the actual value for p_icon_url, follow these steps:

Navigate to Shared Components

Click on Static Application Files option


Here, you will see a  types of files and their Reference values. Pick any one and copy it's Reference value and use this for p_icon_url parameter in above API call.





- Update the Dynamic Action code and click Ok





We have now configured the Push Notification via API.

Now, let's see how the App looks like and how the Push Notification is delivered

- Let's open the App on our smartphone

- Click on Download icon to Install the App




- Install the App










- Now, go to Settings section in the installed App





- Here, you will see Push Notifications option which will be set to Off by default




- Let's Enable the Push Notifications option





- Based on your device (Android or iPhone), this step will show a pop-up asking for your confirmation in order to enable Notifications for this App on your device.


For example, here's how it will be shown on an Android device




- Click Allow


Now, let's go back to Home screen and click Send Notification button




- This will send the Test Push Notification to your smartphone based on the details mentioned in the API call






2. Page Process method:


Now that we've seen how to send Push Notifications through API call, let's take a look at second option which is through a Page Process

- Let's create a New Button on our page named PageProcessButton





- Now, navigate to Processes section in the App and create a new process named 'PushNotification' under After Submit section




- Change the Type to 'Send Push Notification'





- Under Settings section, set the values for To (APEX User Name), Title and Body of the Push Notification





- Save


Now let's see how this notification looks like


- Navigate to the App on your device


- Click on the new button 'Page Process Notification'




- And we should see our new Page Notification on our device





As shown above, notifications sent through the Page Process provide limited customization capabilities. This approach is well-suited for scenarios where a simple notification is sufficient. 
However, when greater control over push notifications is required, or when notifications need to be driven by custom business logic using data from a database, the API-based approach is the preferred option.

Share: