Encontrar com eficiência o caminho mais curto em gráficos grandes

Estou procurando uma maneira de, em tempo real, encontrar o caminho mais curto entre os nós em um grande gráfico. Possui centenas de milhares de vértices e milhões de arestas. Sei que essa pergunta já foi feita antes e acho que a resposta é usar uma pesquisa abrangente, mas estou mais interessado em saber qual software você pode usar para implementá-la. Por exemplo, seria totalmente perfeito se já existisse uma biblioteca (com ligações python!) Para executar bfs em gráficos não direcionados.

questionAnswers(7)

yourAnswerToTheQuestion