Хотя вы, возможно, захотите избежать простых хеш-функций (например, любой недоделанной идеи, которую вы могли бы быстро придумать), потому что они могут не перепутать данные предложения в достаточной степени, чтобы избежать коллизий, во-первых, одной из стандартныхкриптографические хеш-функции, вероятно, вполне подойдут, например, MD5, SHA-1 или SHA-256.
Для этого можно использовать MD5, даже если было обнаружено столкновений и алгоритмсчитается небезопасным для интенсивных целей безопасности.Это не критичное для безопасности приложение, и обнаруженные коллизии возникли из тщательно сконструированных данных и, вероятно, не возникнут случайным образом в ваших собственных данных предложений НЛП.(См., Например, Йоханнес Шинделин объяснение того, почему, вероятно, нет необходимости менять git на использование хэшей SHA-256, чтобы вы могли понять причину этого.)