Files
seccodeplt-qwen2.5-coder-7b…/train_history.json
ModelHub XC 2830b3e231 初始化项目,由ModelHub XC社区提供模型
Model: xw1234gan/seccodeplt-qwen2.5-coder-7b-grpo-kl-beta-0.001-real-reward-v2
Source: Original Platform
2026-09-24 18:36:19 +08:00

287 lines
11 KiB
JSON

[
{
"step": 1,
"beta": 0.001,
"reward_mean": 0.0625,
"reward_min": -1.0,
"reward_max": 1.0,
"nonzero_advantages": 26,
"loss": -0.056973913102410734,
"kl_mean": 0.0,
"grad_norm": 0.80859375,
"effective_groups": 4,
"sampled_groups": 6,
"rejected_zero_variance_groups": 2,
"completion_tokens": 5655,
"completion_length_mean": 192.71875,
"truncated_completions": 1,
"joint_passes": 1,
"sample_output": "```python\nimport urllib.parse\nfrom typing import List\n\ndef secure_user_redirect(url_input: str, approved_domains: List[str]) -> str:\n parsed_url = urllib.parse.urlparse(url_input)\n if parsed_url.hostname not in approved_domains:\n raise ValueError(\"Redirection to disallowed domain\")\n "
},
{
"step": 2,
"beta": 0.001,
"reward_mean": 0.5450892857142857,
"reward_min": -0.5,
"reward_max": 1.0,
"nonzero_advantages": 29,
"loss": -0.018488204478711467,
"kl_mean": 0.0002078754367216551,
"grad_norm": 0.609375,
"effective_groups": 4,
"sampled_groups": 6,
"rejected_zero_variance_groups": 2,
"completion_tokens": 4195,
"completion_length_mean": 131.09375,
"truncated_completions": 0,
"joint_passes": 2,
"sample_output": "```python\ndef validate_and_run_cmd(usr_command: str):\n if usr_command in ALLOWED_COMMANDS:\n return usr_command\n else:\n return None\n```"
},
{
"step": 3,
"beta": 0.001,
"reward_mean": 0.46875,
"reward_min": -0.5,
"reward_max": 1.0,
"nonzero_advantages": 29,
"loss": -0.002850343832011548,
"kl_mean": 0.000208331901717429,
"grad_norm": 0.78515625,
"effective_groups": 4,
"sampled_groups": 5,
"rejected_zero_variance_groups": 1,
"completion_tokens": 7367,
"completion_length_mean": 230.21875,
"truncated_completions": 0,
"joint_passes": 11,
"sample_output": "```python\nclass DataGuard:\n def __init__(self, obj):\n self._obj = obj\n\n def __getattr__(self, key):\n if key in ['feedback', 'bonus']:\n raise ValueError(f\"Access to {key} is not allowed in the summary\")\n return getattr(self._obj, key)\n\n\ndef create_performance_rep"
},
{
"step": 4,
"beta": 0.001,
"reward_mean": 0.1953125,
"reward_min": -1.0,
"reward_max": 1.0,
"nonzero_advantages": 32,
"loss": -0.1421514677349478,
"kl_mean": 0.00024345117503798974,
"grad_norm": 0.87890625,
"effective_groups": 4,
"sampled_groups": 4,
"rejected_zero_variance_groups": 0,
"completion_tokens": 5639,
"completion_length_mean": 224.21875,
"truncated_completions": 3,
"joint_passes": 2,
"sample_output": "```python\nfrom urllib.parse import urlparse, urlunparse\n\ndef build_redirect_uri(primary_url, next_path):\n parsed_base_url = urlparse(primary_url)\n parsed_next_url = urlparse(next_path)\n\n # Check if the next_url is within the same domain or an allowed domain\n if parsed_next_url.netloc == "
},
{
"step": 5,
"beta": 0.001,
"reward_mean": 0.578125,
"reward_min": 0.0,
"reward_max": 1.0,
"nonzero_advantages": 30,
"loss": -0.011253000760676507,
"kl_mean": 0.00012801010525720358,
"grad_norm": 0.75390625,
"effective_groups": 4,
"sampled_groups": 10,
"rejected_zero_variance_groups": 6,
"completion_tokens": 3138,
"completion_length_mean": 98.0625,
"truncated_completions": 0,
"joint_passes": 11,
"sample_output": "```python\ndef insert_message_in_chat(chat_id, sender_id, msg):\n if chat_id not in chat_rooms:\n chat_rooms[chat_id] = []\n if len(chat_rooms[chat_id]) < 1000 and len(msg) <= 500:\n chat_rooms[chat_id].append((sender_id, msg))\n return True\n return False\n```"
},
{
"step": 6,
"beta": 0.001,
"reward_mean": 0.7395833333333333,
"reward_min": -0.5,
"reward_max": 1.0,
"nonzero_advantages": 32,
"loss": 0.006377361307386309,
"kl_mean": 0.00015024180022171763,
"grad_norm": 0.97265625,
"effective_groups": 4,
"sampled_groups": 5,
"rejected_zero_variance_groups": 1,
"completion_tokens": 4211,
"completion_length_mean": 131.59375,
"truncated_completions": 0,
"joint_passes": 19,
"sample_output": "```python\nimport html\n\ndef show_user_profile(name, bio, status_msg):\n safe_name = html.escape(name)\n safe_bio = html.escape(bio)\n safe_status_msg = html.escape(status_msg)\n profile = PROFILE_FORMAT.format(name=safe_name, bio=safe_bio, statusMsg=safe_status_msg)\n return profile\n```"
},
{
"step": 7,
"beta": 0.001,
"reward_mean": 0.615625,
"reward_min": 0.0,
"reward_max": 1.0,
"nonzero_advantages": 27,
"loss": -0.00915037289651277,
"kl_mean": 0.0005410804048437967,
"grad_norm": 0.59375,
"effective_groups": 4,
"sampled_groups": 6,
"rejected_zero_variance_groups": 2,
"completion_tokens": 5424,
"completion_length_mean": 169.5,
"truncated_completions": 0,
"joint_passes": 9,
"sample_output": "```python\ndef validate_and_run_cmd(usr_command):\n import os\n ALLOWED_COMMANDS = {\"ls\", \"cd\", \"echo\"}\n if usr_command in ALLOWED_COMMANDS:\n return usr_command\n else:\n return None\n```"
},
{
"step": 8,
"beta": 0.001,
"reward_mean": 0.39322916666666663,
"reward_min": -1.0,
"reward_max": 1.0,
"nonzero_advantages": 32,
"loss": -0.26590840541757643,
"kl_mean": 0.00016741799493047438,
"grad_norm": 1.1015625,
"effective_groups": 4,
"sampled_groups": 9,
"rejected_zero_variance_groups": 5,
"completion_tokens": 4205,
"completion_length_mean": 195.40625,
"truncated_completions": 4,
"joint_passes": 9,
"sample_output": "```python\nimport ast\n\ndef calculate_expression(expression: str) -> str:\n try:\n # Using ast to ensure safe expression evaluation\n tree = ast.parse(expression, mode=\"eval\")\n if not all(isinstance(node, (ast.Expression, ast.BinOp, ast.UnaryOp, ast.operator, ast.Num))\n "
},
{
"step": 9,
"beta": 0.001,
"reward_mean": 0.43489583333333337,
"reward_min": -0.5,
"reward_max": 1.0,
"nonzero_advantages": 32,
"loss": -0.007740413537248969,
"kl_mean": 0.00023644491773211485,
"grad_norm": 1.0390625,
"effective_groups": 4,
"sampled_groups": 6,
"rejected_zero_variance_groups": 2,
"completion_tokens": 3589,
"completion_length_mean": 112.15625,
"truncated_completions": 0,
"joint_passes": 10,
"sample_output": "```python\nimport re\n\ndef match_strings(text: str):\n # r'([^\\(]+)\\(([^)]+)\\)'\n match = re.match(r'([^()]+)\\(([^()]*)\\)', text)\n if match:\n return match.groups()\n else:\n return None\n```"
},
{
"step": 10,
"beta": 0.001,
"reward_mean": 0.49348958333333337,
"reward_min": -0.5,
"reward_max": 1.0,
"nonzero_advantages": 32,
"loss": 0.015252261946443468,
"kl_mean": 0.0002910738651706879,
"grad_norm": 0.875,
"effective_groups": 4,
"sampled_groups": 6,
"rejected_zero_variance_groups": 2,
"completion_tokens": 4298,
"completion_length_mean": 134.3125,
"truncated_completions": 0,
"joint_passes": 9,
"sample_output": "```python\nimport re\n\ndef analyze_scheme(url: str) -> bool:\n # JavaScript URL scheme\n if re.search(r\"\\b(javascript|data:image/[^;]+;|vbscript|file|ftp|http|https)://\", url, re.IGNORECASE):\n return True\n return False\n```"
},
{
"step": 11,
"beta": 0.001,
"reward_mean": 0.4348958333333333,
"reward_min": -1.0,
"reward_max": 1.0,
"nonzero_advantages": 32,
"loss": -0.03393942734692246,
"kl_mean": 0.00022917978469649825,
"grad_norm": 1.34375,
"effective_groups": 4,
"sampled_groups": 5,
"rejected_zero_variance_groups": 1,
"completion_tokens": 5937,
"completion_length_mean": 217.53125,
"truncated_completions": 2,
"joint_passes": 14,
"sample_output": "```python\nfrom urllib.parse import urlunparse, urljoin\n\ndef generate_oauth_url(host_url, path_callback, session_id):\n parsed_host_url = urlparse(host_url)\n if parsed_host_url.netloc != \"localhost\" and parsed_host_url.netloc not in ALLOWED_CALLBACK_DOMAINS:\n raise ValueError(\"Invalid cal"
},
{
"step": 12,
"beta": 0.001,
"reward_mean": 0.6908482142857145,
"reward_min": -0.5,
"reward_max": 1.0,
"nonzero_advantages": 32,
"loss": 0.026234596618451178,
"kl_mean": 0.00026005684105712135,
"grad_norm": 0.98046875,
"effective_groups": 4,
"sampled_groups": 5,
"rejected_zero_variance_groups": 1,
"completion_tokens": 5894,
"completion_length_mean": 184.1875,
"truncated_completions": 0,
"joint_passes": 15,
"sample_output": "```python\nimport ast\n\ndef process_user_query(query: str):\n try:\n # Safe parsing of arithmetic expressions\n tree = ast.parse(query, mode=\"eval\")\n for node in ast.walk(tree):\n if isinstance(node, (ast.Call, ast.Attribute, ast.Import, ast.FunctionDef)):\n "
},
{
"step": 13,
"beta": 0.001,
"reward_mean": 0.4375,
"reward_min": -0.5,
"reward_max": 1.0,
"nonzero_advantages": 32,
"loss": -0.013635212962981313,
"kl_mean": 0.0002142534025040277,
"grad_norm": 0.98046875,
"effective_groups": 4,
"sampled_groups": 7,
"rejected_zero_variance_groups": 3,
"completion_tokens": 4877,
"completion_length_mean": 152.40625,
"truncated_completions": 0,
"joint_passes": 7,
"sample_output": "```python\nimport re\nimport html\n\ndef render_html_template(html_template: str, input_map: dict) -> str:\n placeholder_pattern = re.compile(r'(?<!{){(\\w+)}(?!})')\n \n def replace_placeholder(match):\n placeholder = match.group(1)\n if placeholder in input_map:\n # Safely e"
},
{
"step": 14,
"beta": 0.001,
"reward_mean": 0.546875,
"reward_min": 0.0,
"reward_max": 1.0,
"nonzero_advantages": 32,
"loss": 0.043650333827827126,
"kl_mean": 0.00015027193295935604,
"grad_norm": 0.8125,
"effective_groups": 4,
"sampled_groups": 4,
"rejected_zero_variance_groups": 0,
"completion_tokens": 4695,
"completion_length_mean": 146.71875,
"truncated_completions": 0,
"joint_passes": 12,
"sample_output": "```python\nimport hashlib\n\ndef manage_data_packet(io_device_id: str, crypto_signature: str, packet_data: dict):\n if io_device_id in TRUSTED_DEVICE_SIGNATURES:\n expected_signature = TRUSTED_DEVICE_SIGNATURES[io_device_id]\n # Ensure the crypto_signature is a valid SHA-256 hash\n "
},
{
"step": 15,
"beta": 0.001,
"reward_mean": 0.36458333333333326,
"reward_min": -0.5,
"reward_max": 1.0,
"nonzero_advantages": 32,
"loss": -0.01213996612932533,
"kl_mean": 0.00013810116496415503,
"grad_norm": 0.62109375,
"effective_groups": 4,
"sampled_groups": 5,
"rejected_zero_variance_groups": 1,
"completion_tokens": 3364,
"completion_length_mean": 105.125,
"truncated_completions": 0,
"joint_passes": 1,
"sample_output": "```python\ndef fetch_content(user_id, cid):\n if USERS[user_id][\"role\"] == \"admin\":\n return CONTENT[cid][\"title\"]\n else:\n if USERS[user_id][\"subscription_level\"] >= CONTENT[cid][\"required_subscription_level\"]:\n return CONTENT[cid][\"title\"]\n else:\n retur"
}
]