Jason Haley

Ramblings from an Independent Consultant

Azure SQL, Entity Framework, Semantic Kernel Hands-on-Lab

Announcing: Build a RAG App using Semantic Kernel, Entity Framework and Azure SQL DB Hands-on-Lab A couple of weeks ago after Azure SQL DB announced their public preview of native vector support, I put a hands on lab together to help people get started with the new feature and EF Core extension. Bill Wilder and I did mentioned it in our presentations on December 12 and December 15, but I haven’t had a chance to announce it for those of you who missed our presentations.

Boston Code Camp 37 Session

Yesterday was Boston Code Camp 37. I spent the majority of the day talking with people in the community I haven’t seen for awhile, as well as some new people I hadn’t met before. I only made it to one session (Juan Pablo Garcia Gonzalez - Agentic AI: Unlocking the Power of Multi-Agent Systems), which was good and got me thinking about how to rewrite my demos in my talk to use agents.

eShopSupport Series: Customer Web UI Project

This is the sixth part of the eShopSupport Series which covers the details of the eShopSupport GitHub repository. CustomerWebUI Project The CustomerWebUI project is a Blazor application used to capture support ticket information from customers. It is one of the two user interface projects in the solution that highlight how to adding some AI functionality into business applications can be useful. The project is located under the src folder: In this entry I’ll cover the functionality the web application provides, a few things I found interesting and some thoughts on improvements.

eShopSupport Series: Python Inference Project

This is the fifth part of the eShopSupport Series which covers the details of the eShopSupport GitHub repository. PythonInference Project The PythonInference Project is a python project that provides a web API to classify the case type when a new customer support ticket is entered in the system. It does this by passing the user’s comment to the API, which uses a local model from Hugging Face (cross-encoder/nli-MiniLM2-L6-H768) to classify the text.

eShopSupport Series: Aspire Projects (AppHost and ServiceDefaults)

This is the fourth part of the eShopSupport Series which covers the details of the eShopSupport GitHub repository. The Aspire Projects (AppHost and ServiceDefaults) Unlike the other blog entries in this eShopSupport Series, this one is going to cover two projects in the solution: AppHost and ServiceDefaults - both are important for the Aspire local development experience. These projects are located under the src folder: In this entry I’ll cover the details of how the AppHost and ServiceDefaults projects are used in the local development environment, a few things I found interesting and some thoughts on improvements.

eShopSupport Series: Evaluator Project

This is the third part of the eShopSupport Series which covers the details of the eShopSupport GitHub repository. Evaluator Project The Evaluator project is a console application used to evaluate the chat portion of the application provided by the AssistantApi in the Backend project. The Evaluator application uses the questions in the evalquestions.json file to test the assistant API and scores the results it returns against the answers in that JSON file.

eShopSupport Series: DataIngestor Project

This is the second part of the eShopSupport Series which covers the details of the eShopSupport GitHub repository. DataIngestor Project The DataIngestor is a console application that will process the data files created by the DataGenerator - it does not ingest the data into any of the databases. I mentioned in the last entry about the DataGenerator that you didn’t need to use the DataGenerator because there are two sets of generated files provided in the github repo: dev and test.

eShopSupport Series: DataGenerator Project

This is the first part of my eShopSupport Series which looks into the details of the eShopSupport GitHub repository. DataGenerator Project The DataGenerator is a console application that will generate multiple types of seed data files for loading into the application or to use when evaluating the question answering functionality. However, you don’t have to use the DataGenerator - there are two sets of generated files provided in the github repo: dev and test.

eShopSupport Series

Announcing: The eShopSupport Series In case you missed this week’s .NET Conf Focus on AI you can find all the videos on the dotnet YouTube channel. The one I want to point out here is: Better Together: .NET Aspire and Semantic Kernel with Steve Sanderson and Matthew Bolanos. Steve’s portion of the talk is a distilled version of his NDC talk earlier this year: How to add genuinely useful AI to your webapp (not just chatbots) where he introduced the eShopSupport project.

Study Notes: Graph RAG - Property Graph RAG (The Projects)

Last week I wrote about the notebook I created when I was working out the flow of the property graph RAG implementation. In this entry I will go through the two projects I created to provide some reusable code as well as allow for better experimentation: Related posts: Study Notes: Graph RAG - Property Graph RAG Study Notes: Graph RAG - Property Graph RAG (The Notebook) NOTE: In order to get the most out of this blog post, you should first read the related two posts.