< View All Blog Posts

Yorkshire Techy Logo

DotNet York - Build Advanced AI Solutions with Semantic Kernel with Bill Ayers

Image


There hasn't been an in-person event of the DotNet York meetup group for a while, but last night was an exception and possibly the start of regular get-togethers. 

The talk was about Building AI solutions with Semantic Kernel by the fantastic Bill Ayers.

I've never seen a talk by Bill before, I believe he talks quite a lot at DotNet Sheffield where he had done this talk a few days earlier. He's super knowledgeable, a Microsoft MVP who works for Microsoft and is responsible for some of the Microsoft AI online certification courses. So he knows his stuff!

The talk started with a short history of the quality of AI, particularly when it comes to speech and image recognition, and then explained the various flavours of AI available to us and the fact that the game changed with the introduction of "transformers" and how this technique works with Large Language Models (LLM's)

The meat on the bones came with various live programming demos showing a makeshift chatbot utilising the Semantic Kernel. The highlight was when he showed you could create various simple classes to use as "plugins" to help the AI provide a better response for things that the AI couldn't or didn't know about. 

The system is amazing and feels strangely simple, it's unlike how I've ever seen a plugin built. For example, barebones Azure OpenAI can't tell you the current time simply because it is trained on content and data from a few years ago. But you can add to the Semantic Kernel by creating something as simple as a "Time Plugin" class and describing it as "Gets the current date and time". And that's all the class does, returns the date and time!

Somehow, and rather magically, when you now ask it what the time is, the OpenAI LLM knows it can't give you what you want from its data and realises it can get it from the class by the description... You don't have to tell it specifically when the class is to be used. 

There were a lot more demonstrations, and I learnt so much.  Of course, you're working with Azure and the processing time is so high it's a relatively expensive set of functions to use. But fun nonetheless and to know these things are possible may help me in future projects. 

Always learning! 


Hey, I really could do with your help! If you find this article interesting, could you please do me a favour by either sharing it on your site or on social media. I would love to hear yours and other peoples' thoughts on this subject. And if this or any other content on the site has helped you and you would like to show your appreciation, then you can always buy me a coffee ☕️ It would make the time I put into this more than worthwhile! Thank you 😃