Views
No views yet
models_best_nbf_released.pth) contains two jointly trained components:all-mpnet-base-v2.1import torch
2import torch.nn as nn
3
4class NeuralStateSpaceModel(nn.Module):
5 def __init__(self, state_dim, input_dim, output_dim, hidden_dim):
6 super().__init__()
7 self.state_transition = nn.Sequential(
8 nn.Linear(state_dim + input_dim, hidden_dim), nn.ReLU(),
9 nn.Linear(hidden_dim, hidden_dim), nn.ReLU(),
10 nn.Linear(hidden_dim, state_dim)
11 )
12 self.observation_model = nn.Sequential(
13 nn.Linear(state_dim + input_dim, hidden_dim), nn.ReLU(),
14 nn.Linear(hidden_dim, hidden_dim), nn.ReLU(),
15 nn.Linear(hidden_dim, output_dim)
16 )
17 def forward(self, x_t_pre, u_t):
18 xu = torch.cat([x_t_pre, u_t], dim=-1)
19 x_t = self.state_transition(xu)
20 y_t = self.observation_model(torch.cat([x_t, u_t], dim=-1))
21 return x_t, y_t
22
23class NeuralBarrierFunction(nn.Module):
24 def __init__(self, state_dim, input_dim, hidden_dim, class_num=5):
25 super().__init__()
26 self.nbf = nn.Sequential(
27 nn.Linear(state_dim + input_dim, hidden_dim), nn.ReLU(),
28 nn.Linear(hidden_dim, hidden_dim), nn.ReLU(),
29 nn.Linear(hidden_dim, class_num)
30 )
31 def forward(self, x, u):
32 return self.nbf(torch.cat([x, u], dim=-1))
33
34# Load checkpoint from HuggingFace Hub
35from huggingface_hub import hf_hub_download
36
37ckpt_path = hf_hub_download(
38 repo_id="hanjianghu/NBF-LLM",
39 filename="models_best_nbf_released.pth"
40)
41ckpt = torch.load(ckpt_path, map_location="cpu")
42
43state_dim, input_dim, output_dim = 768, 768, 768
44hidden_dim_ssm, hidden_dim_nbf = 512, 512
45
46ssm = NeuralStateSpaceModel(state_dim, input_dim, output_dim, hidden_dim_ssm)
47ssm.load_state_dict(ckpt["ssm"])
48
49nbf = NeuralBarrierFunction(state_dim, input_dim, hidden_dim_nbf)
50nbf.load_state_dict(ckpt["nbf"])1@article{hu2025steering,
2 title={Steering Dialogue Dynamics for Robustness against Multi-turn Jailbreaking Attacks},
3 author={Hu, Hanjiang and Robey, Alexander and Liu, Changliu},
4 journal={arXiv preprint arXiv:2503.00187},
5 year={2025}
6}