
अनुसंधान पाइपलाइन जो सत्यापित सफल अनुभवों का निर्माण करती है और उन्हें HTS, LEGSA, और GCTIR चरणों के माध्यम से मॉडल कौशलों को उत्तरोत्तर दूषित करने के लिए संरचना अभिलेखों में व्यवस्थित करती है।
यह रिपॉज़िटरी SkillPoison का कार्यान्वयन प्रदान करती है, जो सत्यापित सफल अनुभवों के निर्माण और उन्हें फॉर्मेशन रिकॉर्ड में व्यवस्थित करने के लिए एक फॉर्मेशन-चरण पाइपलाइन है।
.
├── assets/
│ └── framework.png
├── configs/
│ └── main.yaml
├── core/
│ ├── hts/
│ ├── legsa/
│ ├── gctir/
│ ├── utils/
│ ├── config.py
│ └── pipeline.py
├── prompts/
│ ├── legsa/
│ ├── target_audit.txt
│ ├── counterfactual_generation.txt
│ └── counterfactual_audit.txt
├── scripts/
│ └── run_skillpoison.py
├── .env.example
├── requirements.txt
└── README.md
core/ में HTS, LEGSA, और GCTIR कार्यान्वयन शामिल है; prompts/ में मॉडल-उन्मुख प्रॉम्प्ट टेम्पलेट संग्रहीत हैं; configs/ में प्रयोग सेटिंग्स संग्रहीत हैं; और scripts/run_skillpoison.py मुख्य निष्पादन प्रवेश बिंदु है।
Python 3.10 या बाद का संस्करण अनुशंसित है।
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
लाइव रन से पहले मॉडल एंडपॉइंट सेट करें:
export MODEL_API_KEY="your-api-key"
export MODEL_BASE_URL="https://your-endpoint/v1"
export MODEL_NAME="your-model-name"
एक एनवायरनमेंट-वेरिएबल टेम्पलेट .env.example में प्रदान किया गया है।
मुख्य कॉन्फ़िगरेशन फ़ाइल है:
configs/main.yaml
यह आउटपुट डायरेक्टरी, मॉडल सेटिंग्स, लक्ष्य व्यवहार, एम्बेडिंग मॉडल, HTS थ्रेशोल्ड, LEGSA प्रॉम्प्ट डायरेक्टरी, और GCTIR फॉर्मेशन सेटिंग्स निर्दिष्ट करती है।
पाइपलाइन JSON या JSONL इनपुट स्वीकार करती है। JSON के लिए, एक experiences सूची का उपयोग करें:
{
"experiences": [
{
"id": "example_001",
"category": "category_name",
"task_text": "task input",
"solution": "externally verified solution",
"trajectory": {
"task_input": "task input",
"model_output": "recorded successful output"
},
"requirement_checks": [true],
"verified_success": true,
"output_format": "text"
}
]
}
प्रत्येक उम्मीदवार में एक अद्वितीय id, कार्य/श्रेणी जानकारी, एक रिकॉर्ड किया गया सफल ट्रैजेक्टरी, सत्यापन परिणाम, और एक आउटपुट प्रारूप (text, json, या python) होना चाहिए।
python scripts/run_skillpoison.py \
--config configs/main.yaml \
--input /path/to/candidate_experiences.json \
--out outputs/run
पाइपलाइन निष्पादित करती है:
Candidate Experiences
↓
HTS
↓
LEGSA
↓
GCTIR
↓
Formation Records
--out configs/main.yaml में निर्दिष्ट आउटपुट डायरेक्टरी को ओवरराइड करता है।
एक मानक रन लिखता है:
outputs/run/
├── selection_audit.json
├── formation_records.json
└── run_summary.json
selection_audit.json: उम्मीदवार चयन और सत्यापन परिणाम।formation_records.json: अंतिम फॉर्मेशन रिकॉर्ड।run_summary.json: रन आंकड़े, कॉन्फ़िगरेशन, और उपयोग सारांश।रिकॉर्ड किए गए इंटरमीडिएट आर्टिफैक्ट्स से नियतात्मक पुनः-निष्पादन के लिए:
python scripts/run_skillpoison.py \
--config configs/main.yaml \
--input /path/to/replay_input.json \
--out outputs/replay \
--replay
रीप्ले इनपुट में पाइपलाइन द्वारा आवश्यक रिकॉर्ड किए गए आर्टिफैक्ट्स पहले से होने चाहिए।