helencousins.com

Enhancing AI Orchestration: Strategies for Effective Presentations

Written on

Chapter 1: Introduction to AI Orchestration

In our prior discussion—'Creating a Problem-Solving AI Plugin Utilizing Semantic Kernel and OpenAI'—we explored how to harness the capabilities of Semantic Kernel along with OpenAI to develop our Problem Solving Plugin. This tool enhances our problem-solving abilities and improves client interactions.

In this article, we will delve into achieving our objectives through AI orchestration, specifically by integrating Semantic Kernel's Sequential Planner, OpenAI's ChatGPT, and AI Plugins. We have an important strategic meeting approaching, and our challenge is to analyze a Business Problem Statement and prepare an engaging presentation.

Our primary objective is to craft a persuasive presentation addressing a Business Issue for the upcoming strategic meeting.

To achieve this goal, we will follow several key steps:

Section 1.1: Problem Solving Steps

Step 1: Define the Problem

First, we will scrutinize the Problem Statement to identify the underlying causes.

Step 2: Identify Alternative Solutions

Next, we will brainstorm various solutions to tackle the root causes of the identified issues.

Step 3: Evaluate Solutions

In this step, we will weigh the pros and cons of each proposed alternative. We will assess each option based on required resources, including time, data, personnel, and budget.

Step 4: Create a Mind Map

This step involves developing a mind map by dissecting the Problem Statement into its components:

  • Problem Statement
  • Causes of the Problem
  • Effects of the Problem and Potential Impacts on Customers
  • Potential Solutions — Quick Wins
  • Potential Solutions — Long-term Strategies
  • Recommended Actions
  • Areas for Improvement
  • Benefits of Improvement

Step 5: Create an Engaging Presentation

Using the mind map from Step 4, we will build a compelling presentation. We will construct our AI Assistant based on the aforementioned multi-step plan to achieve our goal of creating an impactful presentation.

Section 1.2: Building the AI Assistant

To develop our AI Assistant, we will utilize:

  1. Semantic Kernel's Sequential Planner, which is an advanced planning tool capable of executing a series of steps and passing outputs as needed.
  2. OpenAI's ChatGPT — Text Completion and Generation Services.
  3. AI Plugins — We will implement two plugins:
  1. Problem Solving AI Plugin for the problem-solving steps.
  2. ReportGenie AI Plugin for the mind mapping and presentation phases.

We will create the ReportGenie AI Plugin.

Step 1: Setting Up the ReportGenie AI Plugin

  1. Create a directory for the Report Genie Plugin, ensuring to have separate folders for Mind Map and Presentation:

Plugins-skReportGenie

Plugins-skReportGenieMindMap

Plugins-skReportGeniePresentation

  1. Configure the necessary JSON and prompt template files within each folder as follows:

Plugins-skReportGenieMindMapconfig.json

Plugins-skReportGenieMindMapskprompt.txt

Mind Map Configuration Example:

{

"schema": 1,

"description": "Generate a mind map based on the provided problem statement.",

"type": "completion",

"completion": {

"max_tokens": 1000,

"temperature": 0.9,

"top_p": 0.5,

"presence_penalty": 0.0,

"frequency_penalty": 0.0

},

"input": {

"parameters": [

{

"name": "input",

"description": "Mind map for the given problem statement.",

"defaultValue": ""

}

]

}

}

Mind Map Prompt Example:

You are skilled at creating mind maps by segmenting topics into smaller components.

{{$input}}

Your task is to:

  1. Identify the Causes of the Problem
  2. Determine the Effects of the Problem and the potential impact on customers
  3. Suggest Potential Solutions categorized as Quick Wins and Long-term Strategies
  4. Outline Necessary Actions
  5. Identify Areas for Improvement
  6. Highlight Benefits of Improvement

Presentation Configuration Example:

{

"schema": 1,

"description": "Create a presentation derived from the mind map of the problem statement.",

"type": "completion",

"completion": {

"max_tokens": 1000,

"temperature": 0.9,

"top_p": 0.5,

"presence_penalty": 0.0,

"frequency_penalty": 0.0

},

"input": {

"parameters": [

{

"name": "input",

"description": "Presentation derived from the mind map.",

"defaultValue": ""

}

]

}

}

Presentation Prompt Example:

You are an expert in crafting engaging presentations.

{{$input}}

Your task is to formulate a presentation from the mind map:

The presentation should follow this structure:

  • Page 1: Title and Summary
  • Page 2: The Problem
  • Page 3: Causes and Effects of the Problem
  • Page 4: Potential Impact on Customers
  • Page 5: Suggested Solutions — Quick Wins vs. Long-term Strategies
  • Page 6: Recommended Actions
  • Page 7: Areas for Improvement and Benefits

