diff --git a/shared/adb-load-analyze-workshop/provision-database/adb-provision-moviestream.md b/shared/adb-load-analyze-workshop/provision-database/adb-provision-moviestream.md index 51f51c77..18ebb4d1 100644 --- a/shared/adb-load-analyze-workshop/provision-database/adb-provision-moviestream.md +++ b/shared/adb-load-analyze-workshop/provision-database/adb-provision-moviestream.md @@ -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) diff --git a/shared/adb-speaks-human/cleanup/cleanup.md b/shared/adb-speaks-human/cleanup/cleanup.md index 1a849828..f13816d9 100644 --- a/shared/adb-speaks-human/cleanup/cleanup.md +++ b/shared/adb-speaks-human/cleanup/cleanup.md @@ -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) diff --git a/shared/adb-speaks-human/connect-to-ai-model/connect-to-ai-model.md b/shared/adb-speaks-human/connect-to-ai-model/connect-to-ai-model.md index a0af450a..f162fe97 100644 --- a/shared/adb-speaks-human/connect-to-ai-model/connect-to-ai-model.md +++ b/shared/adb-speaks-human/connect-to-ai-model/connect-to-ai-model.md @@ -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 diff --git a/shared/adb-speaks-human/introduction/introduction.md b/shared/adb-speaks-human/introduction/introduction.md index f5aa7eae..e2cd44d8 100644 --- a/shared/adb-speaks-human/introduction/introduction.md +++ b/shared/adb-speaks-human/introduction/introduction.md @@ -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). @@ -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 diff --git a/shared/adb-speaks-human/notebook/ADB-Speaks-Human.dsnb b/shared/adb-speaks-human/notebook/ADB-Speaks-Human.dsnb index 8651c801..e18cdce4 100644 --- a/shared/adb-speaks-human/notebook/ADB-Speaks-Human.dsnb +++ b/shared/adb-speaks-human/notebook/ADB-Speaks-Human.dsnb @@ -1,6 +1,6 @@ [ { - "name" : "ADB-Speaks-Human (1)", + "name" : "ADB-Speaks-Human", "description" : null, "tags" : null, "version" : "6", @@ -115,7 +115,7 @@ "col" : 0, "sizeX" : 0, "width" : 12, - "title" : "Create credential and AI profile", + "title" : "Create AI profile", "hasTitle" : true, "message" : [ "%script", @@ -168,8 +168,8 @@ "enabled" : true, "forms" : "[]", "result" : { - "startTime" : 1711039315010, - "endTime" : 1711039317685, + "startTime" : 1712254934363, + "endTime" : 1712254937064, "interpreter" : "script.low", "taskStatus" : null, "status" : null, @@ -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", @@ -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, @@ -499,7 +499,7 @@ "title" : "Action: narrate", "hasTitle" : true, "message" : [ - "%sql", + "%script", "", "", "select ai narrate what are our total sales" @@ -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, @@ -533,7 +533,7 @@ "title" : "Action: showsql", "hasTitle" : true, "message" : [ - "%sql", + "%script", "", "", "select ai showsql what are our total sales" @@ -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, @@ -567,7 +567,7 @@ "title" : "Action: showsql", "hasTitle" : true, "message" : [ - "%sql", + "%script", "", "", "select ai explainsql what are our total sales" @@ -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, @@ -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;" @@ -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;" diff --git a/shared/adb-speaks-human/query-using-select-ai/images/code-displayed.png b/shared/adb-speaks-human/query-using-select-ai/images/code-displayed.png index 624f2859..19e8c20c 100644 Binary files a/shared/adb-speaks-human/query-using-select-ai/images/code-displayed.png and b/shared/adb-speaks-human/query-using-select-ai/images/code-displayed.png differ diff --git a/shared/adb-speaks-human/query-using-select-ai/images/create-credential.png b/shared/adb-speaks-human/query-using-select-ai/images/create-credential.png new file mode 100644 index 00000000..62c77a98 Binary files /dev/null and b/shared/adb-speaks-human/query-using-select-ai/images/create-credential.png differ diff --git a/shared/adb-speaks-human/query-using-select-ai/images/import-successful.png b/shared/adb-speaks-human/query-using-select-ai/images/import-successful.png index 94938304..b7aa3d59 100644 Binary files a/shared/adb-speaks-human/query-using-select-ai/images/import-successful.png and b/shared/adb-speaks-human/query-using-select-ai/images/import-successful.png differ diff --git a/shared/adb-speaks-human/query-using-select-ai/images/invalidate-session.png b/shared/adb-speaks-human/query-using-select-ai/images/invalidate-session.png new file mode 100644 index 00000000..b0c96a58 Binary files /dev/null and b/shared/adb-speaks-human/query-using-select-ai/images/invalidate-session.png differ diff --git a/shared/adb-speaks-human/query-using-select-ai/images/notebook-displayed.png b/shared/adb-speaks-human/query-using-select-ai/images/notebook-displayed.png index 1763ca36..a4d3b998 100644 Binary files a/shared/adb-speaks-human/query-using-select-ai/images/notebook-displayed.png and b/shared/adb-speaks-human/query-using-select-ai/images/notebook-displayed.png differ diff --git a/shared/adb-speaks-human/query-using-select-ai/images/open-imported-notebook.png b/shared/adb-speaks-human/query-using-select-ai/images/open-imported-notebook.png index fdc380bf..869c0e42 100644 Binary files a/shared/adb-speaks-human/query-using-select-ai/images/open-imported-notebook.png and b/shared/adb-speaks-human/query-using-select-ai/images/open-imported-notebook.png differ diff --git a/shared/adb-speaks-human/query-using-select-ai/images/run-paragraph.png b/shared/adb-speaks-human/query-using-select-ai/images/run-paragraph.png index 99e50ff9..13e93e21 100644 Binary files a/shared/adb-speaks-human/query-using-select-ai/images/run-paragraph.png and b/shared/adb-speaks-human/query-using-select-ai/images/run-paragraph.png differ diff --git a/shared/adb-speaks-human/query-using-select-ai/images/show-code.png b/shared/adb-speaks-human/query-using-select-ai/images/show-code.png index aedea3fa..c1425154 100644 Binary files a/shared/adb-speaks-human/query-using-select-ai/images/show-code.png and b/shared/adb-speaks-human/query-using-select-ai/images/show-code.png differ diff --git a/shared/adb-speaks-human/query-using-select-ai/images/show-result.png b/shared/adb-speaks-human/query-using-select-ai/images/show-result.png index 5c44c60f..0eb8b022 100644 Binary files a/shared/adb-speaks-human/query-using-select-ai/images/show-result.png and b/shared/adb-speaks-human/query-using-select-ai/images/show-result.png differ diff --git a/shared/adb-speaks-human/query-using-select-ai/query-using-select-ai.md b/shared/adb-speaks-human/query-using-select-ai/query-using-select-ai.md index 2c846b09..13fe8aa6 100644 --- a/shared/adb-speaks-human/query-using-select-ai/query-using-select-ai.md +++ b/shared/adb-speaks-human/query-using-select-ai/query-using-select-ai.md @@ -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. @@ -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** @@ -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: ``` @@ -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._ @@ -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 " ") @@ -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 " ") @@ -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**. @@ -259,15 +261,15 @@ 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. @@ -275,7 +277,10 @@ A notebook is comprised of paragraphs that use different languages: SQL, PL/SQL, 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**. @@ -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 diff --git a/shared/adb-speaks-human/setup-environment/images/click-navigation-menu.jpg b/shared/adb-speaks-human/setup-environment/images/click-navigation-menu.jpg new file mode 100644 index 00000000..563c6295 Binary files /dev/null and b/shared/adb-speaks-human/setup-environment/images/click-navigation-menu.jpg differ diff --git a/shared/adb-speaks-human/setup-environment/images/click-navigation-menu.png b/shared/adb-speaks-human/setup-environment/images/click-navigation-menu.png new file mode 100644 index 00000000..94dfb68d Binary files /dev/null and b/shared/adb-speaks-human/setup-environment/images/click-navigation-menu.png differ diff --git a/shared/adb-speaks-human/setup-environment/images/navigate-compartment.jpg b/shared/adb-speaks-human/setup-environment/images/navigate-compartment.jpg new file mode 100644 index 00000000..46e8272a Binary files /dev/null and b/shared/adb-speaks-human/setup-environment/images/navigate-compartment.jpg differ diff --git a/shared/adb-speaks-human/setup-environment/images/navigate-compartment.png b/shared/adb-speaks-human/setup-environment/images/navigate-compartment.png index d2d22619..943f19f0 100644 Binary files a/shared/adb-speaks-human/setup-environment/images/navigate-compartment.png and b/shared/adb-speaks-human/setup-environment/images/navigate-compartment.png differ diff --git a/shared/adb-speaks-human/setup-environment/images/navigate-stacks.png b/shared/adb-speaks-human/setup-environment/images/navigate-stacks.png index 2a7f5f8b..050e7790 100644 Binary files a/shared/adb-speaks-human/setup-environment/images/navigate-stacks.png and b/shared/adb-speaks-human/setup-environment/images/navigate-stacks.png differ diff --git a/shared/adb-speaks-human/setup-environment/images/save-values.png b/shared/adb-speaks-human/setup-environment/images/save-values.png new file mode 100644 index 00000000..ef75b044 Binary files /dev/null and b/shared/adb-speaks-human/setup-environment/images/save-values.png differ diff --git a/shared/adb-speaks-human/setup-environment/setup-environment-everything.md b/shared/adb-speaks-human/setup-environment/setup-environment-everything.md index 08273132..f495705c 100644 --- a/shared/adb-speaks-human/setup-environment/setup-environment-everything.md +++ b/shared/adb-speaks-human/setup-environment/setup-environment-everything.md @@ -1,7 +1,7 @@ # Set up the Workshop Environment ## Introduction @@ -9,10 +9,9 @@ This should only be used for select workshops where an AI model is provided This workshop focuses on teaching you how to setup and use generative AI to query your data using natural language from a SQL prompt and from an application. To fast track using Select AI, you will deploy a ready-to-go environment using a terraform script that will: * Provision your Autonomous Database instance with the required users and data -* Enable access to an OpenAI model. This access will be revoked after the workshop. * Install the Select AI demo application that was built using APEX -The automation uses a predefined OCI Cloud Stack Template that contains all of the resources that you need. You'll use OCI Resource Manager to deploy this template and make your environment available in just a few minutes. You can use Resource Manager for your own projects. For more details, see the [Overview of Resource Manager](https://docs.oracle.com/en-us/iaas/Content/ResourceManager/Concepts/resourcemanager.htm) Oracle Cloud Infrastructure Documentation documentation. +The automation uses a predefined OCI Cloud Stack Template that contains all the resources that you need. You'll use OCI Resource Manager to deploy this template and make your environment available in just a few minutes. You can use Resource Manager for your own projects. For more details, see the [Overview of Resource Manager](https://docs.oracle.com/en-us/iaas/Content/ResourceManager/Concepts/resourcemanager.htm) Oracle Cloud Infrastructure documentation. Estimated Time: 5 minutes. @@ -22,26 +21,29 @@ In this lab, you will: * Run the stack to perform all the prerequisites required to analyze data - ## Task 1: (Optional) Create an OCI Compartment A compartment is a collection of cloud assets, such as compute instances, load balancers, databases, and so on. By default, a root compartment was created for you when you created your tenancy (for example, when you registered for the trial account). It is possible to create everything in the root compartment, but Oracle recommends that you create sub-compartments to help manage your resources more efficiently. -You can deploy your resources to an existing compartment or create a new one. To create a new compartment: +If you are using an Oracle LiveLabs-provided sandbox, you don't have privileges to create a compartment and should skip this first task. Oracle LiveLabs has already created a compartment for you and you should use that one. Even though you can't create a compartment, you can review the steps below to see how it is done. 1. Log in to the **Oracle Cloud Console**. On the **Sign In** page, select your tenancy, enter your username and password, and then click **Sign In**. The **Oracle Cloud Console** Home page is displayed. -2. Open the **Navigation** menu and click **Identity & Security**. Under **Identity**, click **Compartments**. +2. Open the **Navigation** menu. + + ![Click the Navigation menu.](./images/click-navigation-menu.png =65%x*) + +3. Click **Identity & Security**. Under **Identity**, click **Compartments**. - ![The Navigation menu is clicked. The navigation path to Compartments is displayed.](./images/navigate-compartment.png =70%x*) + ![The navigation path to Compartments is displayed.](./images/navigate-compartment.png =80%x*) -3. On the **Compartments** page, click **Create Compartment**. +4. On the **Compartments** page, click **Create Compartment**. ![The Compartments page is displayed. The Create Compartment button is highlighted.](./images/click-create-compartment.png =70%x*) -4. In the **Create Compartment** dialog box, enter an appropriate name such as **`training-adw-compartment`** in the **Name** field and a description such as **`Training ADW Compartment`** in the **Description** field. +5. In the **Create Compartment** dialog box, enter an appropriate name such as **`training-adw-compartment`** in the **Name** field and a description such as **`Training ADW Compartment`** in the **Description** field. -5. In the **Parent Compartment** drop-down list, select your parent compartment, and then click **Create Compartment**. +6. In the **Parent Compartment** drop-down list, select your parent compartment, and then click **Create Compartment**. ![On the completed Create Compartment dialog box, click Create Compartment.](./images/create-compartment.png =70%x*) @@ -51,7 +53,7 @@ You can deploy your resources to an existing compartment or create a new one. To ## Task 2: Provision an ADB Instance, Load Data, and Install the Select AI Demo Application -Use an OCI Cloud Stack to set up your workshop environment by creating an ADB instance, upload the data to the instance, set up connectivity to OpenAI and install the Select AI demo application that was built using APEX. +Use an OCI Cloud Stack to set up your workshop environment by creating an ADB instance, upload the data to the instance, and install the Select AI demo application that was built using APEX. 1. Deploy the required cloud resources for this workshop using the OCI Resource Manager. Click the button below: @@ -77,10 +79,9 @@ Use an OCI Cloud Stack to set up your workshop environment by creating an ADB in * **Compartment:** Select the target compartment for the new Autonomous Database instance. * **Database Name:** The default database name is **`MovieStreamWorkshop`**. You can replace this name with your own name but that is optional. In our example, we changed the database name to **``TrainingAIWorkshop``**. The database name must contain only letters and numbers, starting with a letter, and between 12 and 30 characters long. The name cannot contain the double quote (") character, space, underscore "_", or the username `admin`. - >**Important:** Your database name that you choose must be unique in the tenancy that you are using; otherwise, you will get an error message. - * **Do you want a always Free Oracle Autonomous Database instance?** Accept the default **`false`** value. Select **`true`** from the drop-down list if you want to deploy an Always Free database. + * **Do you want an always Free Oracle Autonomous Database instance?** Accept the default **`false`** value. Select **`true`** from the drop-down list if you want to deploy an Always Free database. ![Provision an always free ADB instance](./images/provision-always-free.png "") @@ -88,6 +89,7 @@ Use an OCI Cloud Stack to set up your workshop environment by creating an ADB in * **Secret API key used to connect to AI model:** Access to OpenAI is being provided for the duration of this event. Click the button below and then copy and paste the secret API key: Obtain secret key + * For the other fields, accept the default selections. ![The Configure variables step 2 of the wizard](./images/configure-variables.png =110%x*) @@ -108,51 +110,53 @@ Use an OCI Cloud Stack to set up your workshop environment by creating an ADB in ![Job has been successful](./images/stack-success.png "") -7. Scroll-down to the **Resources** section at the bottom of **Job details** page, and then click **Outputs**. The keys and values are displayed in the **Outputs** section. Save the values for the following keys in a text editor of your choice as you will need this information later. For the **`select_ai_demo_url`** value, click the **Copy** button in that row to copy the value into the clipboard, and then paste it into your text editor. _This is the URL that you will use later to launch the **Autonomous Database Select AI** demo application._ +7. Scroll-down to the **Resources** section at the bottom of **Job details** page, and then click **Outputs**. The keys and values are displayed in the **Outputs** section. + + ![User details](./images/output.png "") + +8. Save the values for the following keys in a text editor of your choice as you will need this information later. For the **`select_ai_demo_url`** value, click the **Copy** button in that row to copy the value into the clipboard, and then paste it into your text editor. _This is the URL that you will use later to launch the **Autonomous Database Select AI** demo application._ * **`adb_user_name`** * **`adb_user_password`** * **`select_ai_demo_url`** - ![User details](./images/output.png "") + ![Save values in file.](./images/save-values.png "") + +## Task 3: Review Your Deployment + +1. Let's view the newly created stack and job. From the Console, open the **Navigation** menu. -## Task 4: Review your deployment -Let's view the newly created stack and job. + ![Click the Navigation menu.](./images/click-navigation-menu.png =60%x*) -1. From the Console, open the **Navigation** menu and click **Developer Services**. Under **Resource Manager**, click **Stacks**. +2. Click **Developer Services**. Under **Resource Manager**, click **Stacks**. ![Navigate to stacks](./images/navigate-stacks.png "") - The newly created stack is displayed in the **Stacks** page. + The newly created stack is displayed in the **Stacks** page. Select the region and compartment that you specified when you deployed the stack. ![The stack is displayed](./images/stacks-page.png "") -2. Click the stack name. The **Stack details** page is displayed. +3. Click the stack name. The **Stack details** page is displayed. ![Click Jobs](./images/stack-details-page.png "") -3. In the **Jobs** section, click the job name. The **Job details** page is displayed. +4. In the **Jobs** section, click the job name. The **Job details** page is displayed. ![Job details page](./images/job-details.png "") -4. As mentioned in the previous section, the keys and values are displayed in the **Outputs** section. This includes the following fields that you will use later in the workshop: - - * **`adb_user_name`** - * **`adb_user_password`** - * **`select_ai_demo_url`** - - ![User details](./images/output.png "") - -5. You can use the **Logs** section to view the created resources such as the **moviestream** user. + You can use the **Logs** section to view the created resources such as the **moviestream** user. You can also use the **Output** link in the **Resources** section to find out the values of different keys. The **Logs** section is useful when you have a failed job and you try to find out why it failed. In the following failed job example, we scrolled down the log and then searched for text in red font color which describes the potential problem. In this specific example, we specified a database name with an underscore which does not meet the requirements for a database name. ![Failed job](./images/failed-job.png "") -## Task 5: Go to your new Autonomous Database instance -Let's view the newly provisioned ADB instance. +## Task 4: Navigate to Your New Autonomous Database Instance + +Let's view the newly provisioned ADB instance. + +1. From the Console, open the **Navigation** menu and click **Oracle Database**. Under **Autonomous Database**, click **Autonomous Data Warehouse**. -1. From the Console, open the **Navigation** menu and click **Oracle Database**. Under **Autonomous Database**, click **Autonomous Data Warehouse**. On the **Autonomous Databases** page, select the _compartment and region_ that you specified in the **Configure variables** step 2 of the wizard. The Autonomous Database that was provisioned by the stack is displayed, **``TrainingAIWorkshop``**. +2. On the **Autonomous Databases** page, select the _compartment and region_ that you specified in the **Configure variables** step 2 of the wizard. The Autonomous Database that was provisioned by the stack is displayed, **``TrainingAIWorkshop``**. ![The Autonomous Databases page](./images/adb-instances.png "") @@ -168,14 +172,14 @@ 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 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](files/gnu-free-documentation-license.txt) +A copy of the license is included in the section entitled [GNU Free Documentation License](files/gnu-free-documentation-license.txt) \ No newline at end of file diff --git a/shared/adb-speaks-human/setup-environment/setup-environment.md b/shared/adb-speaks-human/setup-environment/setup-environment.md index 90cce0c1..81f856bc 100644 --- a/shared/adb-speaks-human/setup-environment/setup-environment.md +++ b/shared/adb-speaks-human/setup-environment/setup-environment.md @@ -11,7 +11,7 @@ This workshop focuses on teaching you how to setup and use generative AI to quer * Provision your Autonomous Database instance with the required users and data * Install the Select AI demo application that was built using APEX -The automation uses a predefined OCI Cloud Stack Template that contains all of the resources that you need. You'll use OCI Resource Manager to deploy this template and make your environment available in just a few minutes. You can use Resource Manager for your own projects. For more details, see the [Overview of Resource Manager](https://docs.oracle.com/en-us/iaas/Content/ResourceManager/Concepts/resourcemanager.htm) Oracle Cloud Infrastructure Documentation documentation. +The automation uses a predefined OCI Cloud Stack Template that contains all the resources that you need. You'll use OCI Resource Manager to deploy this template and make your environment available in just a few minutes. You can use Resource Manager for your own projects. For more details, see the [Overview of Resource Manager](https://docs.oracle.com/en-us/iaas/Content/ResourceManager/Concepts/resourcemanager.htm) Oracle Cloud Infrastructure documentation. Autonomous Database supports both the **OpenAI** and **Cohere** models. In the second part of the workshop, you will set up a developer account on **OpenAI**. @@ -88,17 +88,21 @@ If you are using an Oracle LiveLabs-provided sandbox, you don't have privileges 1. Log in to the **Oracle Cloud Console**. On the **Sign In** page, select your tenancy, enter your username and password, and then click **Sign In**. The **Oracle Cloud Console** Home page is displayed. -2. Open the **Navigation** menu and click **Identity & Security**. Under **Identity**, click **Compartments**. +2. Open the **Navigation** menu. - ![The Navigation menu is clicked. The navigation path to Compartments is displayed.](./images/navigate-compartment.png =70%x*) + ![Click the Navigation menu.](./images/click-navigation-menu.png =65%x*) -3. On the **Compartments** page, click **Create Compartment**. +3. Click **Identity & Security**. Under **Identity**, click **Compartments**. + + ![The navigation path to Compartments is displayed.](./images/navigate-compartment.png =80%x*) + +4. On the **Compartments** page, click **Create Compartment**. ![The Compartments page is displayed. The Create Compartment button is highlighted.](./images/click-create-compartment.png =70%x*) -4. In the **Create Compartment** dialog box, enter an appropriate name such as **`training-adw-compartment`** in the **Name** field and a description such as **`Training ADW Compartment`** in the **Description** field. +5. In the **Create Compartment** dialog box, enter an appropriate name such as **`training-adw-compartment`** in the **Name** field and a description such as **`Training ADW Compartment`** in the **Description** field. -5. In the **Parent Compartment** drop-down list, select your parent compartment, and then click **Create Compartment**. +6. In the **Parent Compartment** drop-down list, select your parent compartment, and then click **Create Compartment**. ![On the completed Create Compartment dialog box, click Create Compartment.](./images/create-compartment.png =70%x*) @@ -134,15 +138,14 @@ Use an OCI Cloud Stack to set up your workshop environment by creating an ADB in * **Compartment:** Select the target compartment for the new Autonomous Database instance. * **Database Name:** The default database name is **`MovieStreamWorkshop`**. You can replace this name with your own name but that is optional. In our example, we changed the database name to **``TrainingAIWorkshop``**. The database name must contain only letters and numbers, starting with a letter, and between 12 and 30 characters long. The name cannot contain the double quote (") character, space, underscore "_", or the username `admin`. - >**Important:** Your database name that you choose must be unique in the tenancy that you are using; otherwise, you will get an error message. - * **Do you want a always Free Oracle Autonomous Database instance?** Accept the default **`false`** value. Select **`true`** from the drop-down list if you want to deploy an Always Free database. + * **Do you want an always Free Oracle Autonomous Database instance?** Accept the default **`false`** value. Select **`true`** from the drop-down list if you want to deploy an Always Free database. ![Provision an always free ADB instance](./images/provision-always-free.png "") * **Password:** Enter a password for the `ADMIN` user of your choice such as **`Training4ADW`**. **Important**: Make a note of this password as you will need it to perform later tasks. - * **Secret API key used to connect to AI model:** Enter your secret key. If you don't have one, follow the instructions in **Task 1** in this lab to obtain one. + * **Secret API key used to connect to AI model:** Enter your secret key. If you don't have one, follow the instructions in **Task 1** in this lab to obtain a secret key. * For the other fields, accept the default selections. ![The Configure variables step 2 of the wizard](./images/configure-variables.png =110%x*) @@ -163,37 +166,53 @@ Use an OCI Cloud Stack to set up your workshop environment by creating an ADB in ![Job has been successful](./images/stack-success.png "") -7. Scroll-down to the **Resources** section at the bottom of **Job details** page, and then click **Outputs**. The keys and values are displayed in the **Outputs** section. Save the values for the following keys in a text editor of your choice as you will need this information later. For the **`select_ai_demo_url`** value, click the **Copy** button in that row to copy the value into the clipboard, and then paste it into your text editor. _This is the URL that you will use later to launch the **Autonomous Database Select AI** demo application._ +7. Scroll-down to the **Resources** section at the bottom of **Job details** page, and then click **Outputs**. The keys and values are displayed in the **Outputs** section. + + ![User details](./images/output.png "") + +8. Save the values for the following keys in a text editor of your choice as you will need this information later. For the **`select_ai_demo_url`** value, click the **Copy** button in that row to copy the value into the clipboard, and then paste it into your text editor. _This is the URL that you will use later to launch the **Autonomous Database Select AI** demo application._ * **`adb_user_name`** * **`adb_user_password`** * **`select_ai_demo_url`** - ![User details](./images/output.png "") + ![Save values in file.](./images/save-values.png "") + +## Task 4: Review Your Deployment -8. Let's view the newly created stack and job. From the Console, open the **Navigation** menu and click **Developer Services**. Under **Resource Manager**, click **Stacks**. +1. Let's view the newly created stack and job. From the Console, open the **Navigation** menu. + + ![Click the Navigation menu.](./images/click-navigation-menu.png =60%x*) + +2. Click **Developer Services**. Under **Resource Manager**, click **Stacks**. ![Navigate to stacks](./images/navigate-stacks.png "") - The newly created stack is displayed in the **Stacks** page. + The newly created stack is displayed in the **Stacks** page. Select the region and compartment that you specified when you deployed the stack. ![The stack is displayed](./images/stacks-page.png "") -9. Click the stack name. The **Stack details** page is displayed. +3. Click the stack name. The **Stack details** page is displayed. ![Click Jobs](./images/stack-details-page.png "") -10. In the **Jobs** section, click the job name. The **Job details** page is displayed. +4. In the **Jobs** section, click the job name. The **Job details** page is displayed. ![Job details page](./images/job-details.png "") - You can use the **Logs** section to view the created resources such as the **moviestream** user. You can also use the **Output** link in the **Resources** section to find out the values of different keys. + You can use the **Logs** section to view the created resources such as the **moviestream** user. You can also use the **Output** link in the **Resources** section to find out the values of different keys. The **Logs** section is useful when you have a failed job and you try to find out why it failed. In the following failed job example, we scrolled down the log and then searched for text in red font color which describes the potential problem. In this specific example, we specified a database name with an underscore which does not meet the requirements for a database name. ![Failed job](./images/failed-job.png "") -11. Let's view the newly provisioned ADB instance. From the Console, open the **Navigation** menu and click **Oracle Database**. Under **Autonomous Database**, click **Autonomous Data Warehouse**. On the **Autonomous Databases** page, select the _compartment and region_ that you specified in the **Configure variables** step 2 of the wizard. The Autonomous Database that was provisioned by the stack is displayed, **``TrainingAIWorkshop``**. +## Task 5: Navigate to Your New Autonomous Database Instance + +Let's view the newly provisioned ADB instance. + +1. From the Console, open the **Navigation** menu and click **Oracle Database**. Under **Autonomous Database**, click **Autonomous Data Warehouse**. + +2. On the **Autonomous Databases** page, select the _compartment and region_ that you specified in the **Configure variables** step 2 of the wizard. The Autonomous Database that was provisioned by the stack is displayed, **``TrainingAIWorkshop``**. ![The Autonomous Databases page](./images/adb-instances.png "") @@ -209,11 +228,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 diff --git a/shared/adb-speaks-human/use-select-ai-demo/images/demo-credentials-file.png b/shared/adb-speaks-human/use-select-ai-demo/images/demo-credentials-file.png index 400cd67d..b1f474e6 100644 Binary files a/shared/adb-speaks-human/use-select-ai-demo/images/demo-credentials-file.png and b/shared/adb-speaks-human/use-select-ai-demo/images/demo-credentials-file.png differ diff --git a/shared/adb-speaks-human/use-select-ai-demo/use-select-ai-demo.md b/shared/adb-speaks-human/use-select-ai-demo/use-select-ai-demo.md index 4225e608..0bdb25dd 100644 --- a/shared/adb-speaks-human/use-select-ai-demo/use-select-ai-demo.md +++ b/shared/adb-speaks-human/use-select-ai-demo/use-select-ai-demo.md @@ -25,19 +25,19 @@ In this lab, you will: 1. Copy the **Select AI demo** application URL that you saved in a text editor. - ![Copy the URL value](./images/demo-credentials-file.png " ") + ![Copy the URL value](./images/demo-credentials-file.png =65%x*) Paste the URL in a new tab in your Web browser, and then click **[ENTER]**. In the **ChatDB** page, enter the username (`moviestream`) and password that you saved in your text editor file, and then click **Sign In**. - ![Enter ChatDB credentials](./images/ai-select-credentials.png " ") + ![Enter ChatDB credentials](./images/ai-select-credentials.png =70%x*) -2. On the **AI ChatDB** page, select a profile that you want to use from the **Service** drop-down list. In this workshop, select the **`OPENAI_GPT35`** profile that was created in the **Create credential and AI profile** paragraph in the notebook that you imported in the **Lab 3**. +2. On the **ChatDB** page, select a profile that you want to use from the **Service** drop-down list. In this workshop, select the **`OPENAI_GPT35`** profile that was created in the **Create credential and AI profile** paragraph in the notebook that you imported in the **Lab 3**. - ![Select AI profile](./images/select-profile.png " ") + ![Select AI profile](./images/select-profile.png =70%x*) The ChatDB application is displayed. You are now ready to ask questions at the **Ask a question** prompt! - ![Select AI application displayed](./images/select-ai-application.png " ") + ![Select AI application displayed](./images/select-ai-application.png =70%x*) ## Task 2: Ask Natural Language and Database Questions Using the Application @@ -46,12 +46,12 @@ You can use this application to ask the following types of questions: - **Ask the Internet Using your LLM Provider:** _Uncheck the **Ask Database** checkbox_ to ask general free form questions (internet-based) about anything such as _How do you make french toast?_. This question will go to the LLM Provider that you selected when you created the profile and returns the answer. - ![Ask the internet](./images/ask-internet.png " ") + ![Ask the internet](./images/ask-internet.png =70%x*) - **Ask your Database :** _Select the **Ask Database** checkbox_ to ask questions about your business data based on the user and tables in the database that you specified when you created the profile. - ![Ask the database](./images/ask-database.png " ") + ![Ask the database](./images/ask-database.png =70%x*)