Heya 馃憢

I am Azure Data & AI Consultant working on a variety of projects to help customers move to the cloud. On my personal blog, you will find some useful takeaways from recent projects:

Improving Retrieval Augmented Generation (RAG) with Hybrid Semantic Ranking

This post is a follow up to my previous one on Querying SQL Server With Natural Language In Semantic Kernel, if you haven鈥檛 read it yet, go take a look for a brief introduction to Semantic Kernel and the plugin architecture. The majority of Retrieval Augmented Generation (RAG) systems utilise Vector Databases, such as Azure AI Search, to store chunks of documents that can be accessed via Large Language Models (LLMs)....

June 12, 2024 路 9 min 路 1772 words 路 Me

Querying SQL Server With Natural Language In Semantic Kernel

With the recent rise of Retrieval Augmented Generation (RAG) alongside Large Language Models (LLMs), we can build AI-powered systems that can search and summarize indexed documents to enhance the knowledge of chatbots. This works great for unstructured data stored in documents, but what if you want to access information stored in a SQL database and summarize accordingly? By combining existing RAG techniques with natural language to SQL processing, we can create enterprise chatbot systems that can fetch and summarize both unstructured and structured data....

June 6, 2024 路 9 min 路 1735 words 路 Me

Lint Modified Python Files Only In Build Validation

Have you ever needed to run any linting program (such as Flake8) only on specific Python files during build validation checks in Azure DevOps? Perhaps you are adopting a new linting / code validation tool on your extensive project but only want to enforce it for newly modified files? By utilizing Azure DevOps and Git Diff, Flake8 (or any other linting tool!) can be restricted to designated files by following the steps outlined below:...

April 24, 2023 路 3 min 路 580 words 路 Me