I had the same issue in the past. When recommendations are being the same for different users, then the issue is that your interactions events are being ignored/not recognised correctly.
AWS Personalize has a fixed recommendations set for users, that haven't interacted with the items dataset yet. You can test it yourself, by trying to get recommendations for non-existing user (generate uuid for example). Recommended items will be the same as for users, that you spotted the issue for.
In our case, what we find out, was that all of the interactions were not correctly recognised by Personalize. If you are using PutEvents
API to save events in realtime, it might fail silently, if you set sessionId
to 'null'
, instead of omitting this parameter. You will get 200 OK response from Personalize API, however event won't be saved.
You can find out more about this in this GitHub issue, which was indeed closed and not resolved: https://github.com/aws/aws-sdk-js/issues/3371
If that's not the case for you, then I would strongly advise to take a closer look into other PutEvents params, since they could be also causing similar behaviour. Try to experiment with minimal PutEvents
API call and be sure that it works (recommendations should be changing immediately for this user). When you are sure, that your API call succeeds, then try adding more stuff from the call, that you are using normally, until it breaks, so you would know, which exactly parameter is causing problems.