Да. Это называется база данных. Поскольку у вас работает словарь (помимо проблем с памятью), я бы предположил, что база данных sqlite будет работать для вас нормально. Вы можете использовать sqlite3 довольно легко, и это очень хорошо задокументировано.
Конечно, это будет хорошим решением, только если вы можете представлять значения как что-то вроде json или готовы доверять маринованным данным из локального файла. Может быть, вы должны опубликовать подробности о том, что у вас есть в значениях словаря. (Я предполагаю, что ключи - это слова, если нет, поправьте меня)
Возможно, вы захотите не генерировать весь словарь, а обрабатывать его только порциями. Это может быть непрактичным в вашем конкретном случае использования (к сожалению, словари часто используются не для того, для чего используются словари), но если вы можете придумать какой-то способ, может быть, стоит перепроектировать свой алгоритм, чтобы позволить это.