Skip to content

Latest commit

 

History

History
49 lines (31 loc) · 2.57 KB

File metadata and controls

49 lines (31 loc) · 2.57 KB

Semantic Kernel Service API (For Learning Samples)

Watch the Service API Quick Start Video.

This service API is written in C# against Azure Function Runtime v4 and exposes some Semantic Kernel APIs that you can call via HTTP POST requests for the learning samples.

azure-function-diagram

!IMPORTANT

This service API is for educational purposes only and should not be used in any production use case. It is intended to highlight concepts of Semantic Kernel and not any architectural security design practices to be used.

Prerequisites

Azure Functions Core Tools installation is required for this service API to run locally.

Running the service API locally

Run func start --csharp from the command line. This will run the service API locally at http://localhost:7071.

Two endpoints will be exposed by the service API:

  • InvokeFunction: [POST] http://localhost:7071/api/skills/{skillName}/invoke/{functionName}
  • Ping: [GET] http://localhost:7071/api/ping

Working with Secrets

We need keys to work with various aspects of the project including accessing openAI models. This opens up the possibility of exposing keys in commits. There are a couple of options to safeguard developers from exposing keys. Outside of using the dotnet's users-secrets and environment variables, we've also added *.development.config to the .gitignore if developers want to use config files for secret storage.

Next steps

Now that your service API is running locally, let's try it out in a sample app so you can learn core Semantic Kernel concepts!
The service API will need to be run or running for each sample app you want to try.

Sample app learning examples:

  • Simple chat summary (Recommended) – learn how basic semantic functions can be added to an app
  • Book creator – learn how Planner and chaining of semantic functions can be used in your app
  • Authentication and APIs – learn how to connect to external API's with authentication while using Semantic Kernel
  • GitHub Repo Q&A – learn how Memories and Embeddings can be used in your app