<｜begin▁of▁sentence｜>### Instruction:
Given a weighted graph with edges (0, 1) having weight 3, (1, 2) having weight 7, (0, 2) having weight 1, (1, 3) having weight 4, and (2, 3) having weight 2, how can we use multi_source_dijkstra_path_length API to find the shortest path lengths from source nodes {0, 3} to all other reachable nodes?
### Response:
import networkx as nx

# Create a weighted graph
G = nx.Graph()
G.add_weighted_edges_from([(0, 1, 3), (1, 2, 7), (0, 2, 1), (1, 3, 4), (2, 3, 2)])

# Define source nodes
sources = {0, 3}

# Compute shortest path lengths from sources
lengths = nx.multi_source_dijkstra_path_length(G, sources)

# Print shortest path lengths from sources
for target in G.nodes():
    print(f'Shortest path length from sources to node {target}: {lengths[target]}')
<|EOT|>