Section 1.3: Execution Steps

Now, we will dive into the steps to create our AI Assistant using a multi-step plan by establishing a Kernel, preparing it, configuring the Sequential Planner, and orchestrating our AI Plugins to accomplish the goal of crafting an engaging presentation.

Step 2: Install Required Packages

Begin by installing the necessary libraries and system dependencies:

pip install semantic-kernel

pip install openai

pip install python-dotenv

Step 3: Import Required Libraries

import semantic_kernel as sk

from semantic_kernel.connectors.ai.open_ai import OpenAIChatCompletion, OpenAITextEmbedding

from IPython.display import display, Markdown

Step 4: Set Up the Kernel

For this step, we will utilize the LLM model gpt-3.5-turbo-0301. You'll need the OpenAI Org ID and API Key, which can be sourced from your environment variables.

kernel = sk.Kernel()

kernel.add_text_completion_service("openai", OpenAIChatCompletion("gpt-3.5-turbo-0301", api_key, org_id))

kernel.add_text_embedding_generation_service("openaiembedding", OpenAITextEmbedding("text-embedding-ada-002", api_key, org_id))

print("Kernel created, Text Completion and Text Embedding Generation Services added.")

Step 5: Import Skills into the Kernel

In this step, we will incorporate the Problem Solving AI Plugin and Report Genie Plugin into the Kernel.

pluginsDirectory = "../Plugins-sk" # Path to Plugins Directory

ProblemSolving_plugin = kernel.import_semantic_skill_from_directory(pluginsDirectory, "ProblemSolving")

ReportGenie_plugin = kernel.import_semantic_skill_from_directory(pluginsDirectory, "ReportGenie")

Step 6: Set Up the Sequential Planner

Here, we will import the necessary libraries and configure the Sequential Planner for orchestrating the Problem Solving and Report Genie Plugins.

from semantic_kernel.planning import SequentialPlanner

from semantic_kernel.planning.sequential_planner.sequential_planner_config import SequentialPlannerConfig

planner = SequentialPlanner(kernel)

Step 7: Establish the Goal

Next, we will define the goal for the Sequential Planner.

# Business Problem Statement

problemst = """The average customer service wait and on-hold time for the company exceeds five minutes during both its busy and slow seasons."""

# Define the Goal

ask = f"""

For the upcoming strategic meeting, need your help with:

Define the Problem, Identify Alternative Solutions, Evaluate Solutions,

Create a Mindmap, Create a Presentation using the Mindmap for addressing the problem statement:

{problemst}

"""

print(ask)

Step 8: Generate the Multi-step Plan

We will create a multi-step plan asynchronously based on the defined goal.

plan = await planner.create_plan_async(goal=ask)

print(plan)

print(plan._steps)

Step 9: Execute the Generated Plan

Finally, we will execute the generated plan and observe the results.

result = await plan.invoke_async()

for index, step in enumerate(plan._steps):

print(f"✅ Step {index+1} used function {step._function.name}")

trace_resultp = True # for tracing the execution path

display(Markdown(f"## ✨ Generated result from the ask: {ask}nn---n{result}"))

Chapter 2: Conclusion

Our AI Assistant has successfully executed the multi-step plan and orchestrated the AI Plugins to address the specified problem statement. We can experiment with various scenarios to refine our goal through our AI Assistant, which can help in formulating a multi-step executable plan.

Wishing you success in preparing for your upcoming strategic meetings!

Happy strategizing!

If you have any inquiries, feel free to connect with me on LinkedIn.

Key Considerations for Optimal Results

  • Be mindful of the LLM model selection, usage, and associated costs as per OpenAI's rate limit guidelines.
  • Understand the capabilities and limitations of Semantic Kernel, and consult its documentation for best practices.

The first video, "Semantic Kernel: AI Orchestration for Intelligent Apps," features insights from Bruno Borges and John Oliver on utilizing Semantic Kernel for effective AI application orchestration.

The second video, "Creating Your First ChatGPT Plugin with Semantic Kernel," featuring Matthew Bolanos, guides you through the process of developing a ChatGPT plugin using Semantic Kernel.

Share the page:

Twitter Facebook Reddit LinkIn

-----------------------

Recent Post:

Uncovering the Truth Behind Non-Human Craft Recovery in England

A former paratrooper reveals a covert operation involving a non-human craft retrieval in the UK, shedding light on military secrecy.

Reclaiming Our Focus: Navigating the Digital Distraction Landscape

Explore strategies to regain focus amidst digital distractions and improve mental well-being.

Mastering Discord for Business: Elevate Your Productivity

Discover how to maximize your productivity using the Orli ToDo bot for Discord in this comprehensive guide.