Downloads · 30 days
12
6% of all-time downloads
summerMC/Qwen3.5-hack-down
Qwen3.5-hack-down is a machine learning model from summerMC. Use it for the machine learning task on the model card, and read the license before you ship it in a product. The card lists the license as apache-2.0.
summerMC/Qwen3.5-hack-down は、認可されたローカル CTF / セキュリティ演習環境での解析支援を目的としたモデルです。
Downloads · 30 days
12
6% of all-time downloads
All-time downloads
207
Public
Parameters
4.2B
8.4 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors8.4 GB · 100%
From the Hugging Face model README
summerMC/Qwen3.5-hack-down は、認可されたローカル CTF / セキュリティ演習環境での解析支援を目的としたモデルです。
実運用システム、第三者環境、許可のない対象への攻撃支援を目的とした利用は想定していません。
このモデルは、CTF 問題、ローカルラボ、検証用の脆弱性解析、ログ解析、コードレビュー、ペイロードの理解補助などを支援するためのアシスタントモデルです。
主な用途は次のとおりです。
適切な利用例:
不適切な利用例:
You are a CTF assistant for authorized local lab challenges only.
Return structured, practical, concise JSON.
Do not invent flags.
モデルには、以下のような出力形式を推奨します。
{
"summary": "問題の要約",
"category": "web / crypto / pwn / reversing / forensics / misc / unknown",
"observations": [
"確認できた事実"
],
"next_steps": [
"次に試すべき安全な手順"
],
"commands": [
{
"purpose": "ローカル検証で使う目的",
"command": "example command"
}
],
"flag": null,
"confidence": "low / medium / high"
}
flag は、ユーザーが明示的に提供した場合、またはローカル解析結果から確実に導出できた場合のみ記載してください。推測でフラグを生成しないでください。
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
model_id = "summerMC/Qwen3.5-hack-down"
tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
trust_remote_code=True,
)
messages = [
{
"role": "system",
"content": (
"You are a CTF assistant for authorized local lab challenges only. "
"Return structured, practical, concise JSON. Do not invent flags."
),
},
{
"role": "user",
"content": "このCTF問題の方針を整理してください: ...",
},
]
prompt = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
)
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
with torch.no_grad():
outputs = model.generate(
**inputs,
max_new_tokens=700,
do_sample=True,
temperature=0.3,
top_p=0.85,
repetition_penalty=1.08,
pad_token_id=tokenizer.pad_token_id,
eos_token_id=tokenizer.eos_token_id,
)
generated = outputs[0][inputs["input_ids"].shape[-1]:]
print(tokenizer.decode(generated, skip_special_tokens=True))
from threading import Thread
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM, TextIteratorStreamer
model_id = "summerMC/Qwen3.5-hack-down"
tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
trust_remote_code=True,
)
def generate_stream(user_prompt, max_new_tokens=700):
messages = [
{
"role": "system",
"content": (
"You are a CTF assistant for authorized local lab challenges only. "
"Return structured, practical, concise JSON. Do not invent flags."
),
},
{
"role": "user",
"content": user_prompt,
},
]
prompt = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
)
inputs = tokenizer(
prompt,
return_tensors="pt",
truncation=True,
max_length=2048,
).to(model.device)
streamer = TextIteratorStreamer(
tokenizer,
skip_prompt=True,
skip_special_tokens=True,
)
generation_kwargs = dict(
**inputs,
streamer=streamer,
max_new_tokens=max_new_tokens,
do_sample=True,
temperature=0.3,
top_p=0.85,
repetition_penalty=1.08,
pad_token_id=tokenizer.pad_token_id,
eos_token_id=tokenizer.eos_token_id,
)
thread = Thread(target=model.generate, kwargs=generation_kwargs)
thread.start()
for chunk in streamer:
yield chunk
thread.join()
for chunk in generate_stream("このCTF問題を解析してください: ..."):
print(chunk, end="", flush=True)
| Parameter | Value |
|---|---|
max_new_tokens | 700 |
temperature | 0.3 |
top_p | 0.85 |
repetition_penalty | 1.08 |
do_sample | True |
CTF の方針整理では、低めの temperature を推奨します。出力の多様性よりも、再現性と簡潔さを優先します。
現時点で公開できる定量評価はありません。
| Benchmark | Score |
|---|---|
| CTF benchmark | 未測定 |
| Web security tasks | 未測定 |
| Reversing tasks | 未測定 |
| Forensics tasks | 未測定 |
ライセンス情報は、モデルリポジトリ側の設定を確認してください。
この README ではライセンスを断定しません。Hugging Face の license メタデータまたはリポジトリ内の LICENSE ファイルを優先してください。
このモデルの出力は学習・検証目的の補助情報です。出力内容の正確性、安全性、適法性は利用者が確認してください。
本モデルは、認可された CTF、ローカルラボ、防御的検証、教育目的での利用を前提としています。