pip install -r requirements.txt
See run.py:
# HeteroData dataset:
dataset = OPFDataset("data/", case_name="pglib_opf_case14_ieee", split="test")
response = model.generate_response([
{"role": "system", "content": "Describe the graphs provided by the user."},
{"role": "user", "content": "What are the active and reactive power values for this graph?"},
], graph_inputs=[dataset[0]])
from torch_geometric.datasets import OPFDataset
from src.graph.graph_vae import AutoEncoder
from torch_geometric.loader import DataLoader
# loading
dataset = OPFDataset("data/", case_name="pglib_opf_case14_ieee", split="test")
data_loader = DataLoader(dataset, batch_size=8, shuffle=False)
graph_autoencoder = AutoEncoder.from_dataset(dataset)
graph_autoencoder.load_state_dict("checkpoints/autoencoder.pth")
graph_autoencoder.to("cuda").eval()
# inference
with torch.no_grad():
for batch in data_loader:
batch = batch.to("cuda")
x_recon, _ = graph_autoencoder(batch.x_dict, batch.edge_index_dict)
loss = 0
for node_type in node_types:
loss += F.mse_loss(x_recon[node_type], batch.x_dict[node_type])
print("batch loss:", loss.item())
readme todo
Python
59.6%
Jupyter Notebook
40.4%
pip install -r requirements.txt
See run.py:
# HeteroData dataset:
dataset = OPFDataset("data/", case_name="pglib_opf_case14_ieee", split="test")
response = model.generate_response([
{"role": "system", "content": "Describe the graphs provided by the user."},
{"role": "user", "content": "What are the active and reactive power values for this graph?"},
], graph_inputs=[dataset[0]])
from torch_geometric.datasets import OPFDataset
from src.graph.graph_vae import AutoEncoder
from torch_geometric.loader import DataLoader
# loading
dataset = OPFDataset("data/", case_name="pglib_opf_case14_ieee", split="test")
data_loader = DataLoader(dataset, batch_size=8, shuffle=False)
graph_autoencoder = AutoEncoder.from_dataset(dataset)
graph_autoencoder.load_state_dict("checkpoints/autoencoder.pth")
graph_autoencoder.to("cuda").eval()
# inference
with torch.no_grad():
for batch in data_loader:
batch = batch.to("cuda")
x_recon, _ = graph_autoencoder(batch.x_dict, batch.edge_index_dict)
loss = 0
for node_type in node_types:
loss += F.mse_loss(x_recon[node_type], batch.x_dict[node_type])
print("batch loss:", loss.item())
readme todo
Python
59.6%
Jupyter Notebook
40.4%