Skip to content

Commit 5763ad7

Browse files
YanirShahaklyudmil-pelovyipwendy713ZackaryRice
authored
Introduction to creating your first agent HOL (#413)
* initial commit * rename root folder and update code file * update source code zip * update screenshots * self QA updates * update source zip file * livelab updates * Resolve language comments * added instructions for the operation of the random tweets generator * update source archive * moved the zip file to object storage + minor language changes * Added description for the bundled images * add clarification to Twitter rule creation * minor changes * LiveLab additions * Additions to livelab * updates for CloudWorld * Initial boilerplate * adding notebooks examples * update the notebooks * checking the setup lab and new structure * adding load data lab * update the hol notebooks * update prep notebook * setup the lab structure * Lab 6 - Try The Untuned LLM Model * Lab 6 - Try The Untuned LLM Model * lab 7 - tune ChefGPT * Lab #8 - Let's try our ChefGPT * add <copy> tags to notebook source * add cell comment * add notebooks to lab instead of copy/paste blocks * Move the cell descriptions into the notebooks & add notebooks download links * Add md files for lab 3-5 * Add in create project and create notebook sections * add introduction section and step showing unzipping of the dataset * Self-QA feedback updates * Self QA PR comments * add greenbutton folder * Fix publish review comments * Add OCW23 folders * Fix filename link in manifest.json file * Initial structure * Initial structure * Rest of content for v1 * Lyudmil's feedback * Add a more descriptive text for each image * Remove dataset zip file and add PAR link to it * Update timing * Fix numbering on the last workshop * Update Sandbox compatment insturctions * Fix the create an agent page * Initial commit, tenancy version * Updated to the tenancy version * Update lab name in manifest * Introduction to creating your first agent * Fix title * Add proceed to the next lab comment * Update lab title * Add LabX prefix to lab names --------- Co-authored-by: lyudmil-pelov <[email protected]> Co-authored-by: Wendy Yip <[email protected]> Co-authored-by: ZackaryRice <[email protected]>
1 parent 33ac398 commit 5763ad7

File tree

111 files changed

+1715
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

111 files changed

+1715
-0
lines changed
95.2 KB
Loading
363 KB
Loading
Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
# Introduction
2+
3+
OCI Generative AI Agents is a fully managed service that combines the power of large language models (LLMs) with AI technologies to create intelligent virtual agents that can provide personalized, context-aware, and highly engaging customer experiences.
4+
5+
## Key Features
6+
7+
- **Simple agent setup**: A fully managed, few-step setup process to create and deploy the agents.
8+
- **Tools orchestration**: Orchestrate several tools and services to address complex workflows and automate conversations.
9+
- **Multi-turn chat experience**: Engage in dynamic, multi-turn dialogues with more human-like interactions.
10+
- **Context retention**: Ask follow-up questions because agents remember conversation context across turns for personalized and consistent interactions.
11+
- **Custom instructions**: Guide the agent's behavior with added instructions.
12+
- **Guardrails**: Have the agent help identify and apply content moderation, and help identify and protect against prompt injection (PI) and personally identifiable information (PII) at its endpoints.
13+
- **Human-in-the-loop**: Optional feature for real-time monitoring and human intervention.
14+
- **Scalability and security**: Get OCI's inherent secure and scalable infrastructure.
15+
16+
In OCI Generative AI Agents, depending on the use case, you can empower each agent with one or more of the following tools:
17+
18+
- **SQL Tool**: Converts natural language queries into SQL statements, which can automatically execute to generate responses against a connected database.
19+
- **RAG Tool**: Retrieves information from one or more knowledge bases and aims to respond with relevant and context-aware information in natural language.
20+
- **Custom Function Calling Tool**: Calls functions that you define to expand the features that the agent covers. The agent can execute the configured function and respond depending on the returned values.
21+
22+
## About this Workshop
23+
24+
In this workshop you will learn how to harness the power of conversational generative AI to unlock the information hidden in your documents and databases to automate business processes and increase productivity.
25+
26+
As a use case for this workshop, we are going to create a customer support representative assistant. This assistant, powered by an intelligent agent, will simplify the work of the support representative by searching and analyzing information from multiple data sources seamlessly and returning relevant information in human-readable form.
27+
28+
Estimated Workshop Time: 1 hour 20 minutes
29+
30+
## Solution Architecture
31+
32+
The following is a simplified solution architecture diagram for our customer support representative assistant:
33+
34+
![simplified solution architecture diagram for customer support representative assistant](./images/solution-architecture.jpg =50%x*)
35+
36+
As described in the diagram, our solution makes use of the following resources:
37+
38+
- **Oracle Autonomous Database (ADB) instance** - In this database, we are going to save information about the following entities relevant to our customer support system:
39+
40+
- Customers
41+
- Support representatives
42+
- Support tickets
43+
- Helper tables
44+
45+
Here is the database schema:
46+
47+
![Tickets database schema](./images/database-schema.jpg)
48+
49+
- **Storage Bucket** - The storage bucket will store knowledge articles (provided for you as part of this workshop). The agent will retrieve the relevant knowledge articles whenever a customer support representative requires this information to resolve a customer ticket.
50+
- **Vault** - In this vault, we are going to securely store the credentials required to access the ADB instance.
51+
- **Database Connection** - This resource will contain all of the information required to retrieve data from our ADB instance. The connection will will securely retrieve the required credentials from the vault.
52+
- **Knowledge bases** - The two knowledge bases reference our two data sources, the Storage Bucket and the ADB instance, and are used by the relevant agent tools.
53+
- **RAG tool** - This tool is used by the agent to retrieve, reason over and analyze information from unstructured data such as the knowledge articles stored in the storage bucket. The agent will use this tool whenever specific knowledge is required to complete a task. The RAG tool is also capable of providing references to the origins of the information retrieved (which document, page and paragraph).
54+
55+
In addition, the RAG tool is capable of analyzing text files as well as PDF files; And, if instructed to do so, can also analyze images within the PDF files.
56+
57+
- **SQL tool** - This to is used by the agent to retrieve, reason over and respond using information found in our ADB instance. This tool knows how to convert natural language requests or questions into SQL and can retrieve the information for the agent to use in it's replies.
58+
- **Agent** - The agent will receive all requests from the user, come up with an execution plan, will ask clarifying questions if required and route requests to the tools if needed. The agent will collect all of the pieces of information collected during the execution of the plan and compile a coherent response for the user.
59+
60+
In order to accelerate the development process, in this workshop we are going to use the chat feature built into the OCI console to communicate with the agent without writing or deploying a single line of code.
61+
62+
## Objectives
63+
64+
In this workshop, you will learn how to:
65+
66+
- Create the agent and supporting resources to make our solution come alive.
67+
- As a customer service representative, have a conversation with our agent and see how it can supercharge your productivity.
68+
69+
Some of the resources mentioned in the solution architecture were already created for such as the Database, storage bucket with knowledge articles etc., you so that you could focus on the most important part of the workshop - creating your first agent.
70+
71+
## Learn More
72+
73+
- [OCI Generative AI Agents service information](https://www.oracle.com/artificial-intelligence/generative-ai/agents/)
74+
- [OCI Generative AI Agents service documentation](https://docs.oracle.com/en-us/iaas/Content/generative-ai-agents/home.htm)
75+
- [Managing SQL Tools in Generative AI Agents](https://docs.oracle.com/en-us/iaas/Content/generative-ai-agents/sql-tool.htm)
76+
- [Managing RAG Tools in Generative AI Agents](https://docs.oracle.com/en-us/iaas/Content/generative-ai-agents/RAG-tool.htm)
77+
- [Managing Function Calling Tools in Generative AI Agents](https://docs.oracle.com/en-us/iaas/Content/generative-ai-agents/function-calling-tool.htm)
78+
79+
## Acknowledgements
80+
81+
- **Author** - Yanir Shahak, Senior Principal Software Engineer
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# Introduction
2+
3+
OCI Generative AI Agents is a fully managed service that combines the power of large language models (LLMs) with AI technologies to create intelligent virtual agents that can provide personalized, context-aware, and highly engaging customer experiences.
4+
5+
## Key Features
6+
7+
- **Simple agent setup**: A fully managed, few-step setup process to create and deploy the agents.
8+
- **Tools orchestration**: Orchestrate several tools and services to address complex workflows and automate conversations.
9+
- **Multi-turn chat experience**: Engage in dynamic, multi-turn dialogues with more human-like interactions.
10+
- **Context retention**: Ask follow-up questions because agents remember conversation context across turns for personalized and consistent interactions.
11+
- **Custom instructions**: Guide the agent's behavior with added instructions.
12+
- **Guardrails**: Have the agent help identify and apply content moderation, and help identify and protect against prompt injection (PI) and personally identifiable information (PII) at its endpoints.
13+
- **Human-in-the-loop**: Optional feature for real-time monitoring and human intervention.
14+
- **Scalability and security**: Get OCI's inherent secure and scalable infrastructure.
15+
16+
In OCI Generative AI Agents, depending on the use case, you can empower each agent with one or more of the following tools:
17+
18+
- **SQL Tool**: Converts natural language queries into SQL statements, which can automatically execute to generate responses against a connected database.
19+
- **RAG Tool**: Retrieves information from one or more knowledge bases and aims to respond with relevant and context-aware information in natural language.
20+
- **Custom Function Calling Tool**: Calls functions that you define to expand the features that the agent covers. The agent can execute the configured function and respond depending on the returned values.
21+
22+
## About this Workshop
23+
24+
In this workshop you will learn how to harness the power of conversational generative AI to unlock the information hidden in your documents and databases to automate business processes and increase productivity.
25+
26+
As a use case for this workshop, we are going to create a customer support representative assistant. This assistant, powered by an intelligent agent, will simplify the work of the support representative by searching and analyzing information from multiple data sources seamlessly and returning relevant information in human-readable form.
27+
28+
Estimated Workshop Time: 1 hour 20 minutes
29+
30+
## Solution Architecture
31+
32+
The following is a simplified solution architecture diagram for our customer support representative assistant:
33+
34+
![simplified solution architecture diagram for customer support representative assistant](./images/solution-architecture.jpg =50%x*)
35+
36+
As described in the diagram, our solution makes use of the following resources:
37+
38+
- **Oracle Autonomous Database (ADB) instance** - In this database, we are going to save information about the following entities relevant to our customer support system:
39+
40+
- Customers
41+
- Support representatives
42+
- Support tickets
43+
- Helper tables
44+
45+
Here is the database schema:
46+
47+
![Tickets database schema](./images/database-schema.jpg)
48+
49+
- **Storage Bucket** - The storage bucket will store knowledge articles (provided for you as part of this workshop). The agent will retrieve the relevant knowledge articles whenever a customer support representative requires this information to resolve a customer ticket.
50+
- **Vault** - In this vault, we are going to securely store the credentials required to access the ADB instance.
51+
- **Database Connection** - This resource will contain all of the information required to retrieve data from our ADB instance. The connection will will securely retrieve the required credentials from the vault.
52+
- **Knowledge bases** - The two knowledge bases reference our two data sources, the Storage Bucket and the ADB instance, and are used by the relevant agent tools.
53+
- **RAG tool** - This tool is used by the agent to retrieve, reason over and analyze information from unstructured data such as the knowledge articles stored in the storage bucket. The agent will use this tool whenever specific knowledge is required to complete a task. The RAG tool is also capable of providing references to the origins of the information retrieved (which document, page and paragraph).
54+
55+
In addition, the RAG tool is capable of analyzing text files as well as PDF files; And, if instructed to do so, can also analyze images within the PDF files.
56+
57+
- **SQL tool** - This to is used by the agent to retrieve, reason over and respond using information found in our ADB instance. This tool knows how to convert natural language requests or questions into SQL and can retrieve the information for the agent to use in it's replies.
58+
- **Agent** - The agent will receive all requests from the user, come up with an execution plan, will ask clarifying questions if required and route requests to the tools if needed. The agent will collect all of the pieces of information collected during the execution of the plan and compile a coherent response for the user.
59+
60+
In order to accelerate the development process, in this workshop we are going to use the chat feature built into the OCI console to communicate with the agent without writing or deploying a single line of code.
61+
62+
## Objectives
63+
64+
In this workshop, you will learn how to:
65+
66+
- Validate your tenancy for compatibility with the service and set up access policies.
67+
- Set up our knowledge article data source.
68+
- Create our ADB instance with all of the required data and configuration.
69+
- Create the agent and supporting resources to make our solution come alive.
70+
- As a customer service representative, have a conversation with our agent and see how it can supercharge your productivity.
71+
72+
## Learn More
73+
74+
- [OCI Generative AI Agents service information](https://www.oracle.com/artificial-intelligence/generative-ai/agents/)
75+
- [OCI Generative AI Agents service documentation](https://docs.oracle.com/en-us/iaas/Content/generative-ai-agents/home.htm)
76+
- [Managing SQL Tools in Generative AI Agents](https://docs.oracle.com/en-us/iaas/Content/generative-ai-agents/sql-tool.htm)
77+
- [Managing RAG Tools in Generative AI Agents](https://docs.oracle.com/en-us/iaas/Content/generative-ai-agents/RAG-tool.htm)
78+
- [Managing Function Calling Tools in Generative AI Agents](https://docs.oracle.com/en-us/iaas/Content/generative-ai-agents/function-calling-tool.htm)
79+
80+
## Acknowledgements
81+
82+
- **Author** - Yanir Shahak, Senior Principal Software Engineer
Binary file not shown.
21.2 KB
Loading
131 KB
Loading
61.8 KB
Loading
145 KB
Loading
177 KB
Loading

0 commit comments

Comments
 (0)