Please understand that a work around is just that and what some people consider a good compromise others think the opposite. I've posted this one before and some of the Guru's here, whom I have high respect for, tend to not like the idea - but it works for me.
The main problem is that Lightroom treats spaces as delimeters in Filters and Smart Collections. So, a keyword of John Smith is no different than two keywords, one for John and one for Smith. In other words if you searh for CONTAINS "John Smith" youget images that have a either a keword with "John" OR a keword with "Smith" (including "Johnson" and "Smithy". If you search for CONTAINS ALL "Jonn Smith" not only get images that have both a "John" keyword and a "Smith" keyword (including Johnson and Smithy". Using CONTAINS WORDS, is not always what you think but sometimes will help witht he "Johnson" and "Smithy" problem. A little known behaviour of LrC in keyword searching is that it does not look at synonyms if searching specifically for Keywords and that is what I exploit
My work around for this is as follows. when I create a keyword, say for "John Smith", I set the keyword to "John-Smith" (note hyphen). You can use other charachters like an underscore or asterisk instead of the hyphen if you like. Then I add a synonum of "John Smith" (no hypen) and set "Export this keyword" to no and Export Synonym to Yes. By doing this if I want just the "John Smith" I ask for "John-Smith" (with hyphen). This will return John-Smith but could also return "John-Smithson" but it would not return all the Johns nor all the Smiths. However it I export an image with this KW, the tag on the image is "John Smith" (i.e. the synonym). It is perfect? No. Does it help a lot? Yes. BTW it also helps quite a bit withthe keyword list filter. Type in "John" and you get all the John's including Johnson. Type in "John-" and you get all the John's but not Johnson but you might get "babyjohn-smith". type in "John-smith" and you just get John-Smith (but could also get John-Smithson".
Another problem is that sometimes you have a KW, that is for reference or documentaiton purposes or to simplify your keyword hierarchy that you really don't want to be looked at when using filters or smart collecitons. For example, I have a "Location" hieraricy where i've included a level between "United-States" and the list of each state. For example "Mountain-states". But, in my "Sub ject" KW hierarchy I have a keyword called "Mountain". When I search for "Mountain" I really don't want every image taken in a mountain state to also be included. In other words I want my searches to ignor "mountain-states" automatically. Another Example is that I have a keyword for images of me "Dan-Hartford", but I also have a Keword showing that I took the photo "Dan-Hartford-Photo" (Synonym: "Copyright Dan Hartford Photo"). But when I filter or search for "Dan-Hartford" I don't want it to return every image I took by also looking at "Dan-Hartford-Photo". Anyway, the idea is to imunize against certain keywords from being found by filters and smart collections. To do this I again batardize the keyword name. In this case I use an asterisk between the first and 2nd letter of words in the keyword. So it's now "M*ountain-S*tates" and "D*an-H*artford-P*hoto". I then use the correct spelling with spaces as the synonym if I have the keyword marked to export (e.g. "Copyright Dan Hartford Photo). Of coure if I actually want a filter or smart collecton to find these I just include the spelling with the "*".
A third issue that many folks have with keywords are keywords for people. Some of this problem is aleviated by my first suggestion but the added complexity with people is mix and match. For example, I want all the images of Fred but only if his ex-wilf Jane is not in the image. Or, I want images that have both Fred and Mary but no one else. Or, image must have Fred and Mary but no identified persons (some background strangers are OK). Now it is entirely possible to build a smart collection for each permutation that has or may come up but as your number of people grows the possible combinations of people grows exponentially. And, crafting a new Smart Collection each time you want a different set of folks is quite time consuming. Anyway I wrote a blog on this that you can find here: https://www.danhartfordphoto.com/blog/2021/12/lr013-keywords-for-people
You can also read my blog on keywords in general here: https://www.danhartfordphoto.com/blog/2016/12/lr003-get-the-most-out-of-lr-keywords