Skip to content

Commit

Permalink
Updates to the Chat with Your Data in Autonomous Database Using Gener…
Browse files Browse the repository at this point in the history
…ative AI workshop (Mark Hornick/Marty Gubar) (#303)

* Update introduction.md

* Delete ADB-terminated.png

* new lab 8 & minor changes

* Update oracle-data-provider.md

* updates to new lab 8

* Update oracle-data-provider.md

* updates

* updates to new labs

* Update adw-dcat-integrate.md

* Update oracle-data-provider.md

* Update oracle-data-provider.md

* new lab

* Update manifest.json

* updates

* Update use-delta-sharing.md

* Update use-delta-sharing.md

* Update use-delta-sharing.md

* livelabs folder

* Update adw-dcat-integrate.md

* updates

* updates to Introduction lab

* Update introduction.md

* LiveLabs workshop version and other freetier changes

* Update introduction.md

* Update introduction.md

* livelabs and freetier changes

* Update load-analyze-json.md

* Update load-analyze-rest.md

* more changes

* more updates

* more updates

* Update adw-dcat-integrate.md

* changed shared with serverless as deployment type

* Update load-local-data.md

* update shared to serverless

* update adb-dcat workshop

* added new lab 12

* Update manifest.json

* added new folder with an .md file in it

Please work!

* more testing

* Delete introduction.md

* new workshop and labs wip

* update labs

* more updates

* more updates

* more updates

* updates

* more updates

* updates before review cycle

* Update endpoint.png

* Update setup-workshop-environment.md

* Update setup-workshop-environment.md

* more updates

* final update before review

* updates

* replacement code

* Update create-share-recipients.md

* Update create-share-recipients.md

* Update create-share-recipients.md

* Update create-share-recipients.md

* Update create-share-recipients.md

* Update create-share-recipients.md

* updates

* Update manifest.json

* folder rename

* added content to data studio folder

* Delete user-bucket-credential-diagram.png

* updates self-qa

* Update introduction.md

* remove extra text files

* Update introduction.md

* Update setup-workshop-environment.md

* Data Studio Workshop Changes

* changes to data studio workshop

* Update setup-workshop-environment.md

* adb changes

* Update recipient-diagram.png

* diagram change

* Update user-bucket-credential-diagram.png

* SME feedback

* Update create-share.md

* Nilay changes

* changes

* Update consume-share.md

* Anoosha's feedback

* Update consume-share.md

* updated 2 screens and a sentence

* minor changes

* deleted extra images and added doc references

* new ECPU changes

* more changes to data sharing workshops

* more changes to fork (data studio)

* more changes

* Marty's feedback

* Marty's feedback to plsql workshop too

* Update setup-workshop-environment.md

* Delete 7381.png

* workshop # 3 ADB set up

and a couple of minor typos in workshops 1 and 2

* changes to adb-dcat workshop

* more changes

* minor typos in all 4 workshops

* quarterly qa build data lake

* new lab 11 in build DL with ADW

* minor changes database actions drop-down list

* final changes to build data lake workshop

* AI updates

AI workshop updates

* ai workshop updates

* Update query-using-select-ai.md

* Update query-using-select-ai.md

* updates

* more updates

* Update query-using-select-ai.md

* more new updates to ai workshop

* Update query-using-select-ai.md

* a new screen capture

* push Marty's feedback to fork

Final changes.

* updates sandbox manifest

* updates

* restored sandbox manifest

* Update setup-environment.md

* updates after CloudWorld

* final updates to ai workshop (also new labs 4 and 5)

* marty's feedback

* incorporated feedback

* minor PR edits by Sarah

* removed steps 7 & 8 Lab 2 > Task 3 per Alexey

The customer asked to remove this as it's not a requirement for the bucket to be public.

* more changes

* more changes per Alexey

* Update load-os-data-public.md

* Quarterly QA

I added a new step per the PM's request in the Data Sharing PL/SQL workshop. I also made a minor edit (removed space) in the Data Lake workshop.

* more updates

* Quarterly QA changes

* Update consume-share.md

* minor edit based on workshop user

* quarterly qa November 2023

* Added new videos to the workshop

Replaced 3 old silent videos with new ones. Added two new videos.

* Adding important notes to the two data sharing workshops

Per the PM's request.

* folder structure only  push to production

This push and the PR later is to make sure the folder structure is in the production repo before I start development. Only 1 .md file and the workshops folder.

* typos

* cloud links workshop

* UPDATES

* Update query-view.png

* update

* minor updates to chat ai workshop (Fork)

* test clones

* test pr

* Alexey's feedback

* Update data-sharing-diagram.png

* sarah's edits

* changes to Data Load UI

* removed script causing ML issue

* Update load-local-data.md

* updates: deprecated procedure and new code

* updates and test

* more updates

* minor update

* testing using a building block in a workshop

* updates

* building blocks debugging

* Update manifest.json

* fixing issues

* Update manifest.json

* delete cleanup.md from workshop folder (use common file)

* use common cleanup.md instead of local cleanup.md

* test common tasks

* update data sharing data studio workshop

* Update create-recipient.png

* PM's 1 feedback

* quarterly qa

* missing "Lab 2" from Manifest

* always free note addition

added a note

* always free change

* Update setup-environment.md

* update manage and monitor workshop

* Folder structure for new data share workshop (plus introduction.md)

* Updated Load and Analyze from clone

* Data Lake minor changes from clone

* manage and monitor workshop

* Remove the lab from the workshop per Marty's request

* mark-hornick-feedback

* used marty's setup file

* replaced notebook with a new one

---------

Co-authored-by: Michelle Malcher <[email protected]>
Co-authored-by: Sarah Hirschfeld <[email protected]>
  • Loading branch information
3 people authored Apr 5, 2024
1 parent 35a1e89 commit 83a4873
Show file tree
Hide file tree
Showing 25 changed files with 143 additions and 115 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ In this lab, you will:

### Prerequisites

- This lab requires completion of the Get Started section in the Contents menu on the left.
- This lab requires completion of the Get Started section in the Contents menu on the left.

## Task 1: (Optional) Create a Compartment
[](include:iam-compartment-create-body.md)
Expand Down
4 changes: 2 additions & 2 deletions shared/adb-speaks-human/cleanup/cleanup.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,10 +57,10 @@ If you created an optional compartment for this workshop, you can delete it if y
## Acknowledgements

* **Author:** Lauran K. Serhal, Consulting User Assistance Developer
* **Last Updated By/Date:** Lauran K. Serhal, December 2023
* **Last Updated By/Date:** Lauran K. Serhal, April 2024

Data about movies in this workshop were sourced from Wikipedia.

Copyright (C) Oracle Corporation.
Copyright (c) 2024 Oracle Corporation.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [GNU Free Documentation License](https://oracle-livelabs.github.io/adb/shared/adb-15-minutes/introduction/files/gnu-free-documentation-license.txt)
Original file line number Diff line number Diff line change
Expand Up @@ -89,11 +89,11 @@ You may now proceed to the next lab.
## Acknowledgements
* **Author:** Lauran K. Serhal, Consulting User Assistance Developer
* **Contributors:** Marty Gubar, Product Management
* **Last Updated By/Date:** Lauran K. Serhal, January 2024
* **Last Updated By/Date:** Lauran K. Serhal, April 2024

Data about movies in this workshop were sourced from **Wikipedia**.

Copyright (C) Oracle Corporation.
Copyright (c) 2024 Oracle Corporation.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
Expand Down
6 changes: 3 additions & 3 deletions shared/adb-speaks-human/introduction/introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

In this workshop, you will learn how to use **Autonomous Database Select AI (Select AI)** to query your data using natural language; you don't need prior knowledge of the data structure or how that data is accessed. Next, you'll use those capabilities in a voice-enabled APEX app that enables you to get answers to your questions from your desktop or mobile device.

### What is Natural Language?
### What is Natural Language Processing?

Natural language processing is the ability of a computer application to understand human language as it is spoken and written. It is a component of artificial intelligence (AI).

Expand Down Expand Up @@ -34,11 +34,11 @@ You may now proceed to the next lab.
## Acknowledgements
* **Author:** Lauran K. Serhal, Consulting User Assistance Developer
* **Contributor:** Marty Gubar, Product Manager
* **Last Updated By/Date:** Lauran K. Serhal, January 2024
* **Last Updated By/Date:** Lauran K. Serhal, April 2024

Data about movies in this workshop were sourced from **Wikipedia**.

Copyright (C) Oracle Corporation.
Copyright (c) 2024 Oracle Corporation.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
Expand Down
44 changes: 22 additions & 22 deletions shared/adb-speaks-human/notebook/ADB-Speaks-Human.dsnb
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[
{
"name" : "ADB-Speaks-Human (1)",
"name" : "ADB-Speaks-Human",
"description" : null,
"tags" : null,
"version" : "6",
Expand Down Expand Up @@ -115,7 +115,7 @@
"col" : 0,
"sizeX" : 0,
"width" : 12,
"title" : "Create credential and AI profile",
"title" : "Create AI profile",
"hasTitle" : true,
"message" : [
"%script",
Expand Down Expand Up @@ -168,8 +168,8 @@
"enabled" : true,
"forms" : "[]",
"result" : {
"startTime" : 1711039315010,
"endTime" : 1711039317685,
"startTime" : 1712254934363,
"endTime" : 1712254937064,
"interpreter" : "script.low",
"taskStatus" : null,
"status" : null,
Expand Down Expand Up @@ -236,7 +236,7 @@
"title" : "Ask a general question",
"hasTitle" : true,
"message" : [
"%sql",
"%script",
"select ai chat what are considered the best movies produced in the past 20 years"
],
"selectedVisualization" : "raw",
Expand All @@ -249,9 +249,9 @@
"enabled" : true,
"forms" : "[]",
"result" : {
"startTime" : 1710974307332,
"endTime" : 1710974312175,
"interpreter" : "sql.low",
"startTime" : 1712254945198,
"endTime" : 1712254949505,
"interpreter" : "script.low",
"taskStatus" : null,
"status" : null,
"results" : null,
Expand Down Expand Up @@ -499,7 +499,7 @@
"title" : "Action: narrate",
"hasTitle" : true,
"message" : [
"%sql",
"%script",
"",
"",
"select ai narrate what are our total sales"
Expand All @@ -514,9 +514,9 @@
"enabled" : true,
"forms" : "[]",
"result" : {
"startTime" : 1710974317637,
"endTime" : 1710974321043,
"interpreter" : "sql.low",
"startTime" : 1712255048837,
"endTime" : 1712255051142,
"interpreter" : "script.low",
"taskStatus" : null,
"status" : null,
"results" : null,
Expand All @@ -533,7 +533,7 @@
"title" : "Action: showsql",
"hasTitle" : true,
"message" : [
"%sql",
"%script",
"",
"",
"select ai showsql what are our total sales"
Expand All @@ -548,9 +548,9 @@
"enabled" : true,
"forms" : "[]",
"result" : {
"startTime" : 1710974321538,
"endTime" : 1710974323218,
"interpreter" : "sql.low",
"startTime" : 1712255033790,
"endTime" : 1712255035405,
"interpreter" : "script.low",
"taskStatus" : null,
"status" : null,
"results" : null,
Expand All @@ -567,7 +567,7 @@
"title" : "Action: showsql",
"hasTitle" : true,
"message" : [
"%sql",
"%script",
"",
"",
"select ai explainsql what are our total sales"
Expand All @@ -582,9 +582,9 @@
"enabled" : true,
"forms" : "[]",
"result" : {
"startTime" : 1711039473464,
"endTime" : 1711039477951,
"interpreter" : "sql.low",
"startTime" : 1712255012386,
"endTime" : 1712255016091,
"interpreter" : "script.low",
"taskStatus" : null,
"status" : null,
"results" : null,
Expand Down Expand Up @@ -811,7 +811,7 @@
"title" : "Model maps starring to ACTOR column",
"hasTitle" : true,
"message" : [
"%sql",
"%script",
"",
"",
"select ai showsql select ai what are our sales for movies starring Harrison Ford broken out by movie;"
Expand Down Expand Up @@ -879,7 +879,7 @@
"title" : "Model knows A&A are genres",
"hasTitle" : true,
"message" : [
"%sql",
"%script",
" ",
"",
"select ai showsql what are the most popular devices when watching Action and Adventure movies;"
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Introduction

Autonomous Database makes it simple to query your data using natural language. The person asking the question doesn't need to know where the data is stored, its structure or how to combine it with other data to get results. All of these tasks are handled by a large language model and Autonomous Database.
Autonomous Database makes it simple to query your data using natural language. The person asking the question doesn't need to know where the data is stored, its structure or how to combine it with other data to get results. All these tasks are handled by a large language model and Autonomous Database.

As you can see from the previous labs, Select AI makes it easy to build apps that take advantage of natural language queries. In this lab, you'll experiment with a demo app that was built using Oracle APEX. When you ran the scripts to set up your environment, the APEX demo application was also installed. The app is probably the easiest way to get answers about your business and general internet content. Simply ask a question! You can then explore the result, get an understanding of the generated SQL (and even update it if you like), and manage conversations.

Expand All @@ -23,11 +23,11 @@ In this lab, you will:

## Task 1: Overview of Important Concepts

Before diving into the OML Notebook in this lab, let's review some of the important concepts that you should know.
Before diving into the OML notebook in this lab, let's review some of the important concepts that you should know.

### **Use AI profiles to access your LLM**

Profiles capture the properties of your LLM provider plus the tables and views you want to enable for natural language queries. You can create multiple profiles (e.g. for different providers), although only one is active for a given session.
An AI profile captures the properties of your LLM provider plus the tables and views you want to enable for natural language queries. You can create multiple profiles (e.g. for different providers), although only one is active for a given session or a particular invocation.

### **Create an AI Profile**

Expand Down Expand Up @@ -90,7 +90,7 @@ To get started, you'll need to do the following:
```
-->

* You can have multiple **Select AI** profiles. You need to pick the one to use for your session. Use the **`DBMS_CLOUD_AI.SET_PROFILE`** procedure to specify which profile to use as follows:
* Since you can have multiple **Select AI** profiles, you need to pick the one to use for your session. Use the **`DBMS_CLOUD_AI.SET_PROFILE`** procedure to specify which profile to use as follows:

```
<copy>
Expand Down Expand Up @@ -148,7 +148,7 @@ Let's look at a couple of examples:
JOIN moviestream.movie ON sales_sample.movie_id = movie.movie_id
WHERE movie.cast LIKE '%Tom Hanks%' `

Notice that in order to answer the previous question, the sales data was joined to the movie table and a filter was applied to the CAST column.
Notice that to answer the previous question, the sales data was joined to the movie table and a filter was applied to the CAST column.

>**Note:** _LLMs are remarkable at inferring intent - and getting better all the time. But, they are not perfect! It is very important to verify the results._
Expand All @@ -175,7 +175,7 @@ You can import, create, and work with notebooks in Oracle Machine Learning Noteb

>**Note:** You can run **`Select AI`** SQL queries from most tools; however, it is not yet supported by the **SQL Worksheet**.
If you already have the **SQL| Oracle Database Actions** browser tab open from the previous lab, click the **Database Actions | SQL banner** to display the Database **Actions | Launchpad** Home page. In the **Development** section, click the **Oracle Machine Learning** card to display the **Sign In** page. Continue with step **step 7** below.
If you already have the **SQL| Oracle Database Actions** browser tab open from the previous lab, click the **Database Actions | SQL banner** to display the Database **Actions | Launchpad** Home page. In the **Development** section, click the **Oracle Machine Learning** card to display the **Sign In** page. Continue with **step 7** below.

![Click the banner](./images/click-banner.png " ")

Expand Down Expand Up @@ -225,6 +225,8 @@ You can import a notebook from a local disk or from a remote location if you pro

![The OML Notebooks EA page is displayed](./images/ea-page.png " ")

>**Note:** You can also navigate to the **OML Notebooks EA (Early Adopter)** page directly using the OML Navigation menu. Next, click **Projects > Notebooks EA**.
3. Click **Import**. The **Open** dialog box is displayed. Navigate to your local folder where you downloaded the OML notebook, and select the **`ADB Speaks Human.dsnb`** notebook file. The file is displayed in the **File name** field. Make sure that the **Custom Files (*.dsnb;\*.ipynb;\*.json;\*.zpln)** type is selected in the second drop-down field, and then click **Open**.

![The Open dialog box is displayed](./images/open-imported-notebook.png " ")
Expand All @@ -233,7 +235,7 @@ You can import a notebook from a local disk or from a remote location if you pro

![The 1 out of 1 notebooks imported successfully message is displayed. The newly imported notebook name link is displayed and highlighted on the page.](./images/import-successful.png " ")

5. Open the imported notebook. Click the **ADB Speaks Human** notebook link. The notebook is displayed in the Notebook **Editor**. Read the paragraphs in this notebook.
4. Open the imported notebook. Click the **ADB Speaks Human** notebook link. The notebook is displayed in the Notebook **Editor**. Read the paragraphs in this notebook.

>**Note:** If a **User Action Required** message is displayed when you open the notebook, click **Allow Run**.
Expand All @@ -259,23 +261,26 @@ A notebook is comprised of paragraphs that use different languages: SQL, PL/SQL,

The output section of each paragraph is displayed.

3. Hide the code sections for the any **`%md`** paragraphs. Click **Visibility** icon in a paragraph, and then select the checked **Code** checkbox.
3. Hide the code sections for the **`%md`** paragraphs. Click the **Visibility** icon in a paragraph, and then select the checked **Code** checkbox.

![The Code checkbox is selected for the paragraph](./images/hide-code.png " ")

The code sections are hidden. It is a good practice to hide the code section of a **`%md`** paragraph since you are only interested in looking at the formatted output.
The code sections are hidden. It is good practice to hide the code section of a **`%md`** paragraph since you are only interested in looking at the formatted output.

4. The terraform setup script that you ran in Lab 1 created the credential you see in this paragraph. To create a credential, you must update the password value place holder, **`your-LLM-secret-key-goes-here`**, in the **Create credential and AI Profile** paragraph with your own secret key that you created in **Lab 1 > Task 3**.
4. The terraform setup script that you ran in Lab 1 created the credential you see in this paragraph. You need to create a credential in order to connect to an AI provider. The create credential code run by the setup script is listed below; your secret key was used as the credential password. Any user name can be used.

![Replace the password placeholder with your own secret key.](./images/secret-key.png " ")
![Replace the password placeholder with your own secret key.](./images/create-credential.png " ")

5. To run a paragraph, click the **Run Paragraph** icon for the paragraph.

![To run a paragraph, click the Run icon for the paragraph](./images/run-paragraph.png " ")

The status of the paragraph goes from `READY` to `PENDING` to `RUNNING` to `FINISHED`.

>**Note:** If the status of one or more paragraphs shows **ERROR**, reset your notebook connection as follows: Click the **Navigation** menu on the Notebook banner, and then select **Notebook Sessions**. On the **Notebook Sessions** page, select your notebook, and then click **Stop**. Next, re-run the notebook.
>**Note:** If the status of one or more paragraphs shows **ERROR**, reset your notebook connection using the **Invalidate Session** icon in the banner, and then re-run the notebook.
![Invalidate the session.](./images/invalidate-session.png =60%x*)


6. Examine, run, and review the output of the remaining paragraphs, as desired. To run the entire notebook, click the **Run Paragraphs** icon on the notebook banner. A **Run all paragraphs** confirmation message box is displayed. Click **Confirm**.

Expand All @@ -294,11 +299,11 @@ You may now proceed to the next lab.

* **Author:** Lauran K. Serhal, Consulting User Assistance Developer
* **Contributor:** Marty Gubar, Product Manager
* **Last Updated By/Date:** Lauran K. Serhal, January 2024
* **Last Updated By/Date:** Lauran K. Serhal, April 2024

Data about movies in this workshop were sourced from **Wikipedia**.

Copyright (C) Oracle Corporation.
Copyright (c) 2024 Oracle Corporation.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 83a4873

Please sign in to comment.