Russian IT Community Conversational Corpus (2017-2026) · Zero-PII Curation Platform, Multi-turn SFT, DPO, RAG Knowledge Base, Streamlit Studio & RTX 3060 LoRA benchmark
1
stars
107
commits
Python
primary language
Sep 8, 2026
updated
High-throughput data engineering and Zero-PII curation platform for language models
2,816,434 discussions · 2017–2026 history · SFT dialogues · DPO pairs · RAG knowledge base · LoRA on RTX 3060
[!TIP] 🤗 Official Hugging Face Hub Integration:
- 📦 Dataset:
wwewtech/russian-it-community-corpus— 2,816,434 clean messages, 171.5k multi-turn SFT dialogues, and 325.7k RAG knowledge base chunks in Apache Parquet.- 🦁 LoRA Model Zoo:
wwewtech/russian-it-community-lora— 58 adapters on Hugging Face Hub (55 domain adapters + 3 flagship 7B–8B QLoRA; 56 adapters cloned locally inlora_adapters/).from datasets import load_dataset dataset = load_dataset("wwewtech/russian-it-community-corpus", "sft_dialogues", split="train")
RICC (Russian IT Community Corpus) is an open data engineering and curation stack that ingests, cleans, deduplicates, and structures 2,816,434 engineering, infrastructure, business, and software development messages from 11 community nodes spanning 2017–2026.
The platform produces datasets for instruction fine-tuning, direct preference optimization, and vector knowledge retrieval.
| Metric | Property | Factual Value |
|---|---|---|
| Privacy & Anonymization | Multi-pass Regex + Natasha NER + case declension | 11 community nodes anonymized (community_node_01..11) |
| Deduplication | MinHash LSH (128 permutations, 0.80 Jaccard threshold) | 95,300+ duplicate / spam messages removed |
| SFT dialogue quality | Multi-turn dialogues extracted from reconstructed thread DAGs | 171,520 curated dialogues |
| Local LoRA execution | PEFT QLoRA adaptation on consumer hardware | ~4.35 GB VRAM on RTX 3060 (12GB) |
┌──────────────────────────────┐
11 Community Nodes ──► Multi-Source Ingestion │
2,816,434 raw records └──────────────┬───────────────┘
│
┌──────────────▼───────────────┐
│ Deep Case-Aware Zero-PII │ ──► Declension across 6 Russian cases
│ RegEx + Natasha Neural NER │ Tech terminology protection whitelist
└──────────────┬───────────────┘
│
┌──────────────▼───────────────┐
│ Deduplication & Taxonomy │ ──► MinHash LSH with 128 permutations
│ 8 Domain Classifiers │ Exact hash deduplication
└──────────────┬───────────────┘
│
┌──────────────▼───────────────┐
│ Thread DAG Reconstruction │ ──► Reply tree traversal
│ SFT, DPO, RAG Extraction │ Temporal cluster resolution
└──────────────┬───────────────┘
│
┌────────────────────────────┼────────────────────────────┐
▼ ▼ ▼
┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐
│ Apache Parquet │ │ JSONL Datasets │ │ Local LoRA, RAG │
│ zstd compressed │ │ ShareGPT, ChatML│ │ RTX 3060 Runner │
│ full, sft, rag │ │ Alpaca, Qdrant │ │ Streamlit Studio│
└──────────────────┘ └──────────────────┘ └──────────────────┘
| Pipeline Stage | Implementation | Purpose |
|---|---|---|
| Ingestion | src/ingestion/ | Normalizes and chronologically merges multi-chat raw exports (11 sources) |
| Anonymization | src/pii/ | Redacts names across 6 cases, phone numbers, crypto wallets, API tokens, database URLs |
| Deduplication | src/deduplication/ | Filters near-duplicate and exact spam messages via MinHash LSH |
| Taxonomy | src/taxonomy/ | Categorizes content into 8 technical domains and extracts keyword tags |
| Thread DAG | src/graph/ | Reconstructs conversational trees and extracts multi-turn dialogues |
| Multi-Export | src/exporter/ | Serializes outputs into Apache Parquet with zstd compression and JSONL formats |
| Analytics | src/analytics/ | Computes Shannon entropy, temporal patterns, social graphs, and vocabulary stats |
| Local LoRA and RAG | src/lora/, src/rag/ | Provides PEFT training for RTX 3060 and semantic retrieval for 325k chunks |
The corpus and trained adapters are available both remotely on Hugging Face Hub and locally in dataset_output/:
📦 Dataset Hub (Full Corpus, SFT, RAG):
👉 https://huggingface.co/datasets/wwewtech/russian-it-community-corpus
🦁 Model Hub (58 LoRA Adapters on Hub / 56 Local Adapters):
👉 https://huggingface.co/wwewtech/russian-it-community-lora
All datasets are automatically generated and saved in dataset_output/:
| File Path | Format | Volume | Description | Direct Link |
|---|---|---|---|---|
dataset_output/parquet/full_clean_messages.parquet | Parquet (zstd) | 2,816,434 rows (189 MB) | Full cleaned corpus with metadata | HF Mirror |
dataset_output/parquet/sft_dialogues.parquet | Parquet (zstd) | 171,520 dialogues (132 MB) | Multi-turn dialogues for SFT | HF Mirror |
dataset_output/parquet/rag_knowledge_base.parquet | Parquet (zstd) | 325,690 chunks (159 MB) | Vector knowledge base | HF Mirror |
dataset_output/jsonl/sft_openai_messages.jsonl | ChatML JSONL | 171,520 dialogues | OpenAI format for Unsloth / TRL | Local / HF |
dataset_output/jsonl/sft_sharegpt_format.jsonl | ShareGPT JSONL | 171,520 dialogues | Axolotl & LLaMA-Factory format | Local / HF |
dataset_output/jsonl/sft_alpaca_format.jsonl | Alpaca JSONL | 933,313 pairs | Single-turn instruction-response pairs | Local / HF |
dataset_output/jsonl/rag_chunks_kb.jsonl | RAG JSONL | 325,690 chunks | Segmented technical documents | Local / HF |
dataset_output/jsonl/dpo_preference_pairs.jsonl | DPO JSONL | 60,899 pairs | Chosen / Rejected alignment pairs | Local / HF |
[!WARNING] Benchmark section withdrawn from README. Earlier numbers in this section were officially retracted in
reports/DATASET_AND_ANALYTICS.md, section "Empirical Evaluation — Honest Status". A code audit of the benchmark harness (src/evaluation/official_academic_benchmarks.py) found three defects (substring-based MCQ scoring, PPL on empty placeholders, silent copy of Base results into LoRA/Hybrid columns when the adapter failed to load). The numbers will be republished only after a fresh GPU re-run; meanwhile we ship the dataset and adapters without any accuracy claim on this README page. The 100-question non-executing benchmark suite remains available inreports/domain_benchmark_100.jsonas a corpus, not as a leaderboard.
Load pre-built dataset splits in Python with a single line:
from datasets import load_dataset
# 1. Load SFT Multi-Turn Dialogues (171.5k dialogues)
sft_ds = load_dataset("wwewtech/russian-it-community-corpus", "sft_dialogues", split="train")
# 2. Load RAG Knowledge Base Chunks (325.7k chunks)
rag_ds = load_dataset("wwewtech/russian-it-community-corpus", "rag_knowledge_base", split="train")
# 3. Load Full Clean Messages (2.81M records)
full_ds = load_dataset("wwewtech/russian-it-community-corpus", "full_corpus", split="train")
Pre-trained adapters fine-tuned in pilot domain-adaptation runs on RICC dataset are available locally in lora_adapters/ (56 adapters) and on Hugging Face: wwewtech/russian-it-community-lora (58 adapters, including codegen_350m_multi and sber_mgpt). The local lora_adapters/registry.json is the single source of truth for on-disk adapters, generated by scripts/generate_lora_registry.py. To mirror the registry to the Hub, see docs/adr/0001-hf-token-handling.md and scripts/sync_to_hub.py. Full hand-maintained catalog lives in reports/LORA_MODEL_ZOO.md.
| Base Model | Family | Parameters | LoRA Size | Local Path |
|---|---|---|---|---|
Qwen/Qwen2.5-0.5B-Instruct | Qwen 2.5 | 0.5B | 8.27 MB | lora_adapters/qwen2.5_0.5b_instruct/ |
Qwen/Qwen2.5-1.5B-Instruct | Qwen 2.5 | 1.5B | 16.65 MB | lora_adapters/qwen2.5_1.5b_instruct/ |
Qwen/Qwen2.5-3B-Instruct | Qwen 2.5 | 3.0B | 28.16 MB | lora_adapters/qwen2.5_3b_instruct/ |
Qwen/Qwen2.5-Coder-1.5B-Instruct | Qwen 2.5 Coder | 1.5B | 16.65 MB | lora_adapters/qwen2.5_coder_1.5b_instruct/ |
deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B | DeepSeek R1 | 1.5B | 16.65 MB | lora_adapters/deepseek_r1_distill_qwen_1.5b/ |
unsloth/Llama-3.2-1B-Instruct | Llama 3.2 | 1.0B | 13.02 MB | lora_adapters/llama_3.2_1b_instruct/ |
unsloth/Llama-3.2-3B-Instruct | Llama 3.2 | 3.0B | 35.03 MB | lora_adapters/llama_3.2_3b_instruct/ |
Vikhrmodels/Vikhr-Qwen-2.5-1.5B-Instruct | Vikhr NLP | 1.5B | 16.65 MB | lora_adapters/vikhr_qwen_2.5_1.5b/ |
HuggingFaceTB/SmolLM2-1.7B-Instruct | SmolLM2 | 1.7B | 24.02 MB | lora_adapters/smollm2_1.7b_instruct/ |
from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer
base = AutoModelForCausalLM.from_pretrained("Qwen/Qwen2.5-1.5B-Instruct", device_map="auto", torch_dtype="auto")
tokenizer = AutoTokenizer.from_pretrained(
"lora_adapters/qwen2.5_1.5b_instruct"
) # or "wwewtech/russian-it-community-lora"
model = PeftModel.from_pretrained(base, "lora_adapters/qwen2.5_1.5b_instruct")
git clone https://github.com/wwewtech/russian-it-community-corpus.git
cd russian-it-community-corpus
pip install -r requirements.txt
python main.py
streamlit run app.py
# or:
make ui
python src/lora/train_lora.py --model Qwen/Qwen2.5-0.5B-Instruct --steps 100
python src/lora/generate_demo.py --prompt "Как настроить прием платежей для SaaS из РФ?"
| Command | Action |
|---|---|
python main.py | Run complete pipeline on all available chat exports |
python cli.py analyze | Generate analytical reports and metrics |
python cli.py validate | Validate dataset schema and check for PII leaks |
python cli.py benchmark | Export and inspect 100 domain test cases |
python demo_walkthrough.py | Run interactive terminal walkthrough |
python -m unittest discover -s tests | Run automated test suite |
make audit | Run red-team adversarial penetration test |
make docker-up | Start Web Data Studio in Docker container |
├── assets/ # Theme-aware vector graphics
├── src/
│ ├── ingestion/ # Multi-chat JSON export parser
│ ├── pii/ # Case-aware PII anonymizer and neural NER
│ ├── graph/ # Thread DAG builder and dialogue extractor
│ ├── deduplication/ # MinHash LSH and exact text hashing
│ ├── taxonomy/ # Domain classifiers and keyword taggers
│ ├── exporter/ # Apache Parquet and JSONL serializers
│ ├── analytics/ # DeepChatAnalyzer statistical engine
│ ├── rag/ # Vector search and prompt augmentation pipeline
│ ├── lora/ # PEFT training and inference scripts
│ ├── evaluation/ # Benchmark comparator
│ └── validation/ # PII auditor and domain benchmarks
├── dataset_output/ # Parquet datasets and preview samples
├── reports/ # Canonical dataset & model cards and benchmark suites
│ ├── DATASET_AND_ANALYTICS.md # Dataset Card and Zero-PII Protocol
│ ├── HF_MODEL_CARD.md # Hugging Face Model Card
│ ├── LORA_MODEL_ZOO.md # Catalog of 58 LoRA Adapters on Hub (56 local)
│ ├── heuristic_benchmark_eval.json # 50-Scenario Heuristic Benchmark Matrix
│ └── domain_benchmark_100.json # 100-Scenario Domain Benchmark Suite
├── tests/ # Automated unit tests
├── app.py # Streamlit Web Data Studio
├── demo_walkthrough.py # Terminal demonstration script
├── cli.py # CLI entrypoint
├── main.py # Pipeline master runner
├── Dockerfile # Production container definition
├── docker-compose.yml # Container composition
├── Makefile # Task shortcuts
└── requirements.txt # Python dependencies
community_node_01..11) and re-indexes technical IDs.reports/pii_validation_report.json.RICC · Russian IT Community Corpus
107 commits
Python
92.3%
Jinja
6.8%
Russian IT Community Conversational Corpus (2017-2026) · Zero-PII Curation Platform, Multi-turn SFT, DPO, RAG Knowledge Base, Streamlit Studio & RTX 3060 LoRA benchmark
1
stars
107
commits
Python
primary language
Sep 8, 2026
updated
High-throughput data engineering and Zero-PII curation platform for language models
2,816,434 discussions · 2017–2026 history · SFT dialogues · DPO pairs · RAG knowledge base · LoRA on RTX 3060
[!TIP] 🤗 Official Hugging Face Hub Integration:
- 📦 Dataset:
wwewtech/russian-it-community-corpus— 2,816,434 clean messages, 171.5k multi-turn SFT dialogues, and 325.7k RAG knowledge base chunks in Apache Parquet.- 🦁 LoRA Model Zoo:
wwewtech/russian-it-community-lora— 58 adapters on Hugging Face Hub (55 domain adapters + 3 flagship 7B–8B QLoRA; 56 adapters cloned locally inlora_adapters/).from datasets import load_dataset dataset = load_dataset("wwewtech/russian-it-community-corpus", "sft_dialogues", split="train")
RICC (Russian IT Community Corpus) is an open data engineering and curation stack that ingests, cleans, deduplicates, and structures 2,816,434 engineering, infrastructure, business, and software development messages from 11 community nodes spanning 2017–2026.
The platform produces datasets for instruction fine-tuning, direct preference optimization, and vector knowledge retrieval.
| Metric | Property | Factual Value |
|---|---|---|
| Privacy & Anonymization | Multi-pass Regex + Natasha NER + case declension | 11 community nodes anonymized (community_node_01..11) |
| Deduplication | MinHash LSH (128 permutations, 0.80 Jaccard threshold) | 95,300+ duplicate / spam messages removed |
| SFT dialogue quality | Multi-turn dialogues extracted from reconstructed thread DAGs | 171,520 curated dialogues |
| Local LoRA execution | PEFT QLoRA adaptation on consumer hardware | ~4.35 GB VRAM on RTX 3060 (12GB) |
┌──────────────────────────────┐
11 Community Nodes ──► Multi-Source Ingestion │
2,816,434 raw records └──────────────┬───────────────┘
│
┌──────────────▼───────────────┐
│ Deep Case-Aware Zero-PII │ ──► Declension across 6 Russian cases
│ RegEx + Natasha Neural NER │ Tech terminology protection whitelist
└──────────────┬───────────────┘
│
┌──────────────▼───────────────┐
│ Deduplication & Taxonomy │ ──► MinHash LSH with 128 permutations
│ 8 Domain Classifiers │ Exact hash deduplication
└──────────────┬───────────────┘
│
┌──────────────▼───────────────┐
│ Thread DAG Reconstruction │ ──► Reply tree traversal
│ SFT, DPO, RAG Extraction │ Temporal cluster resolution
└──────────────┬───────────────┘
│
┌────────────────────────────┼────────────────────────────┐
▼ ▼ ▼
┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐
│ Apache Parquet │ │ JSONL Datasets │ │ Local LoRA, RAG │
│ zstd compressed │ │ ShareGPT, ChatML│ │ RTX 3060 Runner │
│ full, sft, rag │ │ Alpaca, Qdrant │ │ Streamlit Studio│
└──────────────────┘ └──────────────────┘ └──────────────────┘
| Pipeline Stage | Implementation | Purpose |
|---|---|---|
| Ingestion | src/ingestion/ | Normalizes and chronologically merges multi-chat raw exports (11 sources) |
| Anonymization | src/pii/ | Redacts names across 6 cases, phone numbers, crypto wallets, API tokens, database URLs |
| Deduplication | src/deduplication/ | Filters near-duplicate and exact spam messages via MinHash LSH |
| Taxonomy | src/taxonomy/ | Categorizes content into 8 technical domains and extracts keyword tags |
| Thread DAG | src/graph/ | Reconstructs conversational trees and extracts multi-turn dialogues |
| Multi-Export | src/exporter/ | Serializes outputs into Apache Parquet with zstd compression and JSONL formats |
| Analytics | src/analytics/ | Computes Shannon entropy, temporal patterns, social graphs, and vocabulary stats |
| Local LoRA and RAG | src/lora/, src/rag/ | Provides PEFT training for RTX 3060 and semantic retrieval for 325k chunks |
The corpus and trained adapters are available both remotely on Hugging Face Hub and locally in dataset_output/:
📦 Dataset Hub (Full Corpus, SFT, RAG):
👉 https://huggingface.co/datasets/wwewtech/russian-it-community-corpus
🦁 Model Hub (58 LoRA Adapters on Hub / 56 Local Adapters):
👉 https://huggingface.co/wwewtech/russian-it-community-lora
All datasets are automatically generated and saved in dataset_output/:
| File Path | Format | Volume | Description | Direct Link |
|---|---|---|---|---|
dataset_output/parquet/full_clean_messages.parquet | Parquet (zstd) | 2,816,434 rows (189 MB) | Full cleaned corpus with metadata | HF Mirror |
dataset_output/parquet/sft_dialogues.parquet | Parquet (zstd) | 171,520 dialogues (132 MB) | Multi-turn dialogues for SFT | HF Mirror |
dataset_output/parquet/rag_knowledge_base.parquet | Parquet (zstd) | 325,690 chunks (159 MB) | Vector knowledge base | HF Mirror |
dataset_output/jsonl/sft_openai_messages.jsonl | ChatML JSONL | 171,520 dialogues | OpenAI format for Unsloth / TRL | Local / HF |
dataset_output/jsonl/sft_sharegpt_format.jsonl | ShareGPT JSONL | 171,520 dialogues | Axolotl & LLaMA-Factory format | Local / HF |
dataset_output/jsonl/sft_alpaca_format.jsonl | Alpaca JSONL | 933,313 pairs | Single-turn instruction-response pairs | Local / HF |
dataset_output/jsonl/rag_chunks_kb.jsonl | RAG JSONL | 325,690 chunks | Segmented technical documents | Local / HF |
dataset_output/jsonl/dpo_preference_pairs.jsonl | DPO JSONL | 60,899 pairs | Chosen / Rejected alignment pairs | Local / HF |
[!WARNING] Benchmark section withdrawn from README. Earlier numbers in this section were officially retracted in
reports/DATASET_AND_ANALYTICS.md, section "Empirical Evaluation — Honest Status". A code audit of the benchmark harness (src/evaluation/official_academic_benchmarks.py) found three defects (substring-based MCQ scoring, PPL on empty placeholders, silent copy of Base results into LoRA/Hybrid columns when the adapter failed to load). The numbers will be republished only after a fresh GPU re-run; meanwhile we ship the dataset and adapters without any accuracy claim on this README page. The 100-question non-executing benchmark suite remains available inreports/domain_benchmark_100.jsonas a corpus, not as a leaderboard.
Load pre-built dataset splits in Python with a single line:
from datasets import load_dataset
# 1. Load SFT Multi-Turn Dialogues (171.5k dialogues)
sft_ds = load_dataset("wwewtech/russian-it-community-corpus", "sft_dialogues", split="train")
# 2. Load RAG Knowledge Base Chunks (325.7k chunks)
rag_ds = load_dataset("wwewtech/russian-it-community-corpus", "rag_knowledge_base", split="train")
# 3. Load Full Clean Messages (2.81M records)
full_ds = load_dataset("wwewtech/russian-it-community-corpus", "full_corpus", split="train")
Pre-trained adapters fine-tuned in pilot domain-adaptation runs on RICC dataset are available locally in lora_adapters/ (56 adapters) and on Hugging Face: wwewtech/russian-it-community-lora (58 adapters, including codegen_350m_multi and sber_mgpt). The local lora_adapters/registry.json is the single source of truth for on-disk adapters, generated by scripts/generate_lora_registry.py. To mirror the registry to the Hub, see docs/adr/0001-hf-token-handling.md and scripts/sync_to_hub.py. Full hand-maintained catalog lives in reports/LORA_MODEL_ZOO.md.
| Base Model | Family | Parameters | LoRA Size | Local Path |
|---|---|---|---|---|
Qwen/Qwen2.5-0.5B-Instruct | Qwen 2.5 | 0.5B | 8.27 MB | lora_adapters/qwen2.5_0.5b_instruct/ |
Qwen/Qwen2.5-1.5B-Instruct | Qwen 2.5 | 1.5B | 16.65 MB | lora_adapters/qwen2.5_1.5b_instruct/ |
Qwen/Qwen2.5-3B-Instruct | Qwen 2.5 | 3.0B | 28.16 MB | lora_adapters/qwen2.5_3b_instruct/ |
Qwen/Qwen2.5-Coder-1.5B-Instruct | Qwen 2.5 Coder | 1.5B | 16.65 MB | lora_adapters/qwen2.5_coder_1.5b_instruct/ |
deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B | DeepSeek R1 | 1.5B | 16.65 MB | lora_adapters/deepseek_r1_distill_qwen_1.5b/ |
unsloth/Llama-3.2-1B-Instruct | Llama 3.2 | 1.0B | 13.02 MB | lora_adapters/llama_3.2_1b_instruct/ |
unsloth/Llama-3.2-3B-Instruct | Llama 3.2 | 3.0B | 35.03 MB | lora_adapters/llama_3.2_3b_instruct/ |
Vikhrmodels/Vikhr-Qwen-2.5-1.5B-Instruct | Vikhr NLP | 1.5B | 16.65 MB | lora_adapters/vikhr_qwen_2.5_1.5b/ |
HuggingFaceTB/SmolLM2-1.7B-Instruct | SmolLM2 | 1.7B | 24.02 MB | lora_adapters/smollm2_1.7b_instruct/ |
from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer
base = AutoModelForCausalLM.from_pretrained("Qwen/Qwen2.5-1.5B-Instruct", device_map="auto", torch_dtype="auto")
tokenizer = AutoTokenizer.from_pretrained(
"lora_adapters/qwen2.5_1.5b_instruct"
) # or "wwewtech/russian-it-community-lora"
model = PeftModel.from_pretrained(base, "lora_adapters/qwen2.5_1.5b_instruct")
git clone https://github.com/wwewtech/russian-it-community-corpus.git
cd russian-it-community-corpus
pip install -r requirements.txt
python main.py
streamlit run app.py
# or:
make ui
python src/lora/train_lora.py --model Qwen/Qwen2.5-0.5B-Instruct --steps 100
python src/lora/generate_demo.py --prompt "Как настроить прием платежей для SaaS из РФ?"
| Command | Action |
|---|---|
python main.py | Run complete pipeline on all available chat exports |
python cli.py analyze | Generate analytical reports and metrics |
python cli.py validate | Validate dataset schema and check for PII leaks |
python cli.py benchmark | Export and inspect 100 domain test cases |
python demo_walkthrough.py | Run interactive terminal walkthrough |
python -m unittest discover -s tests | Run automated test suite |
make audit | Run red-team adversarial penetration test |
make docker-up | Start Web Data Studio in Docker container |
├── assets/ # Theme-aware vector graphics
├── src/
│ ├── ingestion/ # Multi-chat JSON export parser
│ ├── pii/ # Case-aware PII anonymizer and neural NER
│ ├── graph/ # Thread DAG builder and dialogue extractor
│ ├── deduplication/ # MinHash LSH and exact text hashing
│ ├── taxonomy/ # Domain classifiers and keyword taggers
│ ├── exporter/ # Apache Parquet and JSONL serializers
│ ├── analytics/ # DeepChatAnalyzer statistical engine
│ ├── rag/ # Vector search and prompt augmentation pipeline
│ ├── lora/ # PEFT training and inference scripts
│ ├── evaluation/ # Benchmark comparator
│ └── validation/ # PII auditor and domain benchmarks
├── dataset_output/ # Parquet datasets and preview samples
├── reports/ # Canonical dataset & model cards and benchmark suites
│ ├── DATASET_AND_ANALYTICS.md # Dataset Card and Zero-PII Protocol
│ ├── HF_MODEL_CARD.md # Hugging Face Model Card
│ ├── LORA_MODEL_ZOO.md # Catalog of 58 LoRA Adapters on Hub (56 local)
│ ├── heuristic_benchmark_eval.json # 50-Scenario Heuristic Benchmark Matrix
│ └── domain_benchmark_100.json # 100-Scenario Domain Benchmark Suite
├── tests/ # Automated unit tests
├── app.py # Streamlit Web Data Studio
├── demo_walkthrough.py # Terminal demonstration script
├── cli.py # CLI entrypoint
├── main.py # Pipeline master runner
├── Dockerfile # Production container definition
├── docker-compose.yml # Container composition
├── Makefile # Task shortcuts
└── requirements.txt # Python dependencies
community_node_01..11) and re-indexes technical IDs.reports/pii_validation_report.json.RICC · Russian IT Community Corpus
107 commits
Python
92.3%
Jinja
6.8%