SSMS Copilot is Messing With Your AI Prompts.

AI
1 Comment

You might notice that the advice you get from Copilot in SSMS isn’t very good, but it isn’t necessarily AI in general. Part of the problem is something specific about SSMS Copilot and the way it prompts LLMs, and I wish I could tell you exactly what it is, but I can’t because I don’t have access to how SSMS is changing your prompts.

Let’s take a task I need to do all the time, and I constantly forget the syntax to do it. How do I turn on last actual plans?

SSMS Copilot's answer

That answer is wrong. Period. Flat out incorrect. I’m not even ON 2022, I’m on 2025.

At first I thought, “Maybe Claude Sonnet 4.6 has the wrong answer – I’ll try asking Claude directly in Claude’s chat.” And Claude gets it right:

Claude Sonnet 4.6's answer

That’s correct, and that’s bad, because it means that something about SSMS Copilot’s prompting is biasing it towards incorrect answers. Perhaps it’s including too much background information and losing relevant context, or pushing the LLM towards a certain kind of answer (like “encourage the user to adopt new features”).

In my experience, Gemini 3.1 Pro has been less vulnerable to Copilot’s prompt corruption. In this example, it gets the answer correct:

Gemini 3.1 Pro's answer

But that’s misleading, because the answer isn’t to use Gemini 3.1 Pro because it’s somehow “better”. It’s not – Claude Sonnet 4.6 had the right answer when I asked the same question directly, but something about Copilot’s prompting mislead Claude. The real answer is for Microsoft to fix the SSMS Copilot prompting so that all models – including cheaper/faster ones – get better, more accurate answers. I just don’t know how to do that since we don’t get visibility into the prompt that Microsoft is sending along with our question.

This kind of thing happens to me all the time, and I try reporting it to Microsoft, but SSMS Copilot’s thumbs-down icon has a weird set of choices:

Complaint options

Claude’s response was just flat out wrong – not incorrect for this version, incorrect for ANY version, and it’s bad because Claude itself gets it right – only Copilot is getting it wrong.

Between SSMS messing with my prompts, and Copilot switching to usage-based pricing, I just don’t see a reason to use SSMS Copilot directly right now. You’re so much better off using T-SQL to build a robust prompt, like we do with the @AI parameter in sp_BlitzCache and sp_BlitzIndex, and then sending that prompt to the LLM of your choosing. You get a better prompt, access to better models for processing, and it doesn’t cost you any more.

I’m not giving up on Copilot yet. I keep trying it first, every time there’s a new version of SSMS, because I’m eternally hopeful that it’s going to get better.

Previous Post
Your Database Just Hit One Terabyte: Now What?

1 Comment. Leave new

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.