According to the current version of its call-screening help page, Google stores callers' spoken names the first time they leave them, and then reuses those names when a call arrives later from the same number.
But that assumes it is the always same person calling from a given number. That is not a safe assumption by any means, and in effect, it disables the call-screening function because you can't rely on it.
If many different people call from a single phone number — from an organization, say, or a shared phone — you have no way of screening by caller, only by number. That's not really call-screening — it's essentially just the same thing as caller ID. Call-screening is when I decide whether I want to take the call depending on who is actually calling, not what number they're using.