Skip to content

Commit

Permalink
Solved Issue 25: Update Semantic Kernel documentation (#49)
Browse files Browse the repository at this point in the history
* Initial documents update.
* Properly reorder pages to match current deployment.
* Improved content.
* Added description for the available plugins.
* Added missing tags to `Financial Product Comparer Plugin`
  • Loading branch information
rliberoff authored May 28, 2024
1 parent 2f54549 commit 980edd4
Show file tree
Hide file tree
Showing 13 changed files with 75 additions and 22 deletions.
2 changes: 1 addition & 1 deletion docs/content/en/docs/Concepts/_index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Concepts
weight: 4
weight: 5
description: >
Understand the core components of the solution: Azure Open AI, Azure Cognitive Search, Content Safety and more.
---
2 changes: 1 addition & 1 deletion docs/content/en/docs/Concepts/azure-cognitive-search.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ description: >
Used to build a rich search experience over private, heterogeneous content in web, mobile, and enterprise applications.
categories: [Azure]
tags: [docs, cognitive-search]
weight: 2
weight: 4
---

Azure Cognitive Search (formerly known as "Azure Search") is a cloud search service that gives developers infrastructure, APIs, and tools for building a rich search experience over private, heterogeneous content in web, mobile, and enterprise applications.
Expand Down
2 changes: 1 addition & 1 deletion docs/content/en/docs/Concepts/azure-container-apps.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ description: >
Host the application in Azure Container Apps.
categories: [Azure]
tags: [docs, container-apps, serverless]
weight: 4
weight: 5
---

Azure Container Apps is a managed serverless container service that enables executing code in containers without the overhead of managing virtual machines, orchestrators, or adopting a highly opinionated application framework.
Expand Down
2 changes: 1 addition & 1 deletion docs/content/en/docs/Concepts/azure-content-safety.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ description: >
Used to keep your content safe. Create better online experiences for everyone with powerful AI models that detect offensive or inappropriate content in text and images quickly and efficiently.
categories: [Azure]
tags: [docs, content-safety, azure, ai, content, safety]
weight: 2
weight: 3
---

Azure AI Content Safety detects harmful user-generated and AI-generated content in applications and services. Azure AI Content Safety includes text and image APIs that allow you to detect material that is harmful. We also have an interactive Content Safety Studio that allows you to view, explore and try out sample code for detecting harmful content across different modalities.
Expand Down
2 changes: 1 addition & 1 deletion docs/content/en/docs/Concepts/azure-openai.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ description: >
The core of the Generative AI solution.
categories: [Azure]
tags: [docs, openai]
weight: 1
weight: 2
---

Azure OpenAI Service provides REST API access to OpenAI's powerful language models including the GPT-4, GPT-35-Turbo, and Embeddings model series. In addition, the new GPT-4 and gpt-35-turbo model series have now reached general availability. These models can be easily adapted to your specific task including but not limited to content generation, summarization, semantic search, and natural language to code translation. Users can access the service through REST APIs, Python SDK, or our web-based interface in the Azure OpenAI Studio.
Expand Down
14 changes: 11 additions & 3 deletions docs/content/en/docs/Concepts/semantic-kernel.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ description: >
An open-source SDK that lets you easily combine AI services like OpenAI, Azure OpenAI, and Hugging Face with conventional programming languages like C# and Python.
categories: [SDK]
tags: [docs, tools]
weight: 3
weight: 8
---

Semantic Kernel is an open-source SDK that lets you easily combine AI services like OpenAI, Azure OpenAI, and Hugging Face with conventional programming languages like C# and Python. By doing so, you can create AI apps that combine the best of both worlds.
Expand All @@ -18,6 +18,14 @@ To help developers build their own Copilot experiences on top of AI plugins, we

![Image of Semantic Kernel](https://learn.microsoft.com/en-us/semantic-kernel/media/mind-and-body-of-semantic-kernel.png)

**AI Hub** uses Semantic Kernel to orchestrate the prompts, Azure OpenAI calls and Azure Cognitive Search queries and results.
## Semantic Kernel and the AI Hub

Learn more at the official documentation of [Semantic Kernel](https://learn.microsoft.com/en-us/semantic-kernel/overview/)
At present, the **AI Hub** does not use the Semantic Kernel directly in its use case examples. However, it does demonstrate its usage through two specific examples that show how easely is to create OpenAI plugins using Semantic Kernel as an SDK.

Here are the available plugin examples:

1. **Call Analysis**: This plugin uses Semantic Kernel to implement features similar to those demonstrated in the [Call Center Analytics]({{< ref "/docs/Use Cases/call-center-analytics.md" >}}) use case.

2. **Financial Product Comparison**: This plugin employs Semantic Kernel to combine native and prompt functions to compare a specific financial product with others in the market. It combines prompts with the [Web Search Engine Plugin](https://learn.microsoft.com/en-us/dotnet/api/microsoft.semantickernel.plugins.web.websearchengineplugin), which is further integrated with the [Bing Search connector](https://learn.microsoft.com/en-us/dotnet/api/microsoft.semantickernel.plugins.web.bing.bingconnector).

For more information, please refer to the [OpenAI Plugins]({{< relref "/docs/OpenAI Plugins" >}}) section. You can also learn more about Semantic Kernel in its [official documentation](https://learn.microsoft.com/en-us/semantic-kernel/overview/).
2 changes: 1 addition & 1 deletion docs/content/en/docs/Contribution guidelines/_index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Contribution Guidelines
weight: 6
weight: 7
description: How to contribute to the project
---

Expand Down
2 changes: 1 addition & 1 deletion docs/content/en/docs/Deployment/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Deployment
description: AI Hub &mdash; Steps to deploy the complete solution.
weight: 3
weight: 4
---

## High-level Architecture
Expand Down
15 changes: 15 additions & 0 deletions docs/content/en/docs/OpenAI Plugins/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
title: OpenAI Plugins
description: AI Hub &mdash; OpenAI plugins examples.
weight: 3
---

OpenAI Plugins are powerful tools that connect systems (like ChatGPT) to third-party applications. Think of a plugin like a new skill you teach to your phone or computer. It’s a mini-program that lets your software do something new, like asking a chatbot questions. These plugins enable AI applications powered by LLMs to interact with APIs defined by developers, enhancing their capabilities and allowing it to perform a wide range of actions beyond the training of the inherent AI model.

On the other hand, Microsoft’s Semantic Kernel is an open-source SDK that lets you easily build AI-related projects, especially OpenAI plugins. It provides the following features:

1. **Interoperability**: Semantic Kernel has adopted the OpenAI plugin specification as the standard for plugins. This creates an ecosystem of interoperable plugins that can be used across all major AI apps and services like ChatGPT, Bing, and Microsoft 365. Any plugins you build with Semantic Kernel can be exported, so they are usable in these platforms.

2. **Importing Plugins**: Semantic Kernel makes it easy to import plugins defined with an OpenAI specification. Your code can use Semantic Kernel to leverage these plugins into your application.

3. **Native and Prompts Functions**: In any plugin, you can create two types of functions: prompts and native functions. With native functions, you can use C# or Python code to directly build features to manipulate data or perform other operations beyond the capabilities of an LLM; and with prompts, you can create reusable semantic instructions for a wide variaety of LLMs, not just OpenAI, with templates to handle variables, conditionals and loops.
23 changes: 23 additions & 0 deletions docs/content/en/docs/OpenAI Plugins/plugin-call-transcript.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
title: Call Transcript Plugin
description: AI plugin that analyzes a call given the transcript
weight: 2
categories: [Semantic Kernel, OpenAI]
tags: [openai, plugins, semantic-kernel]
---

Use this plugin to analyze a call using the provided transcript. It offers functionality that is quite similar to the use case example of [Call Center Analytics]({{< ref "/docs/Use Cases/call-center-analytics.md" >}}).

To test this plugin, send a `POST` request to its REST API at `/plugins/transcript` with the following request body:

- `transcript`: the text with the call transcript.

Upon successful execution, OpenAI will return a response with the following information extracted and formatted as bullet points:

- Reason for the call
- Name of the agent
- Name of the caller
- Caller's sentiment
- A summary of the call

Please note that the information provided may vary depending on the content of the supplied call transcript.
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
title: Financial Product Comparer Plugin
description: AI plugin that compares a financial product with what is available on the market.
weight: 3
categories: [Semantic Kernel, OpenAI]
tags: [openai, plugins, semantic-kernel]
---

Use this plugin to compare a given financial product with others available in the market by retrieving information via Bing.

To test this plugin, send a `POST` request to its REST API at `/plugins/compare` with the following request body:

- `product`: the name of the financial product to compare
- `queryPrompt`: the query used to retrive comparable products from Bing

Upon successful execution, OpenAI will return a response in natural language with the comparison description of the provided product with the information found on Bing using the also provided query.

Upon successful execution, OpenAI will return a response in natural language, providing a detailed comparison of the specified product with the information retrieved from Bing using the provided query.
2 changes: 1 addition & 1 deletion docs/content/en/docs/Reference/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Resources & References
description: Check out other resources and references
weight: 5
weight: 6
---

## Sample Repos:
Expand Down
11 changes: 0 additions & 11 deletions docs/content/en/docs/Use Cases/pbi-data-report.md

This file was deleted.

0 comments on commit 980edd4

Please sign in to comment.