From 9c405e15fc35d2bf71c8b4604c2efa81814d274e Mon Sep 17 00:00:00 2001 From: Sherry LaMonica Date: Fri, 24 Oct 2025 17:37:27 -0700 Subject: [PATCH 01/10] Add Select AI README --- select-ai/README.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 select-ai/README.md diff --git a/select-ai/README.md b/select-ai/README.md new file mode 100644 index 0000000..1ac57e9 --- /dev/null +++ b/select-ai/README.md @@ -0,0 +1,25 @@ +# About Select AI + +**Select AI** lets you use natural language to interact with your database and large language models (LLMs) directly through SQL. It’s designed to enhance user productivity and simplify the development of AI-based applications. With Select AI, you can generate, run, and explain SQL from natural language prompts, perform retrieval-augmented generation (RAG) using vector stores, generate synthetic data, or even chat with an LLM — all from a familiar SQL interface. + +When you use Select AI, **Oracle Autonomous Database** manages the process of converting natural language into SQL. This means you can provide natural language prompts instead of writing SQL code to explore and query your data. Select AI serves as a productivity tool for experienced SQL developers and empowers non-expert users to extract insights without needing to understand database schemas or query syntax. + +Select AI also automates the **retrieval-augmented generation (RAG)** workflow: generating vector embeddings, performing semantic similarity searches, and retrieving relevant content from your vector store. Additional capabilities include **synthetic data generation**, **chat history support**, and other advanced AI functions — all accessible through SQL. + +The [`DBMS_CLOUD_AI`](https://docs.oracle.com/en/cloud/paas/autonomous-database/serverless/adbsb/dbms-cloud-ai-package.html#GUID-000CBBD4-202B-4E9B-9FC2-B9F2FF20F246) PL/SQL package provides programmatic integration with user-specified LLMs. It automatically augments prompts with schema metadata, enabling natural language-to-SQL translation, RAG with vector stores, synthetic data generation, and conversational LLM sessions. The package supports multiple AI providers and LLMs listed under [*Select Your AI Provider and LLMs*](https://docs.oracle.com/en/cloud/paas/autonomous-database/serverless/adbsb/select-ai-about.html#GUID-FDAEF22A-5DDF-4BAE-A465-C1D568C75812) in the Oracle documentation. + +--- + +## Folder Structure + +- **sql/** — +- **python/** — +- **r/** — +- **notebooks/** — + +--- + +## Related Repository + +See the companion **Ask Oracle** repository for conversational agents and LLM-driven examples: +[oracle-samples/ask-oracle](https://github.com/oracle-samples/ask-oracle) From 8c110e90446fa311852fa86a48bef4012129856c Mon Sep 17 00:00:00 2001 From: Sherry LaMonica Date: Fri, 24 Oct 2025 17:44:14 -0700 Subject: [PATCH 02/10] Add placeholders for Select AI subfolders --- select-ai/notebooks/.gitkeep | 1 + select-ai/python/.gitkeep | 1 + select-ai/r/.gitkeep | 1 + select-ai/sql/.gitkeep | 1 + 4 files changed, 4 insertions(+) create mode 100644 select-ai/notebooks/.gitkeep create mode 100644 select-ai/python/.gitkeep create mode 100644 select-ai/r/.gitkeep create mode 100644 select-ai/sql/.gitkeep diff --git a/select-ai/notebooks/.gitkeep b/select-ai/notebooks/.gitkeep new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/select-ai/notebooks/.gitkeep @@ -0,0 +1 @@ + diff --git a/select-ai/python/.gitkeep b/select-ai/python/.gitkeep new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/select-ai/python/.gitkeep @@ -0,0 +1 @@ + diff --git a/select-ai/r/.gitkeep b/select-ai/r/.gitkeep new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/select-ai/r/.gitkeep @@ -0,0 +1 @@ + diff --git a/select-ai/sql/.gitkeep b/select-ai/sql/.gitkeep new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/select-ai/sql/.gitkeep @@ -0,0 +1 @@ + From 60e6f5668082a937bfb645b9abcdf81f1bfba759 Mon Sep 17 00:00:00 2001 From: Sherry LaMonica Date: Fri, 24 Oct 2025 17:47:53 -0700 Subject: [PATCH 03/10] Clean up Select AI README formatting and links --- select-ai/README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/select-ai/README.md b/select-ai/README.md index 1ac57e9..3e10d5d 100644 --- a/select-ai/README.md +++ b/select-ai/README.md @@ -6,16 +6,16 @@ When you use Select AI, **Oracle Autonomous Database** manages the process of co Select AI also automates the **retrieval-augmented generation (RAG)** workflow: generating vector embeddings, performing semantic similarity searches, and retrieving relevant content from your vector store. Additional capabilities include **synthetic data generation**, **chat history support**, and other advanced AI functions — all accessible through SQL. -The [`DBMS_CLOUD_AI`](https://docs.oracle.com/en/cloud/paas/autonomous-database/serverless/adbsb/dbms-cloud-ai-package.html#GUID-000CBBD4-202B-4E9B-9FC2-B9F2FF20F246) PL/SQL package provides programmatic integration with user-specified LLMs. It automatically augments prompts with schema metadata, enabling natural language-to-SQL translation, RAG with vector stores, synthetic data generation, and conversational LLM sessions. The package supports multiple AI providers and LLMs listed under [*Select Your AI Provider and LLMs*](https://docs.oracle.com/en/cloud/paas/autonomous-database/serverless/adbsb/select-ai-about.html#GUID-FDAEF22A-5DDF-4BAE-A465-C1D568C75812) in the Oracle documentation. +The [DBMS_CLOUD_AI](https://docs.oracle.com/en/cloud/paas/autonomous-database/serverless/adbsb/dbms-cloud-ai-package.html#GUID-000CBBD4-202B-4E9B-9FC2-B9F2FF20F246) PL/SQL package provides programmatic integration with user-specified LLMs. It automatically augments prompts with schema metadata, enabling natural language-to-SQL translation, RAG with vector stores, synthetic data generation, and conversational LLM sessions. The package supports multiple AI providers and LLMs listed under [Select Your AI Provider and LLMs](https://docs.oracle.com/en/cloud/paas/autonomous-database/serverless/adbsb/select-ai-about.html#GUID-FDAEF22A-5DDF-4BAE-A465-C1D568C75812) in the Oracle documentation. --- ## Folder Structure -- **sql/** — -- **python/** — -- **r/** — -- **notebooks/** — +- **sql/** +- **python/** +- **r/** +- **notebooks/** --- From ac6f31e017ced0b5cbb1efddb8abbe17d3de9424 Mon Sep 17 00:00:00 2001 From: Sherry LaMonica Date: Fri, 24 Oct 2025 17:50:44 -0700 Subject: [PATCH 04/10] Update README to use Autonomous AI Database and standard dashes --- select-ai/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/select-ai/README.md b/select-ai/README.md index 3e10d5d..cc576b2 100644 --- a/select-ai/README.md +++ b/select-ai/README.md @@ -1,10 +1,10 @@ # About Select AI -**Select AI** lets you use natural language to interact with your database and large language models (LLMs) directly through SQL. It’s designed to enhance user productivity and simplify the development of AI-based applications. With Select AI, you can generate, run, and explain SQL from natural language prompts, perform retrieval-augmented generation (RAG) using vector stores, generate synthetic data, or even chat with an LLM — all from a familiar SQL interface. +**Select AI** lets you use natural language to interact with your database and large language models (LLMs) directly through SQL. It’s designed to enhance user productivity and simplify the development of AI-based applications. With Select AI, you can generate, run, and explain SQL from natural language prompts, perform retrieval-augmented generation (RAG) using vector stores, generate synthetic data, or even chat with an LLM - all from a familiar SQL interface. -When you use Select AI, **Oracle Autonomous Database** manages the process of converting natural language into SQL. This means you can provide natural language prompts instead of writing SQL code to explore and query your data. Select AI serves as a productivity tool for experienced SQL developers and empowers non-expert users to extract insights without needing to understand database schemas or query syntax. +When you use Select AI, **Oracle Autonomous AI Database** manages the process of converting natural language into SQL. This means you can provide natural language prompts instead of writing SQL code to explore and query your data. Select AI serves as a productivity tool for experienced SQL developers and empowers non-expert users to extract insights without needing to understand database schemas or query syntax. -Select AI also automates the **retrieval-augmented generation (RAG)** workflow: generating vector embeddings, performing semantic similarity searches, and retrieving relevant content from your vector store. Additional capabilities include **synthetic data generation**, **chat history support**, and other advanced AI functions — all accessible through SQL. +Select AI also automates the **retrieval-augmented generation (RAG)** workflow: generating vector embeddings, performing semantic similarity searches, and retrieving relevant content from your vector store. Additional capabilities include **synthetic data generation**, **chat history support**, and other advanced AI functions - all accessible through SQL. The [DBMS_CLOUD_AI](https://docs.oracle.com/en/cloud/paas/autonomous-database/serverless/adbsb/dbms-cloud-ai-package.html#GUID-000CBBD4-202B-4E9B-9FC2-B9F2FF20F246) PL/SQL package provides programmatic integration with user-specified LLMs. It automatically augments prompts with schema metadata, enabling natural language-to-SQL translation, RAG with vector stores, synthetic data generation, and conversational LLM sessions. The package supports multiple AI providers and LLMs listed under [Select Your AI Provider and LLMs](https://docs.oracle.com/en/cloud/paas/autonomous-database/serverless/adbsb/select-ai-about.html#GUID-FDAEF22A-5DDF-4BAE-A465-C1D568C75812) in the Oracle documentation. From 14258ff37d0f0bbc8202afdc0e58e0318a1a8a14 Mon Sep 17 00:00:00 2001 From: Sherry LaMonica Date: Fri, 24 Oct 2025 18:00:57 -0700 Subject: [PATCH 05/10] Update Ask Oracle section and link in Select AI README --- select-ai/README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/select-ai/README.md b/select-ai/README.md index cc576b2..ea325cf 100644 --- a/select-ai/README.md +++ b/select-ai/README.md @@ -21,5 +21,6 @@ The [DBMS_CLOUD_AI](https://docs.oracle.com/en/cloud/paas/autonomous-database/se ## Related Repository -See the companion **Ask Oracle** repository for conversational agents and LLM-driven examples: -[oracle-samples/ask-oracle](https://github.com/oracle-samples/ask-oracle) +**Ask Oracle** allows you to query data in Autonomous Database using natural language. +It uses the AI profiles stored in the current user's schema, supporting both natural language to SQL and retrieval-augmented generation (RAG). +[oracle-devrel/oracle-autonomous-database-samples/tree/main/apex/Ask-Oracle](https://github.com/oracle-devrel/oracle-autonomous-database-samples/tree/main/apex/Ask-Oracle) From d1034a38183e6a8fd008f50ab3002b86520c5220 Mon Sep 17 00:00:00 2001 From: Sherry LaMonica Date: Fri, 24 Oct 2025 18:06:35 -0700 Subject: [PATCH 06/10] Move Ask Oracle link to paragraph start --- select-ai/README.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/select-ai/README.md b/select-ai/README.md index ea325cf..797fea0 100644 --- a/select-ai/README.md +++ b/select-ai/README.md @@ -21,6 +21,5 @@ The [DBMS_CLOUD_AI](https://docs.oracle.com/en/cloud/paas/autonomous-database/se ## Related Repository -**Ask Oracle** allows you to query data in Autonomous Database using natural language. -It uses the AI profiles stored in the current user's schema, supporting both natural language to SQL and retrieval-augmented generation (RAG). -[oracle-devrel/oracle-autonomous-database-samples/tree/main/apex/Ask-Oracle](https://github.com/oracle-devrel/oracle-autonomous-database-samples/tree/main/apex/Ask-Oracle) +[**Ask Oracle**](https://github.com/oracle-devrel/oracle-autonomous-database-samples/tree/main/apex/Ask-Oracle) allows you to query data in Autonomous Database using natural language. +It uses the AI profiles stored in the current user's schema, supporting both natural language to SQL and retrieval-augmented generation (RAG). From 471a01038f9fa96c161acda48d02eef6a3dc0f15 Mon Sep 17 00:00:00 2001 From: Sherry LaMonica Date: Mon, 3 Nov 2025 20:15:16 -0800 Subject: [PATCH 07/10] Add SelectAI4SQL notebooks --- select-ai/sql/SelectAI4SQL -0- Prerequisites and Setup.dsnb | 1 + select-ai/sql/SelectAI4SQL -1- Chat.dsnb | 1 + .../sql/SelectAI4SQL -2- Natural Language to SQL (NL2SQL).dsnb | 1 + .../SelectAI4SQL -3- Retrieval Augmented Generation (RAG).dsnb | 1 + .../sql/SelectAI4SQL -4- Synthetic Data Generation (SDG).dsnb | 1 + 5 files changed, 5 insertions(+) create mode 100644 select-ai/sql/SelectAI4SQL -0- Prerequisites and Setup.dsnb create mode 100644 select-ai/sql/SelectAI4SQL -1- Chat.dsnb create mode 100644 select-ai/sql/SelectAI4SQL -2- Natural Language to SQL (NL2SQL).dsnb create mode 100644 select-ai/sql/SelectAI4SQL -3- Retrieval Augmented Generation (RAG).dsnb create mode 100644 select-ai/sql/SelectAI4SQL -4- Synthetic Data Generation (SDG).dsnb diff --git a/select-ai/sql/SelectAI4SQL -0- Prerequisites and Setup.dsnb b/select-ai/sql/SelectAI4SQL -0- Prerequisites and Setup.dsnb new file mode 100644 index 0000000..7abf458 --- /dev/null +++ b/select-ai/sql/SelectAI4SQL -0- Prerequisites and Setup.dsnb @@ -0,0 +1 @@ +[{"layout":"zeppelin","isRunnable":true,"template":"dsrgmn3y","templateConfig":"{\"visualization\":{\"filters\":[{\"_id\":1583324064459,\"type\":\"styling\",\"enabled\":true,\"conditions\":{\"operator\":\"and\",\"conditions\":[{\"property\":\"hiddenConnection\",\"operator\":\"*\",\"value\":\"\"}]},\"component\":\"edge\",\"target\":\"edge\",\"properties\":{\"colors\":[\"rgba(0, 0, 0, 0.1)\"],\"style\":[\"dashed\"],\"legendTitle\":[\"Hidden Connection\"]}},{\"_id\":1590499315755,\"type\":\"aggregation\",\"enabled\":true,\"conditions\":{\"operator\":\"and\",\"conditions\":[]},\"component\":\"vertex\",\"target\":\"vertex\",\"properties\":{},\"aggregation\":[{\"source\":\"\",\"type\":\"average\"}]}],\"version\":4}}","isEditable":true,"name":"SelectAI4SQL -0- Prerequisites and Setup","description":null,"type":"low","paragraphs":[{"col":0,"visualizationConfig":null,"hideInIFrame":false,"selectedVisualization":null,"title":null,"message":["%md"," "],"enabled":true,"result":{"startTime":1759422019053,"interpreter":"md.low","endTime":1759422019479,"results":[],"taskStatus":"SUCCESS","forms":"[]","status":"SUCCESS"},"sizeX":0,"hideCode":true,"width":0,"hideResult":true,"dynamicFormParams":"{}","row":0,"hasTitle":false,"hideVizConfig":true,"hideGutter":true,"relations":[],"forms":"[]"},{"col":0,"visualizationConfig":null,"hideInIFrame":false,"selectedVisualization":"html","title":null,"message":["%md\r","\r","# Oracle Select AI: Setting up the environment\r","\r","This notebook prepares your Autonomous Database instance to use Oracle Select AI. \r","\r","This setup must be completed before using NL2SQL, RAG, Synthetic Data Generation, and other Select AI features.\r","\r","#### What is Select AI?\r","\r","Select AI enables SQL and PL/SQL access to Large Language Models (LLMs) and transformers from a range of AI providers. \r","It supports SQL query generation from natural language prompts against your database data (NL2SQL), retrieval augmented generation (RAG), and synthetic data generation (SDG), among other features. \r","\r","See this video<\/a> for an introduction to Select AI.\r","\r","#### Setup Overview\r","\r","To configure Select AI, both the ADMIN and a non-ADMIN users are required. You will need to specify access credentials to the AI provider(s) you want to use and, for RAG, cloud storage. \r","\r","**ADMIN Tasks:**\r","- Grant permissions to OML users\r","- Configure network access (if needed)\r","\r","**Select AI User Tasks:**\r","- Create cloud authentication credentials\r","- Create AI profiles\r","- Create vector indexes as needed in support of RAG\r","\r","\r","> **Note:** This notebook includes examples based on OCI Generative AI Service. However multiple other AI providers are supported. \r","Users must have an account with a compatible AI provider API and provide access to Autonomous Database via database credentials.\r","Consult the Select AI documentation<\/a> for details.\r","\r","Copyright (c) 2025 Oracle Corporation \r","###### The Universal Permissive License (UPL), Version 1.0<\/a>\r","---"],"enabled":true,"result":{"startTime":1759422044453,"interpreter":"md.low","endTime":1759422044901,"results":[{"message":"

Oracle Select AI: Setting up the environment<\/h1>\n

This notebook prepares your Autonomous Database instance to use Oracle Select AI.<\/p>\n

This setup must be completed before using NL2SQL, RAG, Synthetic Data Generation, and other Select AI features.<\/p>\n

What is Select AI?<\/h4>\n

Select AI enables SQL and PL/SQL access to Large Language Models (LLMs) and transformers from a range of AI providers.\nIt supports SQL query generation from natural language prompts against your database data (NL2SQL), retrieval augmented generation (RAG), and synthetic data generation (SDG), among other features.<\/p>\n

See this video<\/a> for an introduction to Select AI.<\/p>\n

Setup Overview<\/h4>\n

To configure Select AI, both the ADMIN and a non-ADMIN users are required. You will need to specify access credentials to the AI provider(s) you want to use and, for RAG, cloud storage.<\/p>\n

ADMIN Tasks:<\/strong><\/p>\n