Imagine seamlessly blending artificial intelligence (AI) with your day-to-day apps. You can do that with Semantic Kernel, a toolkit that simplifies using AI, making it as easy as picking up your morning coffee (OK, and you have already had one coffee).
What is it in plain English?
Other than being a great idea for a band name, Semantic Kernel is a bunch of tools, open-sourced by Microsoft, that simplify incorporating AI into your apps. An app is interactive software designed to help you perform specific tasks on your devices, like scheduling a meeting or ordering food.
The tools in Semantic Kernel include options for creating and managing:
- prompts: instructions that guide the AI
- functions: predefined pieces of code
- memories: data storage for the AI
- connectors: the bridges between different parts of the app
These tools together form a comprehensive pipeline. This pipeline is a sequence of actions your AI will follow to perform a task or automate actions.
What does it work with?
A standout feature of Semantic Kernel is its adaptability. Regardless of your AI provider (e.g., OpenAI, Azure, or Hugging Face), Semantic Kernel can facilitate smooth orchestration, meaning managing and coordinating all the components of AI to work harmoniously together.
The components within the Semantic Kernel toolkit can be used individually or combined for more complex tasks. One of the exciting things you can do is create complex pipelines using various AI models, functions, and memory components. These pipelines can do complex tasks like help you compose an email to your sales team, retrieve project details, generate a response using AI, and even send the email, all within your custom app.
What else can it do?
Semantic Kernel allows developers to add advanced capabilities to their applications, e.g.:
- recursive reasoning problem-solving, where the solution involves solving smaller instances of the same problem
- summarisation creates concise summaries of large volumes of information
- long-term memory remembering information over a long period
- accessing external knowledge stores tapping into external information sources
What on earth is an embedding?
Another part of Semantic Kernel is the use of embeddings. This feature works like a sophisticated language translator, mapping words to specific points in a space representing their meanings and relationships with other words. It’s crucial when the AI needs to understand the emotion behind text (sentiment analysis), categorise documents (document classification), or suggest relevant items (recommendation systems). These embeddings are also used to create something called semantic memory, a function that allows the AI to store and recall information, similar to how we remember facts and experiences.
Can I do anything without a developer?
For me, one of the standout features of Semantic Kernel is its intelligent planning. This works like a skilled detective, piecing together clues to work backwards from a goal that you provide. The planner arranges a series of steps using predefined capabilities or skills. If a necessary skill isn’t present, the planner suggests that the developer create it and can even offer guidance in crafting this new skill.
Is it right for my business?
Could Semantic Kernel be suitable for your business? Before jumping to the answer, please assess the problem(s) you want to solve first. If you’d like to chat about this more, get in touch below.