I'm working on fixing a separate issue but came across this thread. Thought I may be able to shed some light.
I see you added knowledge, then removed it, as it was not responding as wished per instructions (on the home page / general area I assume you mean and not via topics and nodes).
The LLM is Copilot, which is a pretrain model - you have three settings and you can use the AI generative aspect but without knowledge you would need to also have on the web access toggle. Under setting (top right, within the 3 dots, there is also another setting re generative AI switch this on. However, the Agent is not designed to be trained or have memory. It purely reply's from web searching and scrapping. Replies would note at the bottom that they may not be correct...when that AI generative toggle is off it goes and if run solely from knowledge sources.
The agent works, once you have 1+ 365 licences under your tenant, by one giving an increased MB per file to 500mb not 20mb, for knowledge uploads i.e. PDFs etc, and it then allows indexing but again this is with added knowledge. Vastly helps scope of what you can feed into the Agent.
Once knowledge is added, you can use the new orchestration (essentially aiding RAG) to better allow the agent to understand and choose which resource to use - they become tokenized at this stage. Without this on it's far more hit an miss.
The generative AI toggle and ability does not allow you to train the agent - it has no memory in that manner. It technically does not even with knowledge documents or sources live scan them, they become indexed as noted above, pre studied in effect - linked key words, phrases and relationships and so on taking place by the agent in the background (this is as when it's RAG'ed it and tokenized words and phrases etc with similar meaning or overlap, become linked - it becomes a series of numbers representations - we never see this). Then a far better bot response is generated.
Instruction do very little, if you want key instructions set nodes, from scratch placing instruction in a step by step manner breaking the initial convo down and how the Agent responds - design like decision tree to begin (you can use JSON or YMAL code later on for dynamic aspects - this is where I get stuck... the joys). Once working, combine nodes and remove steps, making the interaction of the bot smoother with less steps.
The best manner to get responses is to prompt how, i.e. I want to know or help me with XZ - provide a link, or show me the document it's in or site it is on.... if using knowledge sources (add them back) but turn AI generation off as it confuses your agent.
If you want the agent in Teams, under the copilot settings in Teams where the agent shows as that is the LLM generative side, not the agent, you can set the 'pre text of how to respond rule wise as you noted reply as XYZ, do not use Em dashed etc'.
The above is how I have been working so far - hopefully, helpful but here's to hoping you have already sorted your issue :)