diff --git a/docs/usermanuals/en/compliance/gdpr.md b/docs/usermanuals/en/compliance/gdpr.md index f2059b66..3f465b69 100644 --- a/docs/usermanuals/en/compliance/gdpr.md +++ b/docs/usermanuals/en/compliance/gdpr.md @@ -108,7 +108,7 @@ For high-risk processing, GDPR Art. 35 requires a DPIA. ForgeLM doesn't write yo - Mitigations applied → from `compliance.risk_assessment.mitigations`. - Residual risks → from `compliance.risk_assessment.residual_risks`. -A DPIA template that consumes these is in `docs/qms/dpia-template.md`. +For DPIA work, pair the inputs above with the QMS risk-treatment plan at `docs/qms/risk_treatment_plan.md` and the Statement of Applicability at `docs/qms/statement_of_applicability.md`. (A dedicated DPIA template is on the roadmap; the risk-treatment plan covers the same ground for now.) ## Configuration reference diff --git a/docs/usermanuals/en/compliance/human-approval-gate.md b/docs/usermanuals/en/compliance/human-approval-gate.md index 42cec691..3dcb4825 100644 --- a/docs/usermanuals/en/compliance/human-approval-gate.md +++ b/docs/usermanuals/en/compliance/human-approval-gate.md @@ -12,10 +12,12 @@ For the full walkthrough, see [`docs/guides/human_approval_gate.md`](../../../gu ## When the gate fires ```yaml -compliance: - human_approval: true +evaluation: + require_human_approval: true ``` +> **Phantom-key note.** Earlier drafts named this `compliance.human_approval`. That key never shipped — `ComplianceMetadataConfig` is `extra="forbid"` and rejects it. The canonical activation key lives on `EvaluationConfig`. See [Human Oversight](#/compliance/human-oversight) for the full phantom-key list. + With that flag, every run consuming this config pauses **after** evaluation succeeds and **before** `final_model.staging/` is promoted to `final_model/`. The trainer: - Writes `final_model.staging./` to disk. diff --git a/docs/usermanuals/tr/compliance/gdpr.md b/docs/usermanuals/tr/compliance/gdpr.md index 09cd20fb..4fb4beeb 100644 --- a/docs/usermanuals/tr/compliance/gdpr.md +++ b/docs/usermanuals/tr/compliance/gdpr.md @@ -108,7 +108,7 @@ Yüksek-riskli işleme için GDPR Md. 35 DPIA gerektirir. ForgeLM DPIA'nızı ya - Uygulanan azaltıcılar → `compliance.risk_assessment.mitigations`'dan. - Kalıntı riskler → `compliance.risk_assessment.residual_risks`'tan. -Bunları tüketen DPIA şablonu `docs/qms/dpia-template.md`'de. +DPIA çalışması için yukarıdaki girdileri `docs/qms/risk_treatment_plan-tr.md`'deki QMS risk tedavi planı ve `docs/qms/statement_of_applicability-tr.md`'deki Uygulanabilirlik Beyanı ile eşleştirin. (Adanmış bir DPIA şablonu yol haritasındadır; şimdilik risk tedavi planı aynı zemini kapsıyor.) ## Konfigürasyon referansı diff --git a/docs/usermanuals/tr/compliance/human-approval-gate.md b/docs/usermanuals/tr/compliance/human-approval-gate.md index b4dac487..0dc8e575 100644 --- a/docs/usermanuals/tr/compliance/human-approval-gate.md +++ b/docs/usermanuals/tr/compliance/human-approval-gate.md @@ -12,10 +12,12 @@ Tam walkthrough için bkz. [`docs/guides/human_approval_gate-tr.md`](../../../gu ## Kapı ne zaman ateşlenir ```yaml -compliance: - human_approval: true +evaluation: + require_human_approval: true ``` +> **Phantom anahtar notu.** Eski taslaklar bunu `compliance.human_approval` olarak adlandırıyordu. O anahtar hiç gönderilmedi — `ComplianceMetadataConfig` `extra="forbid"` ile yapılandırıldığı için onu reddeder. Kanonik aktivasyon anahtarı `EvaluationConfig` üzerindedir. Tam phantom-anahtar listesi için bkz. [İnsan Gözetimi](#/compliance/human-oversight). + Bu flag ile, bu config'i tüketen her koşum eval başarılı olduktan **sonra** ve `final_model.staging/` `final_model/`'e terfi etmeden **önce** duraklar. Trainer: - Diske `final_model.staging./` yazar. diff --git a/forgelm/wizard/_orchestrator.py b/forgelm/wizard/_orchestrator.py index 36589ce6..5ca29627 100644 --- a/forgelm/wizard/_orchestrator.py +++ b/forgelm/wizard/_orchestrator.py @@ -716,6 +716,12 @@ def _step_evaluation(state: _WizardState) -> None: _apply_strict_tier_coercion(state.config, compliance) +# NOTE: ``_STEPS`` lists the CLI wizard's nine canonical step IDs. The +# in-browser wizard at ``site/js/wizard.js::STEPS`` covers the same nine +# user-visible stages but uses different IDs (welcome / use-case / trainer / +# model / dataset / training / compliance / operations / review) and a +# ``trainer ↔ model`` order swap motivated by the web's preset-driven flow. +# Both surfaces reach the same generated YAML; the divergence is by design. _STEPS: Tuple[_StepDef, ...] = ( _StepDef("welcome", _step_welcome), _StepDef("use-case", _step_use_case), diff --git a/forgelm/wizard/_state.py b/forgelm/wizard/_state.py index 8e3225d6..864364d3 100644 --- a/forgelm/wizard/_state.py +++ b/forgelm/wizard/_state.py @@ -144,6 +144,14 @@ def _default(section: str, key: str, fallback: Any) -> Any: # Bumped whenever the on-disk wizard-state shape changes. Version # mismatches are silently ignored (treated as "no resume available"). +# +# This number is the CLI-side wizard's serialised resume-state version. +# It is intentionally independent of the in-browser wizard's +# ``site/js/wizard.js::STATE_VERSION`` (currently 3 at time of writing): +# the two surfaces persist to entirely different stores (XDG cache JSON +# here vs. browser ``localStorage`` there) and bump on schedules tied to +# their own state-shape evolution, so a number drift between them is +# normal and not a synchronisation bug. _STATE_VERSION = 1 diff --git a/site/compliance.html b/site/compliance.html index 4603bcd3..1881d37b 100644 --- a/site/compliance.html +++ b/site/compliance.html @@ -46,7 +46,7 @@ "description": "EU AI Act, GDPR, and ISO/SOC2 mapping for ForgeLM. Compliance is shipped, not promised.", "url": "https://forgelm.dev/compliance.html", "downloadUrl": "https://pypi.org/project/forgelm/", - "operatingSystem": "Linux, macOS", + "operatingSystem": "Linux, macOS, Windows", "license": "https://www.apache.org/licenses/LICENSE-2.0", "softwareVersion": "0.5.5", "offers": { @@ -147,34 +147,34 @@

Risk management

Article 10

Data & data governance

Quality, relevance, representativeness criteria. Bias detection, PII redaction. Optional Presidio ML-NER for unstructured PII; optional Croissant 1.0 dataset card emitted alongside the audit.

-
forgelm/data_audit.py · forgelm/ingestion.py
+
forgelm/data_audit/ · forgelm/ingestion.py
Article 11

Technical documentation

-

Annex IV's eight required sections — auto-populated from the run.

-
artifacts/annex_iv_metadata.json
+

Annex IV's nine required §1-9 sections — auto-populated from the run.

+
compliance/annex_iv_metadata.json
Article 12

Record-keeping (logs)

-

Append-only event log over training start, eval gates, auto-revert decisions.

-
forgelm/compliance.py · artifacts/audit_log.jsonl
+

Append-only event log over training start/end, eval gates, auto-revert decisions, human-approval gates, GDPR Article 17 erasure, and Article 15 access-request queries.

+
forgelm/compliance.py · audit_log.jsonl
Article 13

Transparency

-

Auto-generated model card lists capabilities, intended use, training data summary.

-
--model-card · output_dir/README.md
+

Auto-generated model card (capabilities, intended use, training data summary) plus deployer instructions, written every successful run.

+
final_model/README.md · final_model/deployer_instructions.md
Article 14

Human oversight

-

Optional compliance.human_approval: true moves the trained checkpoint into a staging directory; forgelm approve / reject + forgelm approvals drive the dual-controlled sign-off, all stamped into the audit log.

+

Optional evaluation.require_human_approval: true moves the trained checkpoint into a staging directory; forgelm approve / reject + forgelm approvals drive the dual-controlled sign-off, all stamped into the audit log.

forgelm approve · forgelm reject · forgelm approvals
@@ -188,28 +188,28 @@

Accuracy & robustness

Article 16-17

Conformity & QMS

-

QMS SOPs in docs/qms/ cover release, incident response, data-source onboarding.

+

QMS SOPs in docs/qms/ cover model training, data management, incident response, change management, plus access control / encryption-at-rest / risk treatment / Statement of Applicability.

docs/qms/
GDPR

PII redaction at ingest

-

--pii-mask redacts emails, phones, credit cards, IBAN, national IDs before chunks land in JSONL.

-
forgelm/data_audit.py::mask_pii
+

--pii-mask redacts emails, phones, credit cards (Luhn-validated), IBAN, TR national ID, DE Personalausweis, FR SSN, US SSN before chunks land in JSONL.

+
forgelm/data_audit/ · forgelm/data_audit/_pii_regex.py
GDPR Art. 15

Right of access

-

forgelm reverse-pii walks the redaction map back from a data-subject identifier to every row of every split where that subject appears, satisfying the access-request side of the GDPR's data-subject rights.

+

forgelm reverse-pii scans masked JSONL corpora for plaintext residuals or salted SHA-256 digests of a data-subject identifier and reports every row of every split where that subject appears, satisfying the access-request side of the GDPR's data-subject rights.

forgelm reverse-pii
GDPR Art. 17

Right to erasure

-

forgelm purge deletes a data-subject's rows from training corpora, stamps the deletion in the append-only audit log, and updates the data-provenance manifest so post-deletion runs reflect the new dataset state.

+

forgelm purge deletes a data-subject's rows from training corpora and stamps data.erasure_requested + data.erasure_completed events into the append-only audit log so post-deletion runs are forensically linked to the erasure event.

forgelm purge
@@ -236,8 +236,8 @@

Audit trail

Pillar 2

Change control

-

Article 14 staging gate (forgelm approve / reject) plus human_approval.required/granted/rejected audit events plus compliance.config_hash stamped per run — every model promotion is dual-controlled and forensically attributed.

-
forgelm approve · compliance.config_hash
+

Article 14 staging gate (forgelm approve / reject) plus human_approval.required/granted/rejected audit events plus forgelm verify-audit chain integrity — every model promotion is dual-controlled and forensically attributed.

+
forgelm approve · forgelm verify-audit
@@ -274,21 +274,21 @@

A run's compliance footprint

checkpoints/policy-bot/ -
artifacts/
-├── annex_iv_metadata.json         # Article 11 technical documentation (flat JSON, not Markdown)
-├── compliance_report.json         # Full Article 9-17 manifest — superset of the per-artefact files
-├── training_manifest.yaml         # Human-readable summary (model, data, params, final metrics)
-├── data_provenance.json           # Data lineage extracted from the manifest (Article 10)
-├── risk_assessment.json           # Article 9 risk-management output (when risk fields are set)
-├── audit_log.jsonl                # Article 12 append-only event log
-├── audit_log.jsonl.manifest.json  # SHA-256 sidecar over the audit log
-├── data_audit_report.json         # Article 10 data governance — quality/PII/bias scan
-├── data_governance_report.json    # Article 10 governance summary (sources, licenses)
-├── README.md                      # Article 13 model card (HuggingFace-compatible README)
-├── model_integrity.json           # SHA-256 over weights/adapter for Article 15
-└── deployer_instructions.md       # Article 13 downstream-deployer guidance
-config_snapshot.yaml               # the YAML this run actually used
-checkpoints/                       # PEFT adapter or merged weights
+        
checkpoints/policy-bot/             # training.output_dir from your YAML
+├── audit_log.jsonl                 # Article 12 append-only event log
+├── audit_log.jsonl.manifest.json   # SHA-256 sidecar over the audit log
+├── compliance/                     # Annex IV bundle (Articles 9-17)
+│   ├── annex_iv_metadata.json      # Article 11 technical documentation (flat JSON)
+│   ├── compliance_report.json      # Full Article 9-17 manifest — superset of the per-artefact files
+│   ├── training_manifest.yaml      # Human-readable summary (model, data, params, final metrics)
+│   ├── data_provenance.json        # Data lineage extracted from the manifest (Article 10)
+│   ├── risk_assessment.json        # Article 9 risk-management output (when risk_assessment block is set)
+│   ├── data_audit_report.json      # Article 10 data governance — quality/PII/bias scan (forgelm audit)
+│   └── data_governance_report.json # Article 10 governance summary (sources, licenses)
+└── final_model/                    # PEFT adapter or merged weights
+    ├── README.md                   # Article 13 model card (HuggingFace-compatible) — auto-generated
+    ├── deployer_instructions.md    # Article 13 downstream-deployer guidance
+    └── model_integrity.json        # SHA-256 over weights/adapter for Article 15
 
diff --git a/site/contact.html b/site/contact.html index 31f2703b..69ff2fa2 100644 --- a/site/contact.html +++ b/site/contact.html @@ -46,7 +46,7 @@ "description": "Get in touch with the ForgeLM team \u2014 issues, features, security, or commercial.", "url": "https://forgelm.dev/contact.html", "downloadUrl": "https://pypi.org/project/forgelm/", - "operatingSystem": "Linux, macOS", + "operatingSystem": "Linux, macOS, Windows", "license": "https://www.apache.org/licenses/LICENSE-2.0", "softwareVersion": "0.5.5", "offers": { diff --git a/site/features.html b/site/features.html index fdd7668c..9627f346 100644 --- a/site/features.html +++ b/site/features.html @@ -46,7 +46,7 @@ "description": "Full feature matrix of ForgeLM: training, evaluation, ingestion, compliance, deployment.", "url": "https://forgelm.dev/features.html", "downloadUrl": "https://pypi.org/project/forgelm/", - "operatingSystem": "Linux, macOS", + "operatingSystem": "Linux, macOS, Windows", "license": "https://www.apache.org/licenses/LICENSE-2.0", "softwareVersion": "0.5.5", "offers": { @@ -148,7 +148,7 @@

SFT

DPO & SimPO

-

Direct Preference Optimization on chosen/rejected pairs.

+

Direct Preference Optimization on chosen/rejected pairs; SimPO for reference-free, lower-memory variants.

@@ -226,7 +226,7 @@

Auto-revert

Trend tracking

-

Cross-run safety / quality history.

+

Cross-run safety history (safety_trend.jsonl per output_dir).

@@ -236,7 +236,7 @@

Exit codes

Standalone safety eval

-

forgelm safety-eval runs Llama Guard against any JSONL/Parquet/HF dataset and emits the same Article 9 risk artefact as a full run.

+

forgelm safety-eval runs Llama Guard against a --probes JSONL prompt file (or --default-probes for the bundled 50-prompt set) and emits a per-category safety summary (safety_results.json + safety_trend.jsonl).

@@ -317,7 +317,7 @@

Enterprise & MLOps

Webhook notifications

-

Slack and Teams alerts on training events.

+

Slack, Teams, Discord, or any HTTP webhook receiver alerts on training events.

@@ -337,7 +337,7 @@

Air-gap operation

Docker & compose

-

Official Dockerfile and docker-compose.yml.

+

Official Dockerfile and docker-compose.yaml.

@@ -362,12 +362,12 @@

Model merging

Library API

-

forgelm.api exposes train, audit, safety-eval, and verify-audit as Python functions for embedding inside other pipelines.

+

from forgelm import … exposes ForgeTrainer, audit_dataset, verify_audit_log, verify_annex_iv_artifact, mask_pii, and friends as Python functions for embedding inside other pipelines.

Environment diagnostics

-

forgelm doctor probes Python, GPU, drivers, optional extras, disk space, network, and prints a green/yellow/red triage report.

+

forgelm doctor probes Python, GPU, drivers, optional extras, disk space, network, and prints a pass / warn / fail triage report.

@@ -415,12 +415,12 @@

GDPR Article 17 erasure

GDPR Article 15 access

-

forgelm reverse-pii walks the PII redaction map back to surface every row in which a data subject appears.

+

forgelm reverse-pii scans masked JSONL corpora for forensic substring or salted-digest matches that surface every row in which a data-subject identifier appears.

Annex IV verifier

-

forgelm verify-annex-iv validates a generated artefact bundle against the Annex IV schema and the run's audit chain.

+

forgelm verify-annex-iv validates the Annex IV §1-9 schema completeness and the bundle's manifest_hash for tampering detection. (Audit-chain integrity is the separate forgelm verify-audit command.)

diff --git a/site/guide.html b/site/guide.html index fdba7a76..1c1dde6b 100644 --- a/site/guide.html +++ b/site/guide.html @@ -52,7 +52,7 @@ "description": "Comprehensive ForgeLM user guide \u2014 every feature, every parameter, with copy-pasteable examples.", "url": "https://forgelm.dev/guide.html", "downloadUrl": "https://pypi.org/project/forgelm/", - "operatingSystem": "Linux, macOS", + "operatingSystem": "Linux, macOS, Windows", "license": "https://www.apache.org/licenses/LICENSE-2.0", "softwareVersion": "0.5.5", "offers": { diff --git a/site/index.html b/site/index.html index ff37a6ee..577e1bc4 100644 --- a/site/index.html +++ b/site/index.html @@ -46,7 +46,7 @@ "description": "YAML in. Fine-tuned model out. Config-driven LLM fine-tuning toolkit for regulated environments.", "url": "https://forgelm.dev/", "downloadUrl": "https://pypi.org/project/forgelm/", - "operatingSystem": "Linux, macOS", + "operatingSystem": "Linux, macOS, Windows", "license": "https://www.apache.org/licenses/LICENSE-2.0", "softwareVersion": "0.5.5", "offers": { @@ -364,7 +364,7 @@

Compliance is shipped, not promised

Auto-revert on regression

-

When a benchmark drops below the floor, ForgeLM rolls back.

+

When a benchmark drops below the floor, ForgeLM discards the trained artefacts and exits non-zero so CI gates fail loudly.

Llama Guard exit codes @@ -459,7 +459,7 @@

VRAM fit-check

Interactive chat

-

Streaming REPL with safety routing.

+

Streaming REPL with /reset, /save, /temperature, /system commands. Per-response Llama Guard routing is planned for an upcoming Pro CLI release.

forgelm chat
@@ -478,9 +478,9 @@

Export & deploy

Library API

-

Import forgelm.api and embed training, audit, safety eval, and verify-audit calls inside your own Python pipelines.

+

Use from forgelm import … to embed ForgeTrainer, audit_dataset, verify_audit_log, and verify_annex_iv_artifact calls inside your own Python pipelines.

- forgelm.api + from forgelm import … embed
@@ -539,36 +539,35 @@

One YAML, end-to-end run

lora: r: 16 alpha: 32 - use_dora: true + method: "dora" # lora / DoRA / PiSSA / rsLoRA -datasets: - - path: "data/policies.jsonl" - format: "messages" +data: + dataset_name_or_path: "data/policies.jsonl" training: - trainer: "sft" # or dpo / simpo / kto / orpo / grpo - epochs: 3 - batch_size: 2 + trainer_type: "sft" # sft / dpo / simpo / kto / orpo / grpo + num_train_epochs: 3 + per_device_train_batch_size: 2 learning_rate: 2.0e-5 + output_dir: "./checkpoints/policy-bot" evaluation: benchmark: + enabled: true tasks: ["hellaswag", "arc_easy", "truthfulqa"] - floors: { hellaswag: 0.55, arc_easy: 0.70 } + min_score: 0.65 # aggregate floor; run fails (exit 3) below this safety: enabled: true - model: "meta-llama/Llama-Guard-3-8B" - block_categories: ["S1", "S2", "S5", "S10"] + classifier: "meta-llama/Llama-Guard-3-8B" + severity_thresholds: { critical: 0.0, high: 0.01 } + require_human_approval: true # Article 14 oversight gate compliance: - annex_iv: true - data_audit_artifact: "./audit/data_audit_report.json" - human_approval: true # Article 14 oversight gate - -output: - dir: "./checkpoints/policy-bot" - model_card: true - webhook: "${SLACK_WEBHOOK}" + provider_name: "Acme Inc." + risk_classification: "limited-risk" + +webhook: + url: "${SLACK_WEBHOOK}"
@@ -602,7 +601,7 @@

Use cases that actually ship

Domain expert from policy PDFs

Drop your regulatory corpus into forgelm ingest.

- forgelm quickstart byod + forgelm quickstart domain-expert
diff --git a/site/js/translations.js b/site/js/translations.js index 28daef73..cd75d7cb 100644 --- a/site/js/translations.js +++ b/site/js/translations.js @@ -43,7 +43,7 @@ "common.footer.issues": "Issues", "common.footer.discussions":"Discussions", "common.footer.releases": "Releases", - "common.legal.last_updated":"Last updated: 2026-04-28 · This is a plain-language summary, not legal advice." + "common.legal.last_updated":"Last updated: 2026-05-09 · This is a plain-language summary, not legal advice." }; T.tr = { @@ -71,7 +71,7 @@ "common.footer.issues": "Sorunlar", "common.footer.discussions":"Tartışmalar", "common.footer.releases": "Sürümler", - "common.legal.last_updated":"Son güncelleme: 28-04-2026 · Bu hukuki tavsiye değil, açık dilde özettir." + "common.legal.last_updated":"Son güncelleme: 09-05-2026 · Bu hukuki tavsiye değil, açık dilde özettir." }; T.de = { @@ -99,7 +99,7 @@ "common.footer.issues": "Issues", "common.footer.discussions":"Diskussionen", "common.footer.releases": "Releases", - "common.legal.last_updated":"Letzte Aktualisierung: 28.04.2026 · Eine verständliche Zusammenfassung, keine Rechtsberatung." + "common.legal.last_updated":"Letzte Aktualisierung: 09.05.2026 · Eine verständliche Zusammenfassung, keine Rechtsberatung." }; T.fr = { @@ -127,7 +127,7 @@ "common.footer.issues": "Issues", "common.footer.discussions":"Discussions", "common.footer.releases": "Versions", - "common.legal.last_updated":"Dernière mise à jour : 28/04/2026 · Résumé en langage clair, pas un conseil juridique." + "common.legal.last_updated":"Dernière mise à jour : 09/05/2026 · Résumé en langage clair, pas un conseil juridique." }; T.es = { @@ -155,7 +155,7 @@ "common.footer.issues": "Issues", "common.footer.discussions":"Discusiones", "common.footer.releases": "Versiones", - "common.legal.last_updated":"Última actualización: 28-04-2026 · Resumen en lenguaje sencillo; no es asesoramiento legal." + "common.legal.last_updated":"Última actualización: 09-05-2026 · Resumen en lenguaje sencillo; no es asesoramiento legal." }; T.zh = { @@ -183,7 +183,7 @@ "common.footer.issues": "Issues", "common.footer.discussions":"讨论", "common.footer.releases": "版本", - "common.legal.last_updated":"最后更新:2026-04-28 · 通俗语言总结,非法律建议。" + "common.legal.last_updated":"最后更新:2026-05-09 · 通俗语言总结,非法律建议。" }; /* ── Page-specific blocks below extend each language with Object.assign. ── */ @@ -358,7 +358,7 @@ "home.why.compliance.title": "Compliance is shipped, not promised", "home.why.compliance.body": "Every run emits an Annex IV artifact tracing data → training → evaluation → safety. Article 9 risk assessment, Article 10 data governance, Article 12 record-keeping — wired in.", "home.why.autorevert.title": "Auto-revert on regression", - "home.why.autorevert.body": "When a benchmark drops below the floor or Llama Guard flags a critical category, ForgeLM rolls back to the last-good checkpoint and emits a structured incident record. CI/CD-integrated exit codes (0/1/2/3/4) for pipeline gating.", + "home.why.autorevert.body": "When a benchmark drops below the floor or Llama Guard flags a critical category, ForgeLM discards the trained artefacts, exits with EXIT_EVAL_FAILURE (3), and emits a structured incident record. CI/CD-integrated exit codes (0–5) for pipeline gating.", "home.cap.eyebrow": "Capabilities", "home.cap.title": "Everything the modern post-training stack needs", "home.cap.lead": "From data ingestion through evaluation to deployment artifacts — without notebook ceremony.", @@ -377,11 +377,11 @@ "home.cap.vram.title": "VRAM fit-check", "home.cap.vram.body": "Pre-flight memory estimator. FITS / TIGHT / OOM / UNKNOWN verdict with concrete recommendations before you submit a long job.", "home.cap.chat.title": "Interactive chat", - "home.cap.chat.body": "Streaming REPL with /reset, /save, /temperature, /system commands and optional safety routing.", + "home.cap.chat.body": "Streaming REPL with /reset, /save, /temperature, /system commands. Per-response Llama Guard routing is planned for an upcoming Pro CLI release.", "home.cap.export.title": "Export & deploy", "home.cap.export.body": "GGUF export with 6 quant levels and SHA-256 manifest. Generate Ollama / vLLM / TGI / HF-Endpoints deployment configs in one command.", "home.cap.api.title": "Library API", - "home.cap.api.body": "from forgelm import … and embed training, audit, safety eval, and verify-audit calls inside your own Python pipelines — every CLI surface is exposed via forgelm.__all__.", + "home.cap.api.body": "from forgelm import … to embed ForgeTrainer, audit_dataset, verify_audit_log, and verify_annex_iv_artifact calls inside your own Python pipelines — the public surface is enumerated in forgelm.__all__.", "home.cap.iso.title": "ISO 27001 / SOC 2 alignment", "home.cap.iso.body": "Audit-trail, change-management, data-lineage, and supply-chain evidence the deployer's auditor asks for. Software is aligned, not certified.", "home.cap.gdpr.title": "GDPR rights tooling", @@ -395,9 +395,9 @@ "home.use.domain.title": "Domain expert from policy PDFs", "home.use.domain.body": "Drop your regulatory corpus into forgelm ingest, audit it, and SFT a model that answers in your domain's voice — with PII redacted at ingest, before training.", "home.use.support.title": "Customer support assistant", - "home.use.support.body": "SFT on past tickets, DPO on agent thumbs-up/down feedback, Llama Guard safety routing, auto-revert if helpfulness drops. Ship to vLLM with one command.", + "home.use.support.body": "SFT on past tickets (and DPO on chosen/rejected agent feedback when you have it), Llama Guard safety evaluation gate, auto-revert if helpfulness drops. Ship to vLLM with one command.", "home.use.code.title": "Code copilot fine-tune", - "home.use.code.body": "Multi-dataset mix (your repo + open code), SFT + ORPO, GGUF export at q4_k_m for local inference. Synthetic data pipeline distils a teacher into your student.", + "home.use.code.body": "Multi-dataset mix (your repo + open code) with SFT (ORPO is a follow-up step you can chain), GGUF export at q4_k_m for local inference. Synthetic data pipeline distils a teacher into your student.", "home.use.reasoning.title": "Reasoning RL with GRPO", "home.use.reasoning.body": "Built-in format/length shaping rewards or your own reward function. Group-relative policy optimization without writing a single training-loop line.", "home.cta.title": "Ship your next fine-tune in an afternoon.", @@ -459,7 +459,7 @@ "home.why.compliance.title": "Uyumluluk vaadi değil ürün", "home.why.compliance.body": "Her koşu, veri → eğitim → değerlendirme → güvenlik izini çıkaran bir Annex IV artifact'ı üretir. Article 9 risk değerlendirmesi, Article 10 veri yönetimi, Article 12 kayıt tutma — bağlandı.", "home.why.autorevert.title": "Regresyonda otomatik geri alma", - "home.why.autorevert.body": "Bir benchmark tabanın altına düşerse veya Llama Guard kritik bir kategoriyi flagleyince ForgeLM son-iyi checkpoint'e döner ve yapılandırılmış bir olay kaydı üretir. Pipeline kapısı için CI/CD ile entegre exit kodları (0/1/2/3/4).", + "home.why.autorevert.body": "Bir benchmark tabanın altına düşerse veya Llama Guard kritik bir kategoriyi flagleyince ForgeLM eğitilen artefaktları siler, EXIT_EVAL_FAILURE (3) ile çıkar ve yapılandırılmış bir olay kaydı üretir. Pipeline kapısı için CI/CD ile entegre exit kodları (0–5).", "home.cap.eyebrow": "Yetenekler", "home.cap.title": "Modern post-training yığınının ihtiyacı olan her şey", "home.cap.lead": "Veri ingest'inden değerlendirmeye, deployment artifact'larına kadar — notebook seremonisi olmadan.", @@ -478,11 +478,11 @@ "home.cap.vram.title": "VRAM fit-check", "home.cap.vram.body": "Uçuş öncesi bellek tahmincisi. Uzun bir işi göndermeden önce FITS / TIGHT / OOM / UNKNOWN verdict'i ve somut öneriler.", "home.cap.chat.title": "İnteraktif sohbet", - "home.cap.chat.body": "/reset, /save, /temperature, /system komutları ve opsiyonel güvenlik routing'i ile akışlı REPL.", + "home.cap.chat.body": "/reset, /save, /temperature, /system komutları ile akışlı REPL. Yanıt-başına Llama Guard routing'i yaklaşan Pro CLI sürümü için planlanıyor.", "home.cap.export.title": "Export ve deploy", "home.cap.export.body": "6 kuantizasyon seviyesi ve SHA-256 manifest ile GGUF export. Tek komutta Ollama / vLLM / TGI / HF-Endpoints deployment config üret.", "home.cap.api.title": "Kütüphane API'si", - "home.cap.api.body": "from forgelm import … ile training, audit, safety eval ve verify-audit çağrılarını kendi Python pipeline'ınıza gömün — her CLI yüzeyi forgelm.__all__ üzerinden açılır.", + "home.cap.api.body": "from forgelm import … ile ForgeTrainer, audit_dataset, verify_audit_log ve verify_annex_iv_artifact çağrılarını kendi Python pipeline'ınıza gömün — public yüzey forgelm.__all__ içinde sıralanmıştır.", "home.cap.iso.title": "ISO 27001 / SOC 2 hizalaması", "home.cap.iso.body": "Deployer denetçisinin sorduğu audit izi, change-management, veri kökenleri ve tedarik zinciri kanıtları. Yazılım sertifikalı değil, hizalanmıştır.", "home.cap.gdpr.title": "GDPR hakları araçları", @@ -496,9 +496,9 @@ "home.use.domain.title": "Politika PDF'lerinden alan uzmanı", "home.use.domain.body": "Regülasyon korpusunuzu forgelm ingest'e bırakın, denetleyin ve alanınızın diliyle cevap veren bir modeli SFT'leyin — PII ingest sırasında, eğitimden önce maskelenir.", "home.use.support.title": "Müşteri destek asistanı", - "home.use.support.body": "Geçmiş ticket'larda SFT, agent thumbs-up/down geri bildirimde DPO, Llama Guard güvenlik routing'i, yardımseverlik düşerse otomatik geri alma. Tek komutla vLLM'e gönderim.", + "home.use.support.body": "Geçmiş ticket'larda SFT (eğer chosen/rejected agent geri bildirimi varsa DPO eklenebilir), Llama Guard güvenlik değerlendirme kapısı, yardımseverlik düşerse otomatik geri alma. Tek komutla vLLM'e gönderim.", "home.use.code.title": "Kod copilot fine-tune", - "home.use.code.body": "Çoklu veri seti karışımı (kendi repo'nuz + açık kod), SFT + ORPO, yerel inference için q4_k_m'de GGUF export. Sentetik veri hattı bir öğretmeni öğrencinize damıtır.", + "home.use.code.body": "Çoklu veri seti karışımı (kendi repo'nuz + açık kod) ile SFT (ORPO'yu sonradan zincirleyebilirsiniz), yerel inference için q4_k_m'de GGUF export. Sentetik veri hattı bir öğretmeni öğrencinize damıtır.", "home.use.reasoning.title": "GRPO ile akıl yürütme RL", "home.use.reasoning.body": "Yerleşik format/uzunluk ödülleri veya kendi reward fonksiyonunuz. Tek bir training loop satırı yazmadan grup-göreli politika optimizasyonu.", "home.cta.title": "Bir sonraki fine-tune'unuzu bir öğleden sonrasında gönderin.", @@ -560,7 +560,7 @@ "home.why.compliance.title": "Compliance ist ausgeliefert, nicht versprochen", "home.why.compliance.body": "Jeder Lauf erzeugt ein Annex-IV-Artefakt, das Daten → Training → Evaluierung → Sicherheit nachvollzieht. Artikel 9 Risikobewertung, Artikel 10 Datengovernance, Artikel 12 Aufzeichnungen — fest verdrahtet.", "home.why.autorevert.title": "Auto-Rollback bei Regression", - "home.why.autorevert.body": "Wenn ein Benchmark unter den Schwellwert fällt oder Llama Guard eine kritische Kategorie meldet, kehrt ForgeLM zum letzten guten Checkpoint zurück und erzeugt einen strukturierten Vorfallsdatensatz. CI/CD-integrierte Exit-Codes (0/1/2/3/4) für Pipeline-Gating.", + "home.why.autorevert.body": "Wenn ein Benchmark unter den Schwellwert fällt oder Llama Guard eine kritische Kategorie meldet, verwirft ForgeLM die trainierten Artefakte, beendet mit EXIT_EVAL_FAILURE (3) und erzeugt einen strukturierten Vorfallsdatensatz. CI/CD-integrierte Exit-Codes (0–5) für Pipeline-Gating.", "home.cap.eyebrow": "Funktionen", "home.cap.title": "Alles, was der moderne Post-Training-Stack braucht", "home.cap.lead": "Von Datenaufnahme über Evaluierung bis zu Deployment-Artefakten — ohne Notebook-Zeremonie.", @@ -579,11 +579,11 @@ "home.cap.vram.title": "VRAM-Fit-Check", "home.cap.vram.body": "Pre-Flight-Speicherschätzer. FITS / TIGHT / OOM / UNKNOWN-Verdikt mit konkreten Empfehlungen, bevor Sie einen langen Job einreichen.", "home.cap.chat.title": "Interaktiver Chat", - "home.cap.chat.body": "Streaming-REPL mit Befehlen /reset, /save, /temperature, /system und optionalem Sicherheits-Routing.", + "home.cap.chat.body": "Streaming-REPL mit Befehlen /reset, /save, /temperature, /system. Pro-Antwort-Llama-Guard-Routing ist für eine kommende Pro-CLI-Version geplant.", "home.cap.export.title": "Export & Deploy", "home.cap.export.body": "GGUF-Export mit 6 Quantisierungsstufen und SHA-256-Manifest. Generieren Sie Deployment-Konfigurationen für Ollama / vLLM / TGI / HF-Endpoints in einem Befehl.", "home.cap.api.title": "Bibliotheks-API", - "home.cap.api.body": "from forgelm import … und betten Sie Training-, Audit-, Safety-Eval- und Verify-Audit-Aufrufe in Ihre eigenen Python-Pipelines ein — jede CLI-Oberfläche ist über forgelm.__all__ verfügbar.", + "home.cap.api.body": "from forgelm import … und betten Sie ForgeTrainer-, audit_dataset-, verify_audit_log- und verify_annex_iv_artifact-Aufrufe in Ihre eigenen Python-Pipelines ein — die öffentliche Oberfläche ist in forgelm.__all__ aufgeführt.", "home.cap.iso.title": "ISO 27001 / SOC 2 Alignment", "home.cap.iso.body": "Audit-Trail, Change-Management, Daten-Lineage und Supply-Chain-Nachweise, nach denen der Auditor des Deployers fragt. Software ist aligned, nicht zertifiziert.", "home.cap.gdpr.title": "DSGVO-Rechtetooling", @@ -597,9 +597,9 @@ "home.use.domain.title": "Domänen-Experte aus Policy-PDFs", "home.use.domain.body": "Werfen Sie Ihren regulatorischen Korpus in forgelm ingest, auditieren Sie ihn und SFTen Sie ein Modell, das in der Sprache Ihrer Domäne antwortet — mit beim Ingest, vor dem Training, geschwärzten PII.", "home.use.support.title": "Kundensupport-Assistent", - "home.use.support.body": "SFT auf vergangenen Tickets, DPO auf Daumen-hoch/runter-Feedback der Agenten, Llama-Guard-Sicherheits-Routing, Auto-Rollback wenn die Hilfsbereitschaft sinkt. Mit einem Befehl an vLLM ausliefern.", + "home.use.support.body": "SFT auf vergangenen Tickets (und DPO auf gewählten/abgelehnten Agenten-Feedback, falls verfügbar), Llama-Guard-Sicherheitsbewertungs-Gate, Auto-Rollback wenn die Hilfsbereitschaft sinkt. Mit einem Befehl an vLLM ausliefern.", "home.use.code.title": "Code-Copilot Fine-Tune", - "home.use.code.body": "Multi-Dataset-Mix (Ihr Repo + offener Code), SFT + ORPO, GGUF-Export bei q4_k_m für lokale Inferenz. Synthetische Datenpipeline destilliert einen Lehrer in Ihren Schüler.", + "home.use.code.body": "Multi-Dataset-Mix (Ihr Repo + offener Code) mit SFT (ORPO ist ein Folgeschritt, den Sie verketten können), GGUF-Export bei q4_k_m für lokale Inferenz. Synthetische Datenpipeline destilliert einen Lehrer in Ihren Schüler.", "home.use.reasoning.title": "Reasoning-RL mit GRPO", "home.use.reasoning.body": "Eingebaute Format/Längen-Shaping-Rewards oder Ihre eigene Reward-Funktion. Group-Relative Policy Optimization, ohne eine einzige Trainings-Schleifen-Zeile zu schreiben.", "home.cta.title": "Liefern Sie Ihren nächsten Fine-Tune an einem Nachmittag aus.", @@ -661,7 +661,7 @@ "home.why.compliance.title": "La conformité est livrée, pas promise", "home.why.compliance.body": "Chaque exécution émet un artefact Annex IV traçant données → entraînement → évaluation → sécurité. Article 9 évaluation des risques, Article 10 gouvernance des données, Article 12 tenue de registres — câblés.", "home.why.autorevert.title": "Rollback automatique en cas de régression", - "home.why.autorevert.body": "Si un benchmark passe sous le plancher ou si Llama Guard signale une catégorie critique, ForgeLM revient au dernier bon checkpoint et émet un enregistrement d'incident structuré. Codes de sortie intégrés à CI/CD (0/1/2/3/4) pour le gating de pipeline.", + "home.why.autorevert.body": "Si un benchmark passe sous le plancher ou si Llama Guard signale une catégorie critique, ForgeLM jette les artefacts entraînés, sort avec EXIT_EVAL_FAILURE (3) et émet un enregistrement d'incident structuré. Codes de sortie intégrés à CI/CD (0–5) pour le gating de pipeline.", "home.cap.eyebrow": "Capacités", "home.cap.title": "Tout ce dont la pile post-training moderne a besoin", "home.cap.lead": "De l'ingestion de données à l'évaluation jusqu'aux artefacts de déploiement — sans cérémonie de notebook.", @@ -680,11 +680,11 @@ "home.cap.vram.title": "Vérification VRAM", "home.cap.vram.body": "Estimateur de mémoire pré-vol. Verdict FITS / TIGHT / OOM / UNKNOWN avec recommandations concrètes avant de soumettre un long job.", "home.cap.chat.title": "Chat interactif", - "home.cap.chat.body": "REPL en streaming avec commandes /reset, /save, /temperature, /system et routing de sécurité optionnel.", + "home.cap.chat.body": "REPL en streaming avec commandes /reset, /save, /temperature, /system. Le routing Llama Guard par réponse est prévu pour une prochaine version de la CLI Pro.", "home.cap.export.title": "Export & déploiement", "home.cap.export.body": "Export GGUF avec 6 niveaux de quantisation et manifest SHA-256. Générez des configurations de déploiement Ollama / vLLM / TGI / HF-Endpoints en une commande.", "home.cap.api.title": "API bibliothèque", - "home.cap.api.body": "from forgelm import … et intégrez les appels training, audit, safety eval et verify-audit dans vos propres pipelines Python — chaque surface CLI est exposée via forgelm.__all__.", + "home.cap.api.body": "from forgelm import … et intégrez les appels ForgeTrainer, audit_dataset, verify_audit_log et verify_annex_iv_artifact dans vos propres pipelines Python — la surface publique est listée dans forgelm.__all__.", "home.cap.iso.title": "Alignement ISO 27001 / SOC 2", "home.cap.iso.body": "Piste d'audit, gestion du changement, lignée des données et preuves de chaîne logistique demandées par l'auditeur du déployeur. Le logiciel est aligné, pas certifié.", "home.cap.gdpr.title": "Outils de droits RGPD", @@ -698,9 +698,9 @@ "home.use.domain.title": "Expert métier à partir de PDF de politiques", "home.use.domain.body": "Déposez votre corpus réglementaire dans forgelm ingest, auditez-le, et fine-tunez en SFT un modèle qui répond avec la voix de votre domaine — avec PII masqués à l'ingestion, avant l'entraînement.", "home.use.support.title": "Assistant de support client", - "home.use.support.body": "SFT sur tickets passés, DPO sur feedbacks pouce-en-haut/bas des agents, routing de sécurité Llama Guard, rollback automatique si la serviabilité baisse. Livraison à vLLM en une commande.", + "home.use.support.body": "SFT sur tickets passés (et DPO sur feedbacks choisis/rejetés des agents si disponibles), gate d'évaluation sécurité Llama Guard, rollback automatique si la serviabilité baisse. Livraison à vLLM en une commande.", "home.use.code.title": "Fine-tune copilote de code", - "home.use.code.body": "Mix multi-datasets (votre repo + code ouvert), SFT + ORPO, export GGUF en q4_k_m pour inférence locale. Pipeline de données synthétiques distille un teacher dans votre student.", + "home.use.code.body": "Mix multi-datasets (votre repo + code ouvert) avec SFT (l'ORPO est une étape de suite que vous pouvez chaîner), export GGUF en q4_k_m pour inférence locale. Pipeline de données synthétiques distille un teacher dans votre student.", "home.use.reasoning.title": "RL de raisonnement avec GRPO", "home.use.reasoning.body": "Récompenses de format/longueur intégrées ou votre propre fonction de récompense. Group-Relative Policy Optimization sans écrire une seule ligne de boucle d'entraînement.", "home.cta.title": "Livrez votre prochain fine-tune en un après-midi.", @@ -762,7 +762,7 @@ "home.why.compliance.title": "El cumplimiento se entrega, no se promete", "home.why.compliance.body": "Cada ejecución emite un artefacto Annex IV que rastrea datos → entrenamiento → evaluación → seguridad. Artículo 9 evaluación de riesgos, Artículo 10 gobernanza de datos, Artículo 12 mantenimiento de registros — integrados.", "home.why.autorevert.title": "Reversión automática ante regresión", - "home.why.autorevert.body": "Cuando un benchmark cae por debajo del piso o Llama Guard marca una categoría crítica, ForgeLM regresa al último checkpoint bueno y emite un registro de incidente estructurado. Códigos de salida integrados con CI/CD (0/1/2/3/4) para el gating de pipeline.", + "home.why.autorevert.body": "Cuando un benchmark cae por debajo del piso o Llama Guard marca una categoría crítica, ForgeLM descarta los artefactos entrenados, sale con EXIT_EVAL_FAILURE (3) y emite un registro de incidente estructurado. Códigos de salida integrados con CI/CD (0–5) para el gating de pipeline.", "home.cap.eyebrow": "Capacidades", "home.cap.title": "Todo lo que el stack moderno de post-training necesita", "home.cap.lead": "Desde la ingestión de datos hasta la evaluación y los artefactos de despliegue — sin ceremonia de notebook.", @@ -781,11 +781,11 @@ "home.cap.vram.title": "Comprobación VRAM", "home.cap.vram.body": "Estimador de memoria pre-vuelo. Veredicto FITS / TIGHT / OOM / UNKNOWN con recomendaciones concretas antes de enviar un trabajo largo.", "home.cap.chat.title": "Chat interactivo", - "home.cap.chat.body": "REPL en streaming con comandos /reset, /save, /temperature, /system y routing de seguridad opcional.", + "home.cap.chat.body": "REPL en streaming con comandos /reset, /save, /temperature, /system. El routing Llama Guard por respuesta está planeado para una próxima versión de la CLI Pro.", "home.cap.export.title": "Export y despliegue", "home.cap.export.body": "Export GGUF con 6 niveles de cuantización y manifest SHA-256. Genere configuraciones de despliegue para Ollama / vLLM / TGI / HF-Endpoints en un solo comando.", "home.cap.api.title": "API de biblioteca", - "home.cap.api.body": "from forgelm import … y embeba llamadas de training, audit, safety eval y verify-audit dentro de sus propios pipelines de Python — cada superficie CLI se expone vía forgelm.__all__.", + "home.cap.api.body": "from forgelm import … y embeba llamadas a ForgeTrainer, audit_dataset, verify_audit_log y verify_annex_iv_artifact dentro de sus propios pipelines de Python — la superficie pública se enumera en forgelm.__all__.", "home.cap.iso.title": "Alineación con ISO 27001 / SOC 2", "home.cap.iso.body": "Pista de auditoría, gestión del cambio, linaje de datos y evidencias de cadena de suministro que pide el auditor del implementador. El software está alineado, no certificado.", "home.cap.gdpr.title": "Herramientas de derechos RGPD", @@ -799,9 +799,9 @@ "home.use.domain.title": "Experto de dominio a partir de PDFs regulatorios", "home.use.domain.body": "Suelte su corpus regulatorio en forgelm ingest, audítelo y haga SFT a un modelo que responda con la voz de su dominio — con PII enmascarado en la ingestión, antes del entrenamiento.", "home.use.support.title": "Asistente de soporte al cliente", - "home.use.support.body": "SFT sobre tickets pasados, DPO sobre feedback pulgar arriba/abajo de agentes, routing de seguridad Llama Guard, reversión automática si la utilidad baja. Despliegue a vLLM con un solo comando.", + "home.use.support.body": "SFT sobre tickets pasados (y DPO sobre feedback elegido/rechazado de agentes si está disponible), puerta de evaluación de seguridad Llama Guard, reversión automática si la utilidad baja. Despliegue a vLLM con un solo comando.", "home.use.code.title": "Fine-tune de copiloto de código", - "home.use.code.body": "Mezcla multi-dataset (su repo + código abierto), SFT + ORPO, export GGUF en q4_k_m para inferencia local. La pipeline de datos sintéticos destila un teacher en su student.", + "home.use.code.body": "Mezcla multi-dataset (su repo + código abierto) con SFT (ORPO es un paso posterior que puede encadenar), export GGUF en q4_k_m para inferencia local. La pipeline de datos sintéticos destila un teacher en su student.", "home.use.reasoning.title": "RL de razonamiento con GRPO", "home.use.reasoning.body": "Recompensas de format/length integradas o su propia función de recompensa. Group-Relative Policy Optimization sin escribir una sola línea de bucle de entrenamiento.", "home.cta.title": "Despliegue su próximo fine-tune en una tarde.", @@ -863,7 +863,7 @@ "home.why.compliance.title": "合规是交付,而非承诺", "home.why.compliance.body": "每次运行都生成一个 Annex IV 工件,追踪数据 → 训练 → 评估 → 安全。Article 9 风险评估、Article 10 数据治理、Article 12 记录保存 — 全部内置。", "home.why.autorevert.title": "回归时自动回滚", - "home.why.autorevert.body": "当 benchmark 跌破阈值或 Llama Guard 标记关键类别时,ForgeLM 回滚到上一个良好 checkpoint 并发出结构化事件记录。用于 pipeline 把控的、与 CI/CD 集成的退出码 (0/1/2/3/4)。", + "home.why.autorevert.body": "当 benchmark 跌破阈值或 Llama Guard 标记关键类别时,ForgeLM 丢弃训练产物,以 EXIT_EVAL_FAILURE (3) 退出,并发出结构化事件记录。用于 pipeline 把控的、与 CI/CD 集成的退出码 (0–5)。", "home.cap.eyebrow": "能力", "home.cap.title": "现代后训练栈所需的一切", "home.cap.lead": "从数据 ingest 到评估再到部署工件 — 无需 notebook 仪式感。", @@ -882,11 +882,11 @@ "home.cap.vram.title": "VRAM 适配检查", "home.cap.vram.body": "起飞前显存估算。在你提交一个长任务之前给出 FITS / TIGHT / OOM / UNKNOWN 判定和具体建议。", "home.cap.chat.title": "交互式聊天", - "home.cap.chat.body": "支持 /reset、/save、/temperature、/system 命令以及可选安全路由的流式 REPL。", + "home.cap.chat.body": "支持 /reset、/save、/temperature、/system 命令的流式 REPL。每响应 Llama Guard 路由计划在即将推出的 Pro CLI 版本中提供。", "home.cap.export.title": "Export & 部署", "home.cap.export.body": "GGUF export 6 个量化级别加 SHA-256 manifest。一条命令生成 Ollama / vLLM / TGI / HF-Endpoints 部署配置。", "home.cap.api.title": "库 API", - "home.cap.api.body": "from forgelm import …,在你自己的 Python 管道中嵌入 training、audit、safety eval 和 verify-audit 调用 — 每个 CLI 表面都通过 forgelm.__all__ 公开。", + "home.cap.api.body": "from forgelm import …,在你自己的 Python 管道中嵌入 ForgeTrainer、audit_dataset、verify_audit_log 和 verify_annex_iv_artifact 调用 — 公开表面在 forgelm.__all__ 中列出。", "home.cap.iso.title": "ISO 27001 / SOC 2 对齐", "home.cap.iso.body": "部署方审计员要求的审计轨迹、变更管理、数据沿袭和供应链证据。软件是对齐的,不是认证的。", "home.cap.gdpr.title": "GDPR 权利工具", @@ -900,9 +900,9 @@ "home.use.domain.title": "从政策 PDF 中得到的领域专家", "home.use.domain.body": "把你的法规语料投入 forgelm ingest、审计它、然后 SFT 一个能用你领域口吻回答的模型 — PII 在 ingest 时,训练之前,就被屏蔽。", "home.use.support.title": "客户支持助手", - "home.use.support.body": "在过往工单上 SFT、在 agent 点赞/点踩反馈上 DPO、Llama Guard 安全路由、有用度下降时自动回滚。一条命令交付到 vLLM。", + "home.use.support.body": "在过往工单上 SFT (有 chosen/rejected 工单反馈时可叠加 DPO),Llama Guard 安全评估 gate,有用度下降时自动回滚。一条命令交付到 vLLM。", "home.use.code.title": "代码 copilot 微调", - "home.use.code.body": "多数据集混合 (你的 repo + 开源代码)、SFT + ORPO、本地推理用 q4_k_m 的 GGUF export。合成数据 pipeline 把 teacher 蒸馏到你的 student 中。", + "home.use.code.body": "多数据集混合 (你的 repo + 开源代码) 的 SFT (ORPO 是可链式的后续步骤),本地推理用 q4_k_m 的 GGUF export。合成数据 pipeline 把 teacher 蒸馏到你的 student 中。", "home.use.reasoning.title": "用 GRPO 做推理 RL", "home.use.reasoning.body": "内置 format/length 塑形奖励或你自己的奖励函数。无需写一行训练循环就能做 Group-Relative Policy Optimization。", "home.cta.title": "在一个下午内交付下一次微调。", @@ -943,7 +943,7 @@ "features.eval.revert.title": "Auto-revert", "features.eval.revert.body": "If loss, benchmark, or safety thresholds fail, ForgeLM rolls back to the last-good checkpoint and emits a structured incident record.", "features.eval.trend.title": "Trend tracking", - "features.eval.trend.body": "Cross-run safety / quality history. See if a category quietly drifts before it crosses the threshold.", + "features.eval.trend.body": "Cross-run safety history (safety_trend.jsonl per output_dir). See if a category quietly drifts before it crosses the threshold.", "features.eval.exit.title": "Exit codes", "features.eval.exit.body": "0 / 1 / 2 / 3 / 4 — a public contract for CI/CD. Fail-loud is the default; no silent || true.", "features.data.heading": "Data ingestion & audit", @@ -967,7 +967,7 @@ "features.ent.heading": "Enterprise & MLOps", "features.ent.body": "Built for pipelines: containers, webhooks, structured outputs, air-gap, model cards.", "features.ent.webhook.title": "Webhook notifications", - "features.ent.webhook.body": "Slack and Teams alerts on training start, success, failure, auto-revert. Structured payloads — pipe to your incident tool.", + "features.ent.webhook.body": "Slack, Teams, Discord, or any HTTP webhook receiver — alerts on training start, success, failure, auto-revert. Structured payloads — pipe to your incident tool.", "features.ent.exp.title": "Experiment tracking", "features.ent.exp.body": "W&B, MLflow, TensorBoard via report_to. Pluggable, not hardcoded. Use what your team already uses.", "features.ent.json.title": "JSON output mode", @@ -975,7 +975,7 @@ "features.ent.airgap.title": "Air-gap operation", "features.ent.airgap.body": "No mandatory internet calls. Pre-cache models / datasets / tokenizers; run training in an isolated network with full feature parity.", "features.ent.docker.title": "Docker & compose", - "features.ent.docker.body": "Official Dockerfile and docker-compose.yml. Reproducible runs across local, on-prem, and cloud — same image, same behaviour.", + "features.ent.docker.body": "Official Dockerfile and docker-compose.yaml. Reproducible runs across local, on-prem, and cloud — same image, same behaviour.", "features.ent.card.title": "Model card auto-gen", "features.ent.card.body": "HuggingFace-compatible README with metrics, benchmarks, training config snapshot. Drop-in for HF Hub publish.", "features.ent.cost.title": "GPU cost estimation", @@ -985,9 +985,9 @@ "features.ent.merge.title": "Model merging", "features.ent.merge.body": "TIES, DARE, SLERP, linear merge of multiple adapters via --merge. Compose specialists into a generalist.", "features.ent.api.title": "Library API", - "features.ent.api.body": "from forgelm import … exposes train, audit, safety-eval, and verify-audit as Python functions (every CLI surface is in forgelm.__all__) for embedding inside other pipelines.", + "features.ent.api.body": "from forgelm import … exposes ForgeTrainer, audit_dataset, verify_audit_log, verify_annex_iv_artifact, mask_pii, and friends as Python functions (the full public surface is enumerated in forgelm.__all__) for embedding inside other pipelines.", "features.ent.doctor.title": "Environment diagnostics", - "features.ent.doctor.body": "forgelm doctor probes Python, GPU, drivers, optional extras, disk space, network, and prints a green/yellow/red triage report.", + "features.ent.doctor.body": "forgelm doctor probes Python, GPU, drivers, optional extras, disk space, network, and prints a pass / warn / fail triage report.", "features.ent.cache.title": "Air-gap pre-cache", "features.ent.cache.body": "forgelm cache-models and forgelm cache-tasks stage HuggingFace models and lm-eval-harness datasets for offline runs.", "features.ent.workers.title": "Deterministic audit workers", @@ -995,7 +995,7 @@ "features.ent.sbom.title": "Supply-chain security", "features.ent.sbom.body": "CycloneDX 1.5 SBOM emitted per release tag, plus pip-audit nightly and bandit in CI.", "features.eval.safetyeval.title": "Standalone safety eval", - "features.eval.safetyeval.body": "forgelm safety-eval runs Llama Guard against any JSONL/Parquet/HF dataset and emits the same Article 9 risk artefact as a full run.", + "features.eval.safetyeval.body": "forgelm safety-eval runs Llama Guard against a --probes JSONL prompt file (or --default-probes for the bundled 50-prompt set) and emits a per-category safety summary (safety_results.json + safety_trend.jsonl).", "features.gov.heading": "Compliance & GDPR tooling", "features.gov.body": "EU AI Act Articles 9-17, GDPR Article 15 + 17, ISO 27001 / SOC 2 Type II alignment evidence.", "features.gov.approve.title": "Article 14 staging gate", @@ -1003,9 +1003,9 @@ "features.gov.purge.title": "GDPR Article 17 erasure", "features.gov.purge.body": "forgelm purge drops a data-subject's rows from training corpora and stamps the deletion in the append-only audit log.", "features.gov.access.title": "GDPR Article 15 access", - "features.gov.access.body": "forgelm reverse-pii walks the PII redaction map back to surface every row in which a data subject appears.", + "features.gov.access.body": "forgelm reverse-pii scans masked JSONL corpora for forensic substring or salted-digest matches that surface every row in which a data-subject identifier appears.", "features.gov.annex.title": "Annex IV verifier", - "features.gov.annex.body": "forgelm verify-annex-iv validates a generated artefact bundle against the Annex IV schema and the run's audit chain.", + "features.gov.annex.body": "forgelm verify-annex-iv validates the Annex IV §1-9 schema completeness and the bundle's manifest_hash for tampering detection. (Audit-chain integrity is the separate forgelm verify-audit command.)", "features.gov.gguf.title": "GGUF integrity verifier", "features.gov.gguf.body": "forgelm verify-gguf re-checks the SHA-256 + size manifest stamped at export time before you ship a quantized model.", "features.gov.iso.title": "ISO 27001 / SOC 2 alignment", @@ -1046,7 +1046,7 @@ "features.eval.revert.title": "Otomatik geri alma", "features.eval.revert.body": "Loss, benchmark veya güvenlik eşikleri başarısız olursa ForgeLM son-iyi checkpoint'e döner ve yapılandırılmış olay kaydı üretir.", "features.eval.trend.title": "Trend izleme", - "features.eval.trend.body": "Koşular arası güvenlik / kalite geçmişi. Bir kategori eşiği aşmadan önce sessizce kayıyor mu görün.", + "features.eval.trend.body": "Koşular arası güvenlik geçmişi (output_dir başına safety_trend.jsonl). Bir kategori eşiği aşmadan önce sessizce kayıyor mu görün.", "features.eval.exit.title": "Exit kodları", "features.eval.exit.body": "0 / 1 / 2 / 3 / 4 — CI/CD için kamuya açık kontrat. Sessiz başarısızlık yok; || true yasak.", "features.data.heading": "Veri ingest'i ve denetimi", @@ -1070,7 +1070,7 @@ "features.ent.heading": "Kurumsal ve MLOps", "features.ent.body": "Hatlar için yapıldı: konteynerler, webhook'lar, yapılandırılmış çıktı, air-gap, model card.", "features.ent.webhook.title": "Webhook bildirimleri", - "features.ent.webhook.body": "Eğitim başlangıcında, başarıda, hatada, otomatik geri almada Slack ve Teams alert'leri. Yapılandırılmış payload — incident aracınıza bağlayın.", + "features.ent.webhook.body": "Eğitim başlangıcında, başarıda, hatada, otomatik geri almada Slack, Teams, Discord veya herhangi bir HTTP webhook alıcısı — alert'ler. Yapılandırılmış payload — incident aracınıza bağlayın.", "features.ent.exp.title": "Deney takibi", "features.ent.exp.body": "report_to üzerinden W&B, MLflow, TensorBoard. Pluggable, hardcoded değil. Ekibinizin zaten kullandığını kullanın.", "features.ent.json.title": "JSON çıktı modu", @@ -1078,7 +1078,7 @@ "features.ent.airgap.title": "Air-gap operasyonu", "features.ent.airgap.body": "Zorunlu internet çağrısı yok. Model / veri seti / tokenizer'ı önceden cache'leyin; izole ağda tam özellik paritesiyle koşun.", "features.ent.docker.title": "Docker ve compose", - "features.ent.docker.body": "Resmi Dockerfile ve docker-compose.yml. Yerel, on-prem ve cloud arasında yeniden üretilebilir koşular — aynı imaj, aynı davranış.", + "features.ent.docker.body": "Resmi Dockerfile ve docker-compose.yaml. Yerel, on-prem ve cloud arasında yeniden üretilebilir koşular — aynı imaj, aynı davranış.", "features.ent.card.title": "Otomatik Model Card", "features.ent.card.body": "Metrikleri, benchmark'ları ve training config snapshot'ını içeren HuggingFace uyumlu README. HF Hub yayını için drop-in.", "features.ent.cost.title": "GPU maliyet tahmini", @@ -1088,9 +1088,9 @@ "features.ent.merge.title": "Model birleştirme", "features.ent.merge.body": "--merge ile birden çok adapter için TIES, DARE, SLERP, lineer birleştirme. Uzmanları genel bir modelde birleştirin.", "features.ent.api.title": "Kütüphane API'si", - "features.ent.api.body": "from forgelm import …; train, audit, safety-eval ve verify-audit'i Python fonksiyonu olarak başka pipeline'lara gömmek için sunar (her CLI yüzeyi forgelm.__all__'ta).", + "features.ent.api.body": "from forgelm import …; ForgeTrainer, audit_dataset, verify_audit_log, verify_annex_iv_artifact, mask_pii ve diğer dostlarını Python fonksiyonu olarak başka pipeline'lara gömmek için sunar (tam public yüzey forgelm.__all__'ta).", "features.ent.doctor.title": "Ortam teşhis", - "features.ent.doctor.body": "forgelm doctor Python, GPU, sürücüleri, opsiyonel extra'ları, disk alanını ve ağı kontrol edip yeşil/sarı/kırmızı bir triaj raporu basar.", + "features.ent.doctor.body": "forgelm doctor Python, GPU, sürücüleri, opsiyonel extra'ları, disk alanını ve ağı kontrol edip pass / warn / fail triaj raporu basar.", "features.ent.cache.title": "Air-gap ön-önbellek", "features.ent.cache.body": "forgelm cache-models ve forgelm cache-tasks HuggingFace modellerini ve lm-eval-harness veri setlerini offline çalıştırma için sahneler.", "features.ent.workers.title": "Deterministik audit worker'ları", @@ -1098,7 +1098,7 @@ "features.ent.sbom.title": "Tedarik zinciri güvenliği", "features.ent.sbom.body": "Her release tag için CycloneDX 1.5 SBOM, ayrıca gecelik pip-audit ve CI'da bandit.", "features.eval.safetyeval.title": "Bağımsız safety eval", - "features.eval.safetyeval.body": "forgelm safety-eval herhangi bir JSONL/Parquet/HF veri seti üzerinde Llama Guard koşturur ve tam çalışmadakiyle aynı Madde 9 risk artefakt'ını üretir.", + "features.eval.safetyeval.body": "forgelm safety-eval bir --probes JSONL prompt dosyası üzerinde (veya bundled 50-promptluk set için --default-probes) Llama Guard koşturur ve kategori-başına güvenlik özeti üretir (safety_results.json + safety_trend.jsonl).", "features.gov.heading": "Uyumluluk ve GDPR araçları", "features.gov.body": "EU AI Act Madde 9-17, GDPR Madde 15 + 17, ISO 27001 / SOC 2 Type II hizalama kanıtı.", "features.gov.approve.title": "Madde 14 staging kapısı", @@ -1106,9 +1106,9 @@ "features.gov.purge.title": "GDPR Madde 17 silme", "features.gov.purge.body": "forgelm purge bir veri sahibinin satırlarını eğitim corpus'undan düşürür ve silmeyi append-only audit log'a damgalar.", "features.gov.access.title": "GDPR Madde 15 erişim", - "features.gov.access.body": "forgelm reverse-pii PII redaksiyon haritasını geri yürüyerek bir veri sahibinin geçtiği her satırı yüzeye çıkarır.", + "features.gov.access.body": "forgelm reverse-pii maskelenmiş JSONL corpus'larını tarayarak veri sahibi tanımlayıcısının düz-metin kalıntılarına ya da tuzlanmış-digest eşleşmelerine bakar ve geçtiği her satırı yüzeye çıkarır.", "features.gov.annex.title": "Annex IV doğrulayıcı", - "features.gov.annex.body": "forgelm verify-annex-iv üretilmiş bir artefakt bundle'ını Annex IV şemasına ve çalışmanın audit chain'ine karşı doğrular.", + "features.gov.annex.body": "forgelm verify-annex-iv Annex IV §1-9 şema tamlığını ve bundle'ın manifest_hash'ini tampering tespiti için doğrular. (Audit-chain bütünlüğü ayrı bir forgelm verify-audit komutudur.)", "features.gov.gguf.title": "GGUF bütünlük doğrulayıcı", "features.gov.gguf.body": "forgelm verify-gguf bir kuantize modeli sevk etmeden önce export sırasında damgalanan SHA-256 + boyut manifest'ini yeniden kontrol eder.", "features.gov.iso.title": "ISO 27001 / SOC 2 hizalaması", @@ -1149,7 +1149,7 @@ "features.eval.revert.title": "Auto-Rollback", "features.eval.revert.body": "Wenn Loss-, Benchmark- oder Sicherheitsschwellwerte verletzt werden, kehrt ForgeLM zum letzten guten Checkpoint zurück und erzeugt einen strukturierten Vorfallsdatensatz.", "features.eval.trend.title": "Trend-Tracking", - "features.eval.trend.body": "Lauf-übergreifende Sicherheits-/Qualitätshistorie. Sehen Sie, ob eine Kategorie stillschweigend driftet, bevor sie den Schwellwert überschreitet.", + "features.eval.trend.body": "Lauf-übergreifende Sicherheitshistorie (safety_trend.jsonl pro output_dir). Sehen Sie, ob eine Kategorie stillschweigend driftet, bevor sie den Schwellwert überschreitet.", "features.eval.exit.title": "Exit-Codes", "features.eval.exit.body": "0 / 1 / 2 / 3 / 4 — ein öffentlicher Vertrag für CI/CD. Fail-Loud ist Standard; kein stilles || true.", "features.data.heading": "Datenaufnahme & Audit", @@ -1173,7 +1173,7 @@ "features.ent.heading": "Enterprise & MLOps", "features.ent.body": "Gebaut für Pipelines: Container, Webhooks, strukturierte Ausgaben, Air-Gap, Model Cards.", "features.ent.webhook.title": "Webhook-Benachrichtigungen", - "features.ent.webhook.body": "Slack- und Teams-Alerts bei Trainingsstart, Erfolg, Fehlschlag, Auto-Rollback. Strukturierte Payloads — leiten Sie sie an Ihr Incident-Tool weiter.", + "features.ent.webhook.body": "Slack-, Teams-, Discord- oder beliebige HTTP-Webhook-Alerts bei Trainingsstart, Erfolg, Fehlschlag, Auto-Rollback. Strukturierte Payloads — leiten Sie sie an Ihr Incident-Tool weiter.", "features.ent.exp.title": "Experiment-Tracking", "features.ent.exp.body": "W&B, MLflow, TensorBoard via report_to. Pluggable, nicht hartkodiert. Nutzen Sie, was Ihr Team bereits verwendet.", "features.ent.json.title": "JSON-Ausgabemodus", @@ -1181,7 +1181,7 @@ "features.ent.airgap.title": "Air-Gap-Betrieb", "features.ent.airgap.body": "Keine zwingenden Internet-Aufrufe. Pre-Cache von Modellen / Datasets / Tokenizern; Training in einem isolierten Netzwerk mit voller Funktionsparität.", "features.ent.docker.title": "Docker & Compose", - "features.ent.docker.body": "Offizielles Dockerfile und docker-compose.yml. Reproduzierbare Läufe lokal, on-prem und in der Cloud — gleiches Image, gleiches Verhalten.", + "features.ent.docker.body": "Offizielles Dockerfile und docker-compose.yaml. Reproduzierbare Läufe lokal, on-prem und in der Cloud — gleiches Image, gleiches Verhalten.", "features.ent.card.title": "Model-Card-Auto-Gen", "features.ent.card.body": "HuggingFace-kompatibles README mit Metriken, Benchmarks, Training-Config-Snapshot. Drop-in für die HF-Hub-Veröffentlichung.", "features.ent.cost.title": "GPU-Kostenschätzung", @@ -1226,7 +1226,7 @@ "features.eval.revert.title": "Rollback automatique", "features.eval.revert.body": "Si les seuils de loss, benchmark ou sécurité échouent, ForgeLM revient au dernier bon checkpoint et émet un enregistrement d'incident structuré.", "features.eval.trend.title": "Suivi de tendance", - "features.eval.trend.body": "Historique sécurité / qualité inter-exécutions. Voyez si une catégorie dérive silencieusement avant de franchir le seuil.", + "features.eval.trend.body": "Historique sécurité inter-exécutions (safety_trend.jsonl par output_dir). Voyez si une catégorie dérive silencieusement avant de franchir le seuil.", "features.eval.exit.title": "Codes de sortie", "features.eval.exit.body": "0 / 1 / 2 / 3 / 4 — un contrat public pour CI/CD. Fail-loud par défaut ; pas de || true silencieux.", "features.data.heading": "Ingestion de données & audit", @@ -1250,7 +1250,7 @@ "features.ent.heading": "Entreprise & MLOps", "features.ent.body": "Conçu pour les pipelines : conteneurs, webhooks, sorties structurées, air-gap, model cards.", "features.ent.webhook.title": "Notifications webhook", - "features.ent.webhook.body": "Alertes Slack et Teams au démarrage, succès, échec, rollback automatique de l'entraînement. Payloads structurés — pipez-les vers votre outil d'incident.", + "features.ent.webhook.body": "Alertes Slack, Teams, Discord ou tout récepteur webhook HTTP au démarrage, succès, échec, rollback automatique de l'entraînement. Payloads structurés — pipez-les vers votre outil d'incident.", "features.ent.exp.title": "Suivi d'expériences", "features.ent.exp.body": "W&B, MLflow, TensorBoard via report_to. Pluggable, pas codé en dur. Utilisez ce que votre équipe utilise déjà.", "features.ent.json.title": "Mode de sortie JSON", @@ -1258,7 +1258,7 @@ "features.ent.airgap.title": "Fonctionnement air-gap", "features.ent.airgap.body": "Aucun appel internet obligatoire. Pré-cachez modèles / datasets / tokenizers ; lancez l'entraînement sur un réseau isolé avec une parité fonctionnelle complète.", "features.ent.docker.title": "Docker & compose", - "features.ent.docker.body": "Dockerfile officiel et docker-compose.yml. Exécutions reproductibles en local, on-prem et cloud — même image, même comportement.", + "features.ent.docker.body": "Dockerfile officiel et docker-compose.yaml. Exécutions reproductibles en local, on-prem et cloud — même image, même comportement.", "features.ent.card.title": "Génération auto de model card", "features.ent.card.body": "README compatible HuggingFace avec métriques, benchmarks, snapshot de la config d'entraînement. Drop-in pour la publication HF Hub.", "features.ent.cost.title": "Estimation du coût GPU", @@ -1303,7 +1303,7 @@ "features.eval.revert.title": "Reversión automática", "features.eval.revert.body": "Si fallan los umbrales de loss, benchmark o seguridad, ForgeLM regresa al último checkpoint bueno y emite un registro de incidente estructurado.", "features.eval.trend.title": "Seguimiento de tendencias", - "features.eval.trend.body": "Historial de seguridad / calidad entre ejecuciones. Vea si una categoría deriva silenciosamente antes de cruzar el umbral.", + "features.eval.trend.body": "Historial de seguridad entre ejecuciones (safety_trend.jsonl por output_dir). Vea si una categoría deriva silenciosamente antes de cruzar el umbral.", "features.eval.exit.title": "Códigos de salida", "features.eval.exit.body": "0 / 1 / 2 / 3 / 4 — un contrato público para CI/CD. Fail-loud por defecto; sin || true silencioso.", "features.data.heading": "Ingestión de datos y auditoría", @@ -1327,7 +1327,7 @@ "features.ent.heading": "Empresa y MLOps", "features.ent.body": "Construido para pipelines: contenedores, webhooks, salidas estructuradas, air-gap, model cards.", "features.ent.webhook.title": "Notificaciones webhook", - "features.ent.webhook.body": "Alertas en Slack y Teams al inicio, éxito, fallo o reversión automática del entrenamiento. Payloads estructurados — diríjalos a su herramienta de incidentes.", + "features.ent.webhook.body": "Alertas en Slack, Teams, Discord o cualquier receptor webhook HTTP al inicio, éxito, fallo o reversión automática del entrenamiento. Payloads estructurados — diríjalos a su herramienta de incidentes.", "features.ent.exp.title": "Seguimiento de experimentos", "features.ent.exp.body": "W&B, MLflow, TensorBoard vía report_to. Conectable, no hardcoded. Use lo que su equipo ya usa.", "features.ent.json.title": "Modo de salida JSON", @@ -1335,7 +1335,7 @@ "features.ent.airgap.title": "Operación air-gap", "features.ent.airgap.body": "Sin llamadas a internet obligatorias. Pre-cachée modelos / datasets / tokenizers; ejecute entrenamiento en una red aislada con paridad funcional completa.", "features.ent.docker.title": "Docker y compose", - "features.ent.docker.body": "Dockerfile oficial y docker-compose.yml. Ejecuciones reproducibles en local, on-prem y nube — misma imagen, mismo comportamiento.", + "features.ent.docker.body": "Dockerfile oficial y docker-compose.yaml. Ejecuciones reproducibles en local, on-prem y nube — misma imagen, mismo comportamiento.", "features.ent.card.title": "Auto-generación de model card", "features.ent.card.body": "README compatible con HuggingFace con métricas, benchmarks, snapshot de la config de entrenamiento. Drop-in para publicar en HF Hub.", "features.ent.cost.title": "Estimación de coste GPU", @@ -1380,7 +1380,7 @@ "features.eval.revert.title": "自动回滚", "features.eval.revert.body": "如果 loss、benchmark 或安全阈值不通过,ForgeLM 回滚到上一个良好 checkpoint 并发出结构化事件记录。", "features.eval.trend.title": "趋势跟踪", - "features.eval.trend.body": "跨运行的安全 / 质量历史。在某个类别跨过阈值之前看出它是否在悄悄漂移。", + "features.eval.trend.body": "跨运行的安全历史 (每个 output_dir 的 safety_trend.jsonl)。在某个类别跨过阈值之前看出它是否在悄悄漂移。", "features.eval.exit.title": "退出码", "features.eval.exit.body": "0 / 1 / 2 / 3 / 4 — 给 CI/CD 的公共契约。默认大声失败;不允许悄悄的 || true。", "features.data.heading": "数据 ingest & 审计", @@ -1404,7 +1404,7 @@ "features.ent.heading": "企业 & MLOps", "features.ent.body": "为 pipeline 构建:容器、webhook、结构化输出、气隙、model card。", "features.ent.webhook.title": "Webhook 通知", - "features.ent.webhook.body": "训练开始、成功、失败、自动回滚时的 Slack 与 Teams 警报。结构化 payload — 接到你的事件工具。", + "features.ent.webhook.body": "训练开始、成功、失败、自动回滚时的 Slack、Teams、Discord 或任意 HTTP webhook 接收器的警报。结构化 payload — 接到你的事件工具。", "features.ent.exp.title": "实验跟踪", "features.ent.exp.body": "通过 report_to 接入 W&B、MLflow、TensorBoard。可插拔,不写死。用你团队已经在用的。", "features.ent.json.title": "JSON 输出模式", @@ -1412,7 +1412,7 @@ "features.ent.airgap.title": "气隙运行", "features.ent.airgap.body": "无强制网络调用。预先缓存模型 / 数据集 / tokenizer;在隔离网络中以完整功能对等运行训练。", "features.ent.docker.title": "Docker & compose", - "features.ent.docker.body": "官方 Dockerfile 和 docker-compose.yml。本地、本地化部署、云端可复现运行 — 同一镜像,同一行为。", + "features.ent.docker.body": "官方 Dockerfile 和 docker-compose.yaml。本地、本地化部署、云端可复现运行 — 同一镜像,同一行为。", "features.ent.card.title": "Model card 自动生成", "features.ent.card.body": "HuggingFace 兼容的 README,含指标、benchmark、训练 config 快照。HF Hub 发布的 drop-in。", "features.ent.cost.title": "GPU 成本估算", @@ -2997,9 +2997,9 @@ "quickstart.spotlight.lead": "L'assistant intégré au navigateur pose sept questions, écrit un YAML valide et vous laisse l'exécuter en une commande. Aucune installation, votre progression est enregistrée localement.", "quickstart.spotlight.cta_primary": "Lancer l'assistant", "quickstart.spotlight.cta_secondary":"Suivre les cinq étapes", - "quickstart.spotlight.meta1": "≈ 3 minutes", - "quickstart.spotlight.meta2": "6 langues", - "quickstart.spotlight.meta3": "Aucune installation requise", + "quickstart.spotlight.meta1": "9 étapes guidées", + "quickstart.spotlight.meta2": "Aperçu YAML en direct", + "quickstart.spotlight.meta3": "Préréglages EU AI Act", "quickstart.spotlight.stage1.label": "Répondez à 9 questions", "quickstart.spotlight.stage1.snippet": "cas d'usage · trainer · modèle · données · risque", "quickstart.spotlight.stage2.label": "Recevez un YAML valide", @@ -3392,9 +3392,9 @@ "quickstart.spotlight.lead": "El asistente integrado en el navegador hace siete preguntas, escribe un YAML válido y le deja ejecutarlo con un solo comando. Sin instalación, su progreso queda guardado localmente.", "quickstart.spotlight.cta_primary": "Lanzar el asistente", "quickstart.spotlight.cta_secondary":"Recorrer los cinco pasos", - "quickstart.spotlight.meta1": "≈ 3 minutos", - "quickstart.spotlight.meta2": "6 idiomas", - "quickstart.spotlight.meta3": "Sin instalación", + "quickstart.spotlight.meta1": "9 pasos guiados", + "quickstart.spotlight.meta2": "Vista previa YAML en vivo", + "quickstart.spotlight.meta3": "Preajustes EU AI Act", "quickstart.spotlight.stage1.label": "Responda 9 preguntas", "quickstart.spotlight.stage1.snippet": "caso de uso · trainer · modelo · datos · riesgo", "quickstart.spotlight.stage2.label": "Obtenga un YAML válido", @@ -3787,9 +3787,9 @@ "quickstart.spotlight.lead": "浏览器内向导问七个问题,写出有效的 YAML,让你用一条命令运行。无需安装,进度本地保存。", "quickstart.spotlight.cta_primary": "启动向导", "quickstart.spotlight.cta_secondary":"按五步走", - "quickstart.spotlight.meta1": "约 3 分钟", - "quickstart.spotlight.meta2": "6 种语言", - "quickstart.spotlight.meta3": "无需安装", + "quickstart.spotlight.meta1": "9 个引导步骤", + "quickstart.spotlight.meta2": "实时 YAML 预览", + "quickstart.spotlight.meta3": "EU AI Act 预设", "quickstart.spotlight.stage1.label": "回答 9 个问题", "quickstart.spotlight.stage1.snippet": "用例 · trainer · 模型 · 数据 · 风险", "quickstart.spotlight.stage2.label": "得到一份有效 YAML", @@ -3812,30 +3812,30 @@ "compliance.art10.title": "Data & data governance", "compliance.art10.body": "Quality, relevance, representativeness criteria. Bias detection, PII redaction, cross-split leakage gate. Optional Presidio ML-NER PII layer and Croissant 1.0 dataset card emitted alongside the audit. Every audit report becomes an Article 10 evidence document.", "compliance.art11.title": "Technical documentation", - "compliance.art11.body": "Annex IV's eight required sections — auto-populated from the run: general description, detailed system, monitoring, risk management, lifecycle, standards, declaration, post-market.", + "compliance.art11.body": "Annex IV's nine required §1-9 sections — auto-populated from the run: system identification, intended purpose, components, computational resources, data governance, technical documentation, monitoring & logging, performance metrics, risk management.", "compliance.art12.title": "Record-keeping (logs)", - "compliance.art12.body": "Append-only event log over training start, eval gates, auto-revert decisions, model export. SHA-256 over each artifact for tamper-evidence.", + "compliance.art12.body": "Append-only event log over training start/end, eval gates, auto-revert decisions, human-approval gates, GDPR Article 17 erasure, Article 15 access-request queries, and model export. HMAC + SHA-256 chain over each event for tamper-evidence.", "compliance.art13.title": "Transparency", "compliance.art13.body": "Auto-generated model card lists capabilities, intended use, training data summary, evaluation results, known limitations. Drop-in for HuggingFace Hub README.", "compliance.art14.title": "Human oversight", - "compliance.art14.body": "Optional compliance.human_approval: true moves the trained checkpoint into a staging directory; forgelm approve / forgelm reject + forgelm approvals drive the dual-controlled sign-off, all stamped into the audit log.", + "compliance.art14.body": "Optional evaluation.require_human_approval: true moves the trained checkpoint into a staging directory; forgelm approve / forgelm reject + forgelm approvals drive the dual-controlled sign-off, all stamped into the audit log.", "compliance.art15.title": "Accuracy & robustness", "compliance.art15.body": "Benchmark gates per-task floor; if the post-train number drops below the floor, the run fails (exit 3). Cybersecurity: secrets / PII at ingest, dependency CVE awareness.", "compliance.art1617.title": "Conformity & QMS", - "compliance.art1617.body": "QMS SOPs in docs/qms/ cover release, incident response, data-source onboarding. Conformity declaration template generated from the run's Annex IV.", + "compliance.art1617.body": "QMS SOPs in docs/qms/ cover model training, data management, incident response, and change management — plus access control, encryption-at-rest, risk treatment, and Statement of Applicability. Conformity declaration template generated from the run's Annex IV.", "compliance.gdpr.title": "PII redaction at ingest", "compliance.gdpr.body": "--pii-mask redacts emails, phones, credit cards (Luhn), IBAN, national IDs (TR/DE/FR/US-SSN) before chunks land in JSONL — Article 5(1)(c) data minimisation enforced upstream.", "compliance.gdpr15.title": "Right of access", - "compliance.gdpr15.body": "forgelm reverse-pii walks the redaction map back from a data-subject identifier to every row of every split where that subject appears, satisfying the access-request side of the GDPR's data-subject rights.", + "compliance.gdpr15.body": "forgelm reverse-pii scans masked JSONL corpora for plaintext residuals or salted SHA-256 digests of a data-subject identifier and reports every row of every split where that subject appears, satisfying the access-request side of the GDPR's data-subject rights.", "compliance.gdpr17.title": "Right to erasure", - "compliance.gdpr17.body": "forgelm purge deletes a data-subject's rows from training corpora, stamps the deletion in the append-only audit log, and updates the data-provenance manifest so post-deletion runs reflect the new dataset state.", + "compliance.gdpr17.body": "forgelm purge deletes a data-subject's rows from training corpora and stamps data.erasure_requested + data.erasure_completed events into the append-only audit log so post-deletion runs are forensically linked to the erasure event.", "compliance.iso.eyebrow": "ISO 27001 · SOC 2 Type II", "compliance.iso.title": "Aligned, not certified", "compliance.iso.lead": "Software cannot be ISO 27001 or SOC 2 certified — only organisations can. ForgeLM is aligned with the controls an auditor asks the deployer about: it produces the audit-trail, change-management, data-lineage, and supply-chain evidence on every run, ready to drop into your audit binder.", "compliance.iso.audit.title": "Audit trail", "compliance.iso.audit.body": "Append-only audit_log.jsonl per run with HMAC + SHA-256 hash chain + genesis manifest sidecar. forgelm verify-audit validates the chain end-to-end. HMAC integrity is active when FORGELM_AUDIT_SECRET is KMS-managed and rotated per output-dir lifecycle.", "compliance.iso.change.title":"Change control", - "compliance.iso.change.body": "Article 14 staging gate (forgelm approve / forgelm reject) plus human_approval.required/granted/rejected audit events plus compliance.config_hash stamped per run — every model promotion is dual-controlled and forensically attributed.", + "compliance.iso.change.body": "Article 14 staging gate (forgelm approve / forgelm reject) plus human_approval.required/granted/rejected audit events plus forgelm verify-audit chain integrity — every model promotion is dual-controlled and forensically attributed.", "compliance.iso.lineage.title":"Data lineage", "compliance.iso.lineage.body":"data_provenance.json (SHA-256 fingerprint + size + mtime + HF Hub revision pin) and data_governance_report.json (collection method, annotation process, known biases, personal-data flag, DPIA completion) cover the lineage questions an auditor asks first.", "compliance.iso.supply.title":"Supply chain", @@ -3871,30 +3871,30 @@ "compliance.art10.title": "Veri ve veri yönetimi", "compliance.art10.body": "Kalite, uygunluk, temsiliyet kriterleri. Bias tespiti, PII redaksiyonu, split-arası sızıntı kapısı. Opsiyonel Presidio ML-NER PII katmanı ve audit ile birlikte yayınlanan Croissant 1.0 dataset card. Her audit raporu Madde 10 kanıt belgesi olur.", "compliance.art11.title": "Teknik dokümantasyon", - "compliance.art11.body": "Annex IV'ün sekiz zorunlu bölümü — koşudan otomatik doldurulur: genel açıklama, detay sistem, izleme, risk yönetimi, yaşam döngüsü, standartlar, beyan, post-market.", + "compliance.art11.body": "Annex IV'ün §1-9 dokuz zorunlu bölümü — koşudan otomatik doldurulur: sistem kimliği, amaçlanan kullanım, bileşenler, hesaplama kaynakları, veri yönetişimi, teknik dokümantasyon, izleme ve loglama, performans metrikleri, risk yönetimi.", "compliance.art12.title": "Kayıt tutma (loglar)", - "compliance.art12.body": "Eğitim başlangıcı, eval kapıları, otomatik geri alma kararları, model export üzerinde append-only event log. Her artifact üzerinde tamper-evidence için SHA-256.", + "compliance.art12.body": "Eğitim başlangıç/bitiş, eval kapıları, otomatik geri alma kararları, insan-onay kapıları, GDPR Madde 17 silme, Madde 15 erişim-talebi sorguları ve model export üzerinde append-only event log. Tamper-evidence için her olay üzerinde HMAC + SHA-256 zinciri.", "compliance.art13.title": "Şeffaflık", "compliance.art13.body": "Otomatik üretilen model card; yetenekleri, amaçlanan kullanımı, eğitim veri özetini, değerlendirme sonuçlarını, bilinen sınırlamaları listeler. HuggingFace Hub README için drop-in.", "compliance.art14.title": "İnsan gözetimi", - "compliance.art14.body": "Opsiyonel compliance.human_approval: true eğitilen checkpoint'i staging dizinine taşır; forgelm approve / forgelm reject + forgelm approvals ikili-kontrollü onayı yürütür ve hepsi audit log'a damgalanır.", + "compliance.art14.body": "Opsiyonel evaluation.require_human_approval: true eğitilen checkpoint'i staging dizinine taşır; forgelm approve / forgelm reject + forgelm approvals ikili-kontrollü onayı yürütür ve hepsi audit log'a damgalanır.", "compliance.art15.title": "Doğruluk ve sağlamlık", "compliance.art15.body": "Görev başı taban için benchmark kapısı; post-train sayısı tabanın altına düşerse koşu başarısız (exit 3). Siber güvenlik: ingest'te sırlar / PII, bağımlılık CVE farkındalığı.", "compliance.art1617.title": "Uygunluk ve QMS", - "compliance.art1617.body": "docs/qms/'deki QMS SOP'ları sürüm yönetimi, incident response, veri kaynağı onboarding'i kapsar. Uygunluk beyanı şablonu koşunun Annex IV'ünden üretilir.", + "compliance.art1617.body": "docs/qms/'deki QMS SOP'ları model eğitimi, veri yönetimi, incident response ve değişiklik yönetimini kapsar — ayrıca erişim kontrolü, durağan-veri şifrelemesi, risk tedavisi ve Uygulanabilirlik Beyanı. Uygunluk beyanı şablonu koşunun Annex IV'ünden üretilir.", "compliance.gdpr.title": "Ingest'te PII redaksiyonu", "compliance.gdpr.body": "--pii-mask chunk'lar JSONL'a düşmeden e-posta, telefon, kredi kartı (Luhn), IBAN, ulusal kimlik (TR/DE/FR/US-SSN) maskeler — Madde 5(1)(c) data minimisation upstream'de uygulanır.", "compliance.gdpr15.title": "Erişim hakkı", - "compliance.gdpr15.body": "forgelm reverse-pii bir veri sahibi tanımlayıcısından redaksiyon haritasını geri yürüyerek o öznenin geçtiği her split'in her satırını yüzeye çıkarır; GDPR veri sahibi haklarının erişim-talebi tarafını karşılar.", + "compliance.gdpr15.body": "forgelm reverse-pii maskelenmiş JSONL corpus'larında bir veri sahibi tanımlayıcısının düz-metin kalıntılarını veya tuzlanmış SHA-256 digest'lerini arar ve o öznenin geçtiği her split'in her satırını raporlar; GDPR veri sahibi haklarının erişim-talebi tarafını karşılar.", "compliance.gdpr17.title": "Silme hakkı", - "compliance.gdpr17.body": "forgelm purge bir veri sahibinin satırlarını eğitim corpus'undan siler, silmeyi append-only audit log'a damgalar ve data-provenance manifest'ini günceller; silme sonrası çalışmalar yeni dataset durumunu yansıtır.", + "compliance.gdpr17.body": "forgelm purge bir veri sahibinin satırlarını eğitim corpus'undan siler ve append-only audit log'a data.erasure_requested + data.erasure_completed olaylarını damgalar; silme sonrası çalışmalar adli olarak silme olayına bağlanır.", "compliance.iso.eyebrow": "ISO 27001 · SOC 2 Type II", "compliance.iso.title": "Hizalanmış, sertifikalı değil", "compliance.iso.lead": "Yazılım ISO 27001 veya SOC 2 sertifikalı olamaz — sadece organizasyonlar olabilir. ForgeLM, denetçinin deployer'a sorduğu kontrollerle hizalıdır: her çalışmada audit izi, change-management, veri kökenleri ve tedarik zinciri kanıtlarını üretir; doğrudan audit klasörünüze düşer.", "compliance.iso.audit.title": "Audit izi", "compliance.iso.audit.body": "Her çalışma için HMAC + SHA-256 hash zinciri + genesis manifest sidecar ile append-only audit_log.jsonl. forgelm verify-audit zinciri uçtan uca doğrular. HMAC bütünlüğü FORGELM_AUDIT_SECRET KMS-yönetimli olduğunda ve output-dir yaşam-döngüsüne göre rotate edildiğinde aktiftir.", "compliance.iso.change.title":"Değişiklik kontrolü", - "compliance.iso.change.body": "Madde 14 staging kapısı (forgelm approve / forgelm reject) artı human_approval.required/granted/rejected audit olayları artı çalışma başına damgalanan compliance.config_hash — her model terfi ikili kontrol altındadır ve adli olarak atfedilebilir.", + "compliance.iso.change.body": "Madde 14 staging kapısı (forgelm approve / forgelm reject) artı human_approval.required/granted/rejected audit olayları artı forgelm verify-audit zincir bütünlüğü — her model terfi ikili kontrol altındadır ve adli olarak atfedilebilir.", "compliance.iso.lineage.title":"Veri kökenleri", "compliance.iso.lineage.body":"data_provenance.json (SHA-256 parmak izi + boyut + mtime + HF Hub revision pin) ve data_governance_report.json (toplama yöntemi, anotasyon süreci, bilinen bias, kişisel-veri bayrağı, DPIA tamamlanması) — denetçinin önce sorduğu köken sorularını kapsar.", "compliance.iso.supply.title":"Tedarik zinciri", @@ -3930,17 +3930,17 @@ "compliance.art10.title": "Daten & Datengovernance", "compliance.art10.body": "Kriterien für Qualität, Relevanz, Repräsentativität. Bias-Erkennung, PII-Schwärzung, Split-übergreifender Leak-Check. Optionale Presidio-ML-NER-PII-Schicht und Croissant-1.0-Datensatzkarte, die zusammen mit dem Audit ausgegeben wird. Jeder Audit-Bericht wird zu einem Artikel-10-Beweisdokument.", "compliance.art11.title": "Technische Dokumentation", - "compliance.art11.body": "Die acht Pflichtabschnitte von Annex IV — automatisch aus dem Lauf befüllt: allgemeine Beschreibung, detailliertes System, Monitoring, Risikomanagement, Lebenszyklus, Normen, Erklärung, Post-Market.", + "compliance.art11.body": "Die neun Pflichtabschnitte §1-9 von Annex IV — automatisch aus dem Lauf befüllt: Systemidentifikation, Zweckbestimmung, Komponenten, Rechenressourcen, Daten-Governance, technische Dokumentation, Monitoring & Logging, Leistungskennzahlen, Risikomanagement.", "compliance.art12.title": "Aufzeichnungen (Logs)", - "compliance.art12.body": "Append-only-Event-Log über Trainingsstart, Eval-Gates, Auto-Rollback-Entscheidungen, Modell-Export. SHA-256 über jedes Artefakt zur Manipulationssicherheit.", + "compliance.art12.body": "Append-only-Event-Log über Trainings-Start/-Ende, Eval-Gates, Auto-Rollback-Entscheidungen, Human-Approval-Gates, DSGVO-Artikel-17-Löschung, Artikel-15-Auskunftsanfragen und Modell-Export. HMAC- + SHA-256-Kette über jedes Event zur Manipulationssicherheit.", "compliance.art13.title": "Transparenz", "compliance.art13.body": "Automatisch generierte Model Card listet Fähigkeiten, beabsichtigten Einsatz, Trainingsdaten-Zusammenfassung, Evaluierungsergebnisse, bekannte Einschränkungen. Drop-in für das HuggingFace-Hub-README.", "compliance.art14.title": "Menschliche Aufsicht", - "compliance.art14.body": "Optionales compliance.human_approval: true blockiert die Modellfreigabe, bis ein Mensch unterschreibt. Webhook zu Ihrem Incident-Tool; signierte Freigabe landet im Audit-Log.", + "compliance.art14.body": "Optionales evaluation.require_human_approval: true verschiebt den trainierten Checkpoint in ein Staging-Verzeichnis; forgelm approve / forgelm reject + forgelm approvals steuern die dual-kontrollierte Freigabe, alles im Audit-Log gestempelt.", "compliance.art15.title": "Genauigkeit & Robustheit", "compliance.art15.body": "Benchmark-Gate mit Schwellwert pro Task; fällt die Post-Train-Zahl unter den Schwellwert, schlägt der Lauf fehl (Exit 3). Cybersicherheit: Secrets / PII beim Ingest, Bewusstsein für Dependency-CVEs.", "compliance.art1617.title": "Konformität & QMS", - "compliance.art1617.body": "QMS-SOPs in docs/qms/ decken Release, Incident Response und Datenquellen-Onboarding ab. Konformitätserklärungs-Vorlage wird aus dem Annex IV des Laufs generiert.", + "compliance.art1617.body": "QMS-SOPs in docs/qms/ decken Model-Training, Datenmanagement, Incident Response und Änderungsmanagement ab — plus Zugriffskontrolle, Verschlüsselung-im-Ruhezustand, Risikobehandlung und Statement of Applicability. Konformitätserklärungs-Vorlage wird aus dem Annex IV des Laufs generiert.", "compliance.gdpr.title": "PII-Schwärzung beim Ingest", "compliance.gdpr.body": "--pii-mask schwärzt E-Mails, Telefone, Kreditkarten (Luhn), IBAN, nationale IDs (TR/DE/FR/US-SSN), bevor Chunks im JSONL landen — Artikel 5(1)(c) Datenminimierung wird upstream durchgesetzt.", "compliance.artifact.eyebrow":"Was Sie auf der Festplatte erhalten", @@ -3973,17 +3973,17 @@ "compliance.art10.title": "Données & gouvernance des données", "compliance.art10.body": "Critères de qualité, pertinence, représentativité. Détection de biais, masquage des PII, gate de fuite inter-split. Couche PII Presidio ML-NER optionnelle et carte de jeu de données Croissant 1.0 émise aux côtés de l'audit. Chaque rapport d'audit devient un document de preuve pour l'Article 10.", "compliance.art11.title": "Documentation technique", - "compliance.art11.body": "Les huit sections obligatoires d'Annex IV — auto-remplies à partir de l'exécution : description générale, système détaillé, surveillance, gestion des risques, cycle de vie, normes, déclaration, post-marché.", + "compliance.art11.body": "Les neuf sections obligatoires §1-9 d'Annex IV — auto-remplies à partir de l'exécution : identification du système, finalité prévue, composants, ressources de calcul, gouvernance des données, documentation technique, surveillance & journalisation, métriques de performance, gestion des risques.", "compliance.art12.title": "Tenue de registres (logs)", - "compliance.art12.body": "Log d'événements append-only sur le démarrage de l'entraînement, les gates d'évaluation, les décisions de rollback, l'export du modèle. SHA-256 sur chaque artefact pour la preuve d'inviolabilité.", + "compliance.art12.body": "Log d'événements append-only sur le démarrage/fin de l'entraînement, les gates d'évaluation, les décisions de rollback, les gates d'approbation humaine, l'effacement RGPD article 17, les requêtes d'accès article 15, et l'export du modèle. Chaîne HMAC + SHA-256 sur chaque événement pour la preuve d'inviolabilité.", "compliance.art13.title": "Transparence", "compliance.art13.body": "Model card auto-générée listant capacités, usage prévu, résumé des données d'entraînement, résultats d'évaluation, limitations connues. Drop-in pour le README HuggingFace Hub.", "compliance.art14.title": "Supervision humaine", - "compliance.art14.body": "Optionnel compliance.human_approval: true bloque la promotion du modèle jusqu'à ce qu'un humain signe. Webhook vers votre outil d'incident ; l'approbation signée atterrit dans le log d'audit.", + "compliance.art14.body": "Optionnel evaluation.require_human_approval: true déplace le checkpoint entraîné dans un répertoire de staging ; forgelm approve / forgelm reject + forgelm approvals pilotent la signature sous double contrôle, le tout estampillé dans le log d'audit.", "compliance.art15.title": "Précision & robustesse", "compliance.art15.body": "Gate de benchmark avec plancher par tâche ; si le chiffre post-entraînement passe sous le plancher, l'exécution échoue (exit 3). Cybersécurité : secrets / PII à l'ingestion, conscience des CVE de dépendances.", "compliance.art1617.title": "Conformité & QMS", - "compliance.art1617.body": "Les SOP QMS dans docs/qms/ couvrent la release, la réponse aux incidents, l'onboarding des sources de données. Modèle de déclaration de conformité généré à partir de l'Annex IV de l'exécution.", + "compliance.art1617.body": "Les SOP QMS dans docs/qms/ couvrent l'entraînement du modèle, la gestion des données, la réponse aux incidents et la gestion du changement — plus le contrôle d'accès, le chiffrement au repos, le traitement des risques et la Déclaration d'applicabilité. Modèle de déclaration de conformité généré à partir de l'Annex IV de l'exécution.", "compliance.gdpr.title": "Masquage PII à l'ingestion", "compliance.gdpr.body": "--pii-mask masque e-mails, téléphones, cartes de crédit (Luhn), IBAN, identifiants nationaux (TR/DE/FR/US-SSN) avant que les chunks n'atterrissent dans le JSONL — la minimisation des données de l'Article 5(1)(c) est appliquée en amont.", "compliance.artifact.eyebrow":"Ce que vous obtenez sur disque", @@ -4016,17 +4016,17 @@ "compliance.art10.title": "Datos y gobernanza de datos", "compliance.art10.body": "Criterios de calidad, relevancia, representatividad. Detección de sesgos, redacción de PII, puerta de fuga entre splits. Capa PII de Presidio ML-NER opcional y tarjeta de dataset Croissant 1.0 emitida junto con la auditoría. Cada informe de auditoría se convierte en un documento probatorio del Artículo 10.", "compliance.art11.title": "Documentación técnica", - "compliance.art11.body": "Las ocho secciones obligatorias del Annex IV — auto-rellenadas desde la ejecución: descripción general, sistema detallado, monitorización, gestión de riesgos, ciclo de vida, normas, declaración, post-mercado.", + "compliance.art11.body": "Las nueve secciones obligatorias §1-9 del Annex IV — auto-rellenadas desde la ejecución: identificación del sistema, propósito previsto, componentes, recursos computacionales, gobernanza de datos, documentación técnica, monitorización y registro, métricas de rendimiento, gestión de riesgos.", "compliance.art12.title": "Registro (logs)", - "compliance.art12.body": "Log de eventos append-only sobre inicio de entrenamiento, puertas de evaluación, decisiones de reversión automática, export del modelo. SHA-256 sobre cada artefacto para evidencia de manipulación.", + "compliance.art12.body": "Log de eventos append-only sobre inicio/fin de entrenamiento, puertas de evaluación, decisiones de reversión automática, puertas de aprobación humana, borrado RGPD artículo 17, consultas de acceso artículo 15 y export del modelo. Cadena HMAC + SHA-256 sobre cada evento para evidencia de manipulación.", "compliance.art13.title": "Transparencia", "compliance.art13.body": "Model card auto-generada que lista capacidades, uso previsto, resumen de datos de entrenamiento, resultados de evaluación, limitaciones conocidas. Drop-in para el README de HuggingFace Hub.", "compliance.art14.title": "Supervisión humana", - "compliance.art14.body": "Opcional compliance.human_approval: true bloquea la promoción del modelo hasta que un humano firme. Webhook a su herramienta de incidentes; la aprobación firmada cae en el log de auditoría.", + "compliance.art14.body": "Opcional evaluation.require_human_approval: true mueve el checkpoint entrenado a un directorio de staging; forgelm approve / forgelm reject + forgelm approvals conducen la firma de doble control, todo estampado en el log de auditoría.", "compliance.art15.title": "Precisión y robustez", "compliance.art15.body": "Puerta de benchmark con piso por tarea; si el número post-entrenamiento cae bajo el piso, la ejecución falla (exit 3). Ciberseguridad: secretos / PII en la ingestión, conciencia de CVE de dependencias.", "compliance.art1617.title": "Conformidad y QMS", - "compliance.art1617.body": "Los SOPs QMS en docs/qms/ cubren release, respuesta a incidentes, onboarding de fuentes de datos. La plantilla de declaración de conformidad se genera a partir del Annex IV de la ejecución.", + "compliance.art1617.body": "Los SOPs QMS en docs/qms/ cubren entrenamiento del modelo, gestión de datos, respuesta a incidentes y gestión de cambios — más control de acceso, cifrado en reposo, tratamiento de riesgos y Declaración de Aplicabilidad. La plantilla de declaración de conformidad se genera a partir del Annex IV de la ejecución.", "compliance.gdpr.title": "Redacción PII en la ingestión", "compliance.gdpr.body": "--pii-mask redacta emails, teléfonos, tarjetas de crédito (Luhn), IBAN, IDs nacionales (TR/DE/FR/US-SSN) antes de que los chunks lleguen al JSONL — la minimización de datos del Artículo 5(1)(c) se aplica aguas arriba.", "compliance.artifact.eyebrow":"Lo que obtiene en disco", @@ -4059,17 +4059,17 @@ "compliance.art10.title": "数据 & 数据治理", "compliance.art10.body": "质量、相关性、代表性标准。偏见检测、PII 屏蔽、split 间泄漏 gate。可选的 Presidio ML-NER PII 层,以及与审计一同输出的 Croissant 1.0 数据集卡片。每份审计报告都成为 Article 10 的证据文档。", "compliance.art11.title": "技术文档", - "compliance.art11.body": "Annex IV 的八个必需章节 — 由运行自动填充:总体描述、详细系统、监控、风险管理、生命周期、标准、声明、上市后。", + "compliance.art11.body": "Annex IV §1-9 的九个必需章节 — 由运行自动填充:系统标识、预期目的、组件、计算资源、数据治理、技术文档、监控与日志、性能指标、风险管理。", "compliance.art12.title": "记录保存 (日志)", - "compliance.art12.body": "覆盖训练开始、eval gate、自动回滚决策、模型 export 的 append-only 事件日志。每个工件上做 SHA-256 以便防篡改。", + "compliance.art12.body": "覆盖训练开始/结束、eval gate、自动回滚决策、人工审批 gate、GDPR 第 17 条删除、第 15 条访问请求查询和模型 export 的 append-only 事件日志。每个事件上做 HMAC + SHA-256 链以防篡改。", "compliance.art13.title": "透明度", "compliance.art13.body": "自动生成的 model card 列出能力、预期用途、训练数据摘要、评估结果、已知限制。对 HuggingFace Hub README 即插即用。", "compliance.art14.title": "人工监督", - "compliance.art14.body": "可选的 compliance.human_approval: true 在人工签字之前阻止模型晋升。Webhook 到你的事件工具;签字后的批准落入审计日志。", + "compliance.art14.body": "可选的 evaluation.require_human_approval: true 将训练好的 checkpoint 移到 staging 目录;forgelm approve / forgelm reject + forgelm approvals 驱动双重控制的签字流程,全部盖戳到审计日志。", "compliance.art15.title": "准确性 & 鲁棒性", "compliance.art15.body": "Benchmark gate 按任务设阈值;如果 post-train 数值跌破阈值,运行失败 (exit 3)。网络安全:ingest 时的 secrets / PII、依赖 CVE 意识。", "compliance.art1617.title": "符合性 & QMS", - "compliance.art1617.body": "docs/qms/ 中的 QMS SOP 涵盖发布、事件响应、数据源 onboarding。符合性声明模板从运行的 Annex IV 生成。", + "compliance.art1617.body": "docs/qms/ 中的 QMS SOP 涵盖模型训练、数据管理、事件响应、变更管理 — 以及访问控制、静态加密、风险处置和适用性声明。符合性声明模板从运行的 Annex IV 生成。", "compliance.gdpr.title": "ingest 时的 PII 屏蔽", "compliance.gdpr.body": "--pii-mask 在 chunk 进入 JSONL 之前屏蔽邮箱、电话、信用卡 (Luhn)、IBAN、国家身份证 (TR/DE/FR/US-SSN) — Article 5(1)(c) 数据最小化在上游执行。", "compliance.artifact.eyebrow":"你在磁盘上得到什么", @@ -4300,7 +4300,7 @@ "privacy.header.eyebrow": "Privacy", "privacy.header.title": "Privacy policy", "privacy.header.lead": "ForgeLM is open-source software you run on your own infrastructure. This page covers what this website does — not the toolkit itself.", - "privacy.body": "

Short version

This site is static HTML. We do not run analytics, tracking pixels, advertising trackers, A/B tests, fingerprinting, or any third-party telemetry. Two third-party requests happen here: Google Fonts is fetched on every page load (the Inter and JetBrains Mono typefaces), and Formspree only when you submit the contact form. Both are detailed below; nothing else.

What we collect

From normal browsing

Nothing. No cookies are set. Two values are stored in localStorage on your device:

  • forgelm-lang — your chosen interface language (en, tr, de, fr, es, zh).
  • forgelm-theme — your chosen colour theme (dark or light).

Both stay on your device and are never transmitted. Clearing your browser storage removes them.

From the contact form

When you submit the form on the Contact page, the values you typed (name, email, organisation, topic, subject, message) are sent to Formspree, which forwards them to the project maintainer. Formspree's privacy practices are governed by their own policy at formspree.io/legal/privacy-policy.

Your email is used only to reply to your message. We do not add it to a mailing list, do not share it with third parties, and do not retain it after the conversation is resolved.

Hosting

This site is served as static files. Your browser will exchange standard request headers (User-Agent, Accept-Language, IP address) with whichever CDN / web server hosts the files; that exchange is governed by the hosting provider's privacy practices and is not under ForgeLM's control. We do not log this traffic ourselves.

Third-party assets

The site loads:

  • Google Fonts — the Inter and JetBrains Mono typefaces. Google may log requests as described in their privacy policy.
  • Formspree — only when you submit the contact form, as described above.

Nothing else is loaded from a third party. There is no Google Analytics, no Facebook pixel, no Hotjar, no Mixpanel, no whatever-the-current-tracker is.

Children

This site is aimed at developers, ML engineers, and compliance professionals. It is not directed at children under 16.

Your rights (GDPR / KVKK)

If you believe we hold personal data about you and you want it accessed, corrected, or deleted, write to us via the contact form (or GitHub Issues) and we will respond within 30 days. Because the only personal data we hold is what you sent in the contact form, deletion is straightforward: we delete the email thread.

The toolkit itself

The ForgeLM Python package — installed via pip install forgelm==0.5.5 — does not phone home. It does not collect telemetry, does not send usage data anywhere, and works offline (air-gap-capable). Models, datasets, and tokenizers you reference in your YAML config are downloaded only at your explicit request and only from sources you specify.

Data-subject rights you can ship in your own pipeline

If your organisation deploys ForgeLM, the toolkit gives you concrete primitives for the data-subject rights side of GDPR: forgelm reverse-pii walks the redaction map back from a subject identifier to every row where they appear (Article 15 access), and forgelm purge deletes those rows from your training corpora and stamps the deletion in the append-only audit log (Article 17 erasure). On top of that, ForgeLM is aligned with ISO 27001 / SOC 2 Type II controls — see the Compliance page for the full evidence map.

Changes

If we update this page, the date at the top changes. Material changes are noted in the project's CHANGELOG.md.

Questions

Open the contact form or a GitHub Discussion.

" + "privacy.body": "

Short version

This site is static HTML. We do not run analytics, tracking pixels, advertising trackers, A/B tests, fingerprinting, or any third-party telemetry. Three third-party requests can happen here: Google Fonts is fetched on every page load (the Inter and JetBrains Mono typefaces); Mermaid is loaded from jsDelivr on the Guide page only (to render diagrams); and Formspree only when you submit the contact form. All three are detailed below; nothing else.

What we collect

From normal browsing

Nothing. No cookies are set. Two values are stored in localStorage on your device:

  • forgelm-lang — your chosen interface language (en, tr, de, fr, es, zh).
  • forgelm-theme — your chosen colour theme (dark or light).

Both stay on your device and are never transmitted. Clearing your browser storage removes them.

From the contact form

When you submit the form on the Contact page, the values you typed (name, email, organisation, topic, subject, message) are sent to Formspree, which forwards them to the project maintainer. Formspree's privacy practices are governed by their own policy at formspree.io/legal/privacy-policy.

Your email is used only to reply to your message. We do not add it to a mailing list, do not share it with third parties, and do not retain it after the conversation is resolved.

Hosting

This site is served as static files. Your browser will exchange standard request headers (User-Agent, Accept-Language, IP address) with whichever CDN / web server hosts the files; that exchange is governed by the hosting provider's privacy practices and is not under ForgeLM's control. We do not log this traffic ourselves.

Third-party assets

The site loads:

  • Google Fonts — the Inter and JetBrains Mono typefaces. Google may log requests as described in their privacy policy.
  • jsDelivr — Mermaid 10.9.4 is loaded on the Guide page only to render the architecture / flow diagrams. jsDelivr may log requests as described in their privacy policy.
  • Formspree — only when you submit the contact form, as described above.

Nothing else is loaded from a third party. There is no Google Analytics, no Facebook pixel, no Hotjar, no Mixpanel, no whatever-the-current-tracker is.

Children

This site is aimed at developers, ML engineers, and compliance professionals. It is not directed at children under 16.

Your rights (GDPR / KVKK)

If you believe we hold personal data about you and you want it accessed, corrected, or deleted, write to us via the contact form (or GitHub Issues) and we will respond within 30 days. Because the only personal data we hold is what you sent in the contact form, deletion is straightforward: we delete the email thread.

The toolkit itself

The ForgeLM Python package — installed via pip install forgelm==0.5.5 — does not phone home. It does not collect telemetry, does not send usage data anywhere, and works offline (air-gap-capable). Models, datasets, and tokenizers you reference in your YAML config are downloaded only at your explicit request and only from sources you specify.

Data-subject rights you can ship in your own pipeline

If your organisation deploys ForgeLM, the toolkit gives you concrete primitives for the data-subject rights side of GDPR: forgelm reverse-pii scans the corpus for plaintext residuals or salted-digest matches of a subject identifier and reports every row where they appear (Article 15 access), and forgelm purge deletes those rows from your training corpora and stamps the deletion in the append-only audit log (Article 17 erasure). On top of that, ForgeLM is aligned with ISO 27001 / SOC 2 Type II controls — see the Compliance page for the full evidence map.

Changes

If we update this page, the date at the top changes. Material changes are noted in the project's CHANGELOG.md.

Questions

Open the contact form or a GitHub Discussion.

" }); Object.assign(T.tr, { @@ -4309,7 +4309,7 @@ "privacy.header.eyebrow": "Gizlilik", "privacy.header.title": "Gizlilik politikası", "privacy.header.lead": "ForgeLM, kendi altyapınızda çalıştırdığınız açık kaynaklı bir yazılımdır. Bu sayfa web sitesinin ne yaptığını açıklar — toolkit'i değil.", - "privacy.body": "

Kısa versiyon

Bu site statik HTML'dir. Analitik, izleme pixel'i, reklam takipçisi, A/B test, fingerprinting veya üçüncü-taraf telemetri çalıştırmıyoruz. Burada iki üçüncü-taraf isteği gerçekleşir: Google Fonts her sayfa yüklemesinde alınır (Inter ve JetBrains Mono yazıtipleri) ve Formspree yalnızca iletişim formunu gönderdiğinizde. Her ikisi de aşağıda detaylıdır; başka hiçbir şey yok.

Neler topluyoruz

Normal gezinmeden

Hiçbir şey. Hiçbir cookie set edilmez. Cihazınızda yalnızca iki değer localStorage'a yazılır:

  • forgelm-lang — seçtiğiniz arayüz dili (en, tr, de, fr, es, zh).
  • forgelm-theme — seçtiğiniz renk teması (dark veya light).

İkisi de cihazınızda kalır ve hiçbir yere iletilmez. Tarayıcı depolamasını temizlemek bunları siler.

İletişim formundan

İletişim sayfasındaki formu gönderdiğinizde girdiğiniz değerler (isim, e-posta, organizasyon, konu başlığı, konu, mesaj) Formspree'ye gönderilir; Formspree de bunları proje yürütücüsüne iletir. Formspree'nin gizlilik uygulamaları kendi politikasıyla yönetilir: formspree.io/legal/privacy-policy.

E-postanız yalnızca mesajınıza cevap vermek için kullanılır. Mailing listesine eklenmez, üçüncü taraflarla paylaşılmaz, görüşme sona erdikten sonra saklanmaz.

Hosting

Site statik dosya olarak servis edilir. Tarayıcınız, dosyaları barındıran CDN / web sunucusuyla standart istek header'larını (User-Agent, Accept-Language, IP) takas eder; bu takas hosting sağlayıcısının gizlilik uygulamalarıyla yönetilir ve ForgeLM'in kontrolünde değildir. Bu trafiği biz kendimiz loglamıyoruz.

Üçüncü-taraf varlıklar

Site şunları yükler:

  • Google Fonts — Inter ve JetBrains Mono yazıtipleri. Google istekleri kendi gizlilik politikasında açıklandığı gibi loglayabilir.
  • Formspree — yalnızca iletişim formunu gönderdiğinizde, yukarıda açıklandığı gibi.

Üçüncü taraftan başka hiçbir şey yüklenmez. Google Analytics yok, Facebook pixel yok, Hotjar yok, Mixpanel yok, güncel-takipçi-her-neyse yok.

Çocuklar

Bu site geliştiricilere, ML mühendislerine ve compliance profesyonellerine yöneliktir. 16 yaş altındaki çocukları hedeflemez.

Haklarınız (KVKK / GDPR)

Hakkınızda kişisel veri tuttuğumuzu düşünüyor ve erişim, düzeltme veya silme istiyorsanız iletişim formundan (veya GitHub Issues üzerinden) bize yazın; 30 gün içinde döneriz. Tuttuğumuz tek kişisel veri iletişim formundan gönderdikleriniz olduğu için silme kolay: e-posta thread'ini sileriz.

Toolkit'in kendisi

pip install forgelm==0.5.5 ile kurulan ForgeLM Python paketi eve telefon etmez. Telemetri toplamaz, kullanım verisi göndermez, offline çalışır (air-gap uyumlu). YAML konfigürasyonunuzda referans verdiğiniz modeller, veri setleri ve tokenizer'lar yalnızca açık talebinizle ve yalnızca sizin belirttiğiniz kaynaklardan indirilir.

Kendi pipeline'ınızda sevk edebileceğiniz veri sahibi hakları

Organizasyonunuz ForgeLM dağıtıyorsa, toolkit GDPR'ın veri sahibi hakları tarafına somut primitifler sunar: forgelm reverse-pii bir özne tanımlayıcısından redaksiyon haritasını geri yürüyerek geçtiği her satırı yüzeye çıkarır (Madde 15 erişim) ve forgelm purge bu satırları eğitim corpus'unuzdan siler ve silmeyi append-only audit log'a damgalar (Madde 17 silme). Üstüne, ForgeLM ISO 27001 / SOC 2 Type II kontrolleriyle hizalıdır — tam kanıt haritası için Uyumluluk sayfasına bakın.

Değişiklikler

Bu sayfayı güncellersek yukarıdaki tarih değişir. Maddi değişiklikler projenin CHANGELOG.md'sine düşer.

Sorular

İletişim formunu veya bir GitHub Discussion'ı açın.

" + "privacy.body": "

Kısa versiyon

Bu site statik HTML'dir. Analitik, izleme pixel'i, reklam takipçisi, A/B test, fingerprinting veya üçüncü-taraf telemetri çalıştırmıyoruz. Burada üç üçüncü-taraf isteği gerçekleşebilir: Google Fonts her sayfa yüklemesinde alınır (Inter ve JetBrains Mono yazıtipleri); Mermaid yalnızca Rehber sayfasında jsDelivr'dan yüklenir (diyagramları render etmek için); ve Formspree yalnızca iletişim formunu gönderdiğinizde. Üçü de aşağıda detaylıdır; başka hiçbir şey yok.

Neler topluyoruz

Normal gezinmeden

Hiçbir şey. Hiçbir cookie set edilmez. Cihazınızda yalnızca iki değer localStorage'a yazılır:

  • forgelm-lang — seçtiğiniz arayüz dili (en, tr, de, fr, es, zh).
  • forgelm-theme — seçtiğiniz renk teması (dark veya light).

İkisi de cihazınızda kalır ve hiçbir yere iletilmez. Tarayıcı depolamasını temizlemek bunları siler.

İletişim formundan

İletişim sayfasındaki formu gönderdiğinizde girdiğiniz değerler (isim, e-posta, organizasyon, konu başlığı, konu, mesaj) Formspree'ye gönderilir; Formspree de bunları proje yürütücüsüne iletir. Formspree'nin gizlilik uygulamaları kendi politikasıyla yönetilir: formspree.io/legal/privacy-policy.

E-postanız yalnızca mesajınıza cevap vermek için kullanılır. Mailing listesine eklenmez, üçüncü taraflarla paylaşılmaz, görüşme sona erdikten sonra saklanmaz.

Hosting

Site statik dosya olarak servis edilir. Tarayıcınız, dosyaları barındıran CDN / web sunucusuyla standart istek header'larını (User-Agent, Accept-Language, IP) takas eder; bu takas hosting sağlayıcısının gizlilik uygulamalarıyla yönetilir ve ForgeLM'in kontrolünde değildir. Bu trafiği biz kendimiz loglamıyoruz.

Üçüncü-taraf varlıklar

Site şunları yükler:

  • Google Fonts — Inter ve JetBrains Mono yazıtipleri. Google istekleri kendi gizlilik politikasında açıklandığı gibi loglayabilir.
  • jsDelivr — Mermaid 10.9.4 yalnızca Rehber sayfasında mimari / akış diyagramlarını render etmek için yüklenir. jsDelivr istekleri kendi gizlilik politikasında açıklandığı gibi loglayabilir.
  • Formspree — yalnızca iletişim formunu gönderdiğinizde, yukarıda açıklandığı gibi.

Üçüncü taraftan başka hiçbir şey yüklenmez. Google Analytics yok, Facebook pixel yok, Hotjar yok, Mixpanel yok, güncel-takipçi-her-neyse yok.

Çocuklar

Bu site geliştiricilere, ML mühendislerine ve compliance profesyonellerine yöneliktir. 16 yaş altındaki çocukları hedeflemez.

Haklarınız (KVKK / GDPR)

Hakkınızda kişisel veri tuttuğumuzu düşünüyor ve erişim, düzeltme veya silme istiyorsanız iletişim formundan (veya GitHub Issues üzerinden) bize yazın; 30 gün içinde döneriz. Tuttuğumuz tek kişisel veri iletişim formundan gönderdikleriniz olduğu için silme kolay: e-posta thread'ini sileriz.

Toolkit'in kendisi

pip install forgelm==0.5.5 ile kurulan ForgeLM Python paketi eve telefon etmez. Telemetri toplamaz, kullanım verisi göndermez, offline çalışır (air-gap uyumlu). YAML konfigürasyonunuzda referans verdiğiniz modeller, veri setleri ve tokenizer'lar yalnızca açık talebinizle ve yalnızca sizin belirttiğiniz kaynaklardan indirilir.

Kendi pipeline'ınızda sevk edebileceğiniz veri sahibi hakları

Organizasyonunuz ForgeLM dağıtıyorsa, toolkit GDPR'ın veri sahibi hakları tarafına somut primitifler sunar: forgelm reverse-pii bir özne tanımlayıcısının düz-metin kalıntılarını veya tuzlanmış-digest eşleşmelerini corpus'ta tarar ve geçtiği her satırı raporlar (Madde 15 erişim) ve forgelm purge bu satırları eğitim corpus'unuzdan siler ve silmeyi append-only audit log'a damgalar (Madde 17 silme). Üstüne, ForgeLM ISO 27001 / SOC 2 Type II kontrolleriyle hizalıdır — tam kanıt haritası için Uyumluluk sayfasına bakın.

Değişiklikler

Bu sayfayı güncellersek yukarıdaki tarih değişir. Maddi değişiklikler projenin CHANGELOG.md'sine düşer.

Sorular

İletişim formunu veya bir GitHub Discussion'ı açın.

" }); Object.assign(T.de, { @@ -4318,7 +4318,7 @@ "privacy.header.eyebrow": "Datenschutz", "privacy.header.title": "Datenschutzerklärung", "privacy.header.lead": "ForgeLM ist Open-Source-Software, die Sie auf Ihrer eigenen Infrastruktur betreiben. Diese Seite behandelt, was diese Website tut — nicht das Toolkit selbst.", - "privacy.body": "

Kurzversion

Diese Seite ist statisches HTML. Wir betreiben keine Analytik, keine Tracking-Pixel, keine Werbe-Tracker, keine A/B-Tests, kein Fingerprinting und keine Drittanbieter-Telemetrie. Hier erfolgen zwei Drittanbieter-Anfragen: Google Fonts wird bei jedem Seitenaufruf abgerufen (die Schriften Inter und JetBrains Mono), und Formspree nur, wenn Sie das Kontaktformular absenden. Beide werden unten detailliert beschrieben; sonst nichts.

Was wir erfassen

Beim normalen Surfen

Nichts. Es werden keine Cookies gesetzt. Auf Ihrem Gerät werden zwei Werte in localStorage gespeichert:

  • forgelm-lang — Ihre gewählte Oberflächensprache (en, tr, de, fr, es, zh).
  • forgelm-theme — Ihr gewähltes Farbschema (dark oder light).

Beide bleiben auf Ihrem Gerät und werden nie übertragen. Das Leeren Ihres Browser-Speichers entfernt sie.

Vom Kontaktformular

Wenn Sie das Formular auf der Kontakt-Seite absenden, werden die eingegebenen Werte (Name, E-Mail, Organisation, Thema, Betreff, Nachricht) an Formspree gesendet, das sie an den Projekt-Maintainer weiterleitet. Die Datenschutzpraktiken von Formspree unterliegen ihrer eigenen Richtlinie unter formspree.io/legal/privacy-policy.

Ihre E-Mail wird ausschließlich zur Beantwortung Ihrer Nachricht verwendet. Wir nehmen sie nicht in eine Mailingliste auf, geben sie nicht an Dritte weiter und behalten sie nach Abschluss der Konversation nicht zurück.

Hosting

Die Seite wird als statische Dateien ausgeliefert. Ihr Browser tauscht Standard-Request-Header (User-Agent, Accept-Language, IP-Adresse) mit dem CDN / Webserver aus, der die Dateien hostet; dieser Austausch unterliegt den Datenschutzpraktiken des Hosting-Anbieters und liegt nicht in der Kontrolle von ForgeLM. Wir loggen diesen Verkehr selbst nicht.

Drittanbieter-Assets

Die Seite lädt:

  • Google Fonts — die Schriften Inter und JetBrains Mono. Google kann Anfragen wie in seiner Datenschutzrichtlinie beschrieben loggen.
  • Formspree — nur wenn Sie das Kontaktformular absenden, wie oben beschrieben.

Sonst wird nichts von Drittanbietern geladen. Kein Google Analytics, kein Facebook-Pixel, kein Hotjar, kein Mixpanel, kein wie-auch-immer-aktueller-Tracker.

Kinder

Diese Seite richtet sich an Entwickler, ML-Ingenieure und Compliance-Fachleute. Sie richtet sich nicht an Kinder unter 16.

Ihre Rechte (DSGVO / KVKK)

Wenn Sie der Meinung sind, dass wir personenbezogene Daten über Sie speichern, und Sie Auskunft, Berichtigung oder Löschung wünschen, schreiben Sie uns über das Kontaktformular (oder GitHub Issues); wir antworten innerhalb von 30 Tagen. Da die einzigen personenbezogenen Daten, die wir halten, das sind, was Sie im Kontaktformular gesendet haben, ist die Löschung einfach: Wir löschen den E-Mail-Thread.

Das Toolkit selbst

Das ForgeLM-Python-Paket — installiert über pip install forgelm==0.5.5 — telefoniert nicht nach Hause. Es sammelt keine Telemetrie, sendet keine Nutzungsdaten irgendwohin und arbeitet offline (Air-Gap-fähig). Modelle, Datensätze und Tokenizer, die Sie in Ihrer YAML-Konfiguration referenzieren, werden nur auf Ihre ausdrückliche Anforderung und nur aus von Ihnen angegebenen Quellen heruntergeladen.

Änderungen

Wenn wir diese Seite aktualisieren, ändert sich das Datum oben. Wesentliche Änderungen werden im CHANGELOG.md des Projekts vermerkt.

Fragen

Öffnen Sie das Kontaktformular oder eine GitHub Discussion.

" + "privacy.body": "

Kurzversion

Diese Seite ist statisches HTML. Wir betreiben keine Analytik, keine Tracking-Pixel, keine Werbe-Tracker, keine A/B-Tests, kein Fingerprinting und keine Drittanbieter-Telemetrie. Hier können drei Drittanbieter-Anfragen erfolgen: Google Fonts wird bei jedem Seitenaufruf abgerufen (die Schriften Inter und JetBrains Mono); Mermaid wird ausschließlich auf der Guide-Seite von jsDelivr geladen (zum Rendern der Diagramme); und Formspree nur, wenn Sie das Kontaktformular absenden. Alle drei werden unten detailliert beschrieben; sonst nichts.

Was wir erfassen

Beim normalen Surfen

Nichts. Es werden keine Cookies gesetzt. Auf Ihrem Gerät werden zwei Werte in localStorage gespeichert:

  • forgelm-lang — Ihre gewählte Oberflächensprache (en, tr, de, fr, es, zh).
  • forgelm-theme — Ihr gewähltes Farbschema (dark oder light).

Beide bleiben auf Ihrem Gerät und werden nie übertragen. Das Leeren Ihres Browser-Speichers entfernt sie.

Vom Kontaktformular

Wenn Sie das Formular auf der Kontakt-Seite absenden, werden die eingegebenen Werte (Name, E-Mail, Organisation, Thema, Betreff, Nachricht) an Formspree gesendet, das sie an den Projekt-Maintainer weiterleitet. Die Datenschutzpraktiken von Formspree unterliegen ihrer eigenen Richtlinie unter formspree.io/legal/privacy-policy.

Ihre E-Mail wird ausschließlich zur Beantwortung Ihrer Nachricht verwendet. Wir nehmen sie nicht in eine Mailingliste auf, geben sie nicht an Dritte weiter und behalten sie nach Abschluss der Konversation nicht zurück.

Hosting

Die Seite wird als statische Dateien ausgeliefert. Ihr Browser tauscht Standard-Request-Header (User-Agent, Accept-Language, IP-Adresse) mit dem CDN / Webserver aus, der die Dateien hostet; dieser Austausch unterliegt den Datenschutzpraktiken des Hosting-Anbieters und liegt nicht in der Kontrolle von ForgeLM. Wir loggen diesen Verkehr selbst nicht.

Drittanbieter-Assets

Die Seite lädt:

  • Google Fonts — die Schriften Inter und JetBrains Mono. Google kann Anfragen wie in seiner Datenschutzrichtlinie beschrieben loggen.
  • jsDelivr — Mermaid 10.9.4 wird ausschließlich auf der Guide-Seite geladen, um die Architektur- / Flussdiagramme zu rendern. jsDelivr kann Anfragen wie in seiner Datenschutzrichtlinie beschrieben loggen.
  • Formspree — nur wenn Sie das Kontaktformular absenden, wie oben beschrieben.

Sonst wird nichts von Drittanbietern geladen. Kein Google Analytics, kein Facebook-Pixel, kein Hotjar, kein Mixpanel, kein wie-auch-immer-aktueller-Tracker.

Kinder

Diese Seite richtet sich an Entwickler, ML-Ingenieure und Compliance-Fachleute. Sie richtet sich nicht an Kinder unter 16.

Ihre Rechte (DSGVO / KVKK)

Wenn Sie der Meinung sind, dass wir personenbezogene Daten über Sie speichern, und Sie Auskunft, Berichtigung oder Löschung wünschen, schreiben Sie uns über das Kontaktformular (oder GitHub Issues); wir antworten innerhalb von 30 Tagen. Da die einzigen personenbezogenen Daten, die wir halten, das sind, was Sie im Kontaktformular gesendet haben, ist die Löschung einfach: Wir löschen den E-Mail-Thread.

Das Toolkit selbst

Das ForgeLM-Python-Paket — installiert über pip install forgelm==0.5.5 — telefoniert nicht nach Hause. Es sammelt keine Telemetrie, sendet keine Nutzungsdaten irgendwohin und arbeitet offline (Air-Gap-fähig). Modelle, Datensätze und Tokenizer, die Sie in Ihrer YAML-Konfiguration referenzieren, werden nur auf Ihre ausdrückliche Anforderung und nur aus von Ihnen angegebenen Quellen heruntergeladen.

Datensubjekt-Rechte, die Sie in Ihrer eigenen Pipeline ausliefern können

Wenn Ihre Organisation ForgeLM einsetzt, liefert das Toolkit konkrete Primitive für die Datensubjekt-Rechte-Seite der DSGVO: forgelm reverse-pii durchsucht den Korpus nach Klartextresten oder gesalzenen Digest-Treffern einer Subjekt-Kennung und meldet jede Zeile, in der diese Person erscheint (Artikel 15 Auskunft), und forgelm purge löscht diese Zeilen aus Ihren Trainingskorpora und stempelt die Löschung in das Append-only-Audit-Log (Artikel 17 Löschung). Darüber hinaus ist ForgeLM mit ISO 27001 / SOC 2 Type II Kontrollen aligned — siehe die Compliance-Seite für die vollständige Nachweis-Karte.

Änderungen

Wenn wir diese Seite aktualisieren, ändert sich das Datum oben. Wesentliche Änderungen werden im CHANGELOG.md des Projekts vermerkt.

Fragen

Öffnen Sie das Kontaktformular oder eine GitHub Discussion.

" }); Object.assign(T.fr, { @@ -4327,7 +4327,7 @@ "privacy.header.eyebrow": "Confidentialité", "privacy.header.title": "Politique de confidentialité", "privacy.header.lead": "ForgeLM est un logiciel open source que vous exécutez sur votre propre infrastructure. Cette page couvre ce que ce site web fait — pas la boîte à outils elle-même.", - "privacy.body": "

Version courte

Ce site est du HTML statique. Nous n'exécutons pas d'analytics, de pixels de tracking, de trackers publicitaires, d'A/B tests, de fingerprinting ou de télémétrie tierce. Deux requêtes tierces se produisent ici : Google Fonts est récupéré à chaque chargement de page (les polices Inter et JetBrains Mono), et Formspree uniquement lorsque vous soumettez le formulaire de contact. Les deux sont détaillés ci-dessous ; rien d'autre.

Ce que nous collectons

De la navigation normale

Rien. Aucun cookie n'est défini. Deux valeurs sont stockées dans localStorage sur votre appareil :

  • forgelm-lang — la langue d'interface choisie (en, tr, de, fr, es, zh).
  • forgelm-theme — votre thème de couleur choisi (dark ou light).

Les deux restent sur votre appareil et ne sont jamais transmises. Vider le stockage du navigateur les supprime.

Du formulaire de contact

Lorsque vous soumettez le formulaire sur la page Contact, les valeurs saisies (nom, e-mail, organisation, sujet, objet, message) sont envoyées à Formspree, qui les transmet au mainteneur du projet. Les pratiques de confidentialité de Formspree sont régies par leur propre politique sur formspree.io/legal/privacy-policy.

Votre e-mail est utilisé uniquement pour répondre à votre message. Nous ne l'ajoutons pas à une liste de diffusion, ne le partageons pas avec des tiers et ne le conservons pas après la résolution de la conversation.

Hébergement

Ce site est servi sous forme de fichiers statiques. Votre navigateur échangera des en-têtes de requête standard (User-Agent, Accept-Language, adresse IP) avec le CDN / serveur web qui héberge les fichiers ; cet échange est régi par les pratiques de confidentialité du fournisseur d'hébergement et n'est pas sous le contrôle de ForgeLM. Nous ne loggons pas ce trafic nous-mêmes.

Ressources tierces

Le site charge :

  • Google Fonts — les polices Inter et JetBrains Mono. Google peut logger les requêtes comme décrit dans sa politique de confidentialité.
  • Formspree — uniquement lorsque vous soumettez le formulaire de contact, comme décrit ci-dessus.

Rien d'autre n'est chargé depuis un tiers. Pas de Google Analytics, pas de pixel Facebook, pas de Hotjar, pas de Mixpanel, pas de tracker-du-moment-quel-qu'il-soit.

Enfants

Ce site s'adresse aux développeurs, ingénieurs ML et professionnels de la conformité. Il n'est pas destiné aux enfants de moins de 16 ans.

Vos droits (RGPD / KVKK)

Si vous pensez que nous détenons des données personnelles vous concernant et que vous voulez y accéder, les corriger ou les supprimer, écrivez-nous via le formulaire de contact (ou GitHub Issues) et nous répondrons dans les 30 jours. Comme les seules données personnelles que nous détenons sont celles que vous avez envoyées dans le formulaire de contact, la suppression est simple : nous supprimons le fil d'e-mail.

La boîte à outils elle-même

Le paquet Python ForgeLM — installé via pip install forgelm==0.5.5 — ne « téléphone pas à la maison ». Il ne collecte pas de télémétrie, n'envoie pas de données d'usage où que ce soit et fonctionne hors-ligne (compatible air-gap). Les modèles, datasets et tokenizers que vous référencez dans votre config YAML ne sont téléchargés qu'à votre demande explicite et uniquement depuis les sources que vous spécifiez.

Modifications

Si nous mettons cette page à jour, la date en haut change. Les changements importants sont notés dans le CHANGELOG.md du projet.

Questions

Ouvrez le formulaire de contact ou une GitHub Discussion.

" + "privacy.body": "

Version courte

Ce site est du HTML statique. Nous n'exécutons pas d'analytics, de pixels de tracking, de trackers publicitaires, d'A/B tests, de fingerprinting ou de télémétrie tierce. Trois requêtes tierces peuvent se produire ici : Google Fonts est récupéré à chaque chargement de page (les polices Inter et JetBrains Mono) ; Mermaid est chargé depuis jsDelivr uniquement sur la page Guide (pour rendre les diagrammes) ; et Formspree uniquement lorsque vous soumettez le formulaire de contact. Les trois sont détaillés ci-dessous ; rien d'autre.

Ce que nous collectons

De la navigation normale

Rien. Aucun cookie n'est défini. Deux valeurs sont stockées dans localStorage sur votre appareil :

  • forgelm-lang — la langue d'interface choisie (en, tr, de, fr, es, zh).
  • forgelm-theme — votre thème de couleur choisi (dark ou light).

Les deux restent sur votre appareil et ne sont jamais transmises. Vider le stockage du navigateur les supprime.

Du formulaire de contact

Lorsque vous soumettez le formulaire sur la page Contact, les valeurs saisies (nom, e-mail, organisation, sujet, objet, message) sont envoyées à Formspree, qui les transmet au mainteneur du projet. Les pratiques de confidentialité de Formspree sont régies par leur propre politique sur formspree.io/legal/privacy-policy.

Votre e-mail est utilisé uniquement pour répondre à votre message. Nous ne l'ajoutons pas à une liste de diffusion, ne le partageons pas avec des tiers et ne le conservons pas après la résolution de la conversation.

Hébergement

Ce site est servi sous forme de fichiers statiques. Votre navigateur échangera des en-têtes de requête standard (User-Agent, Accept-Language, adresse IP) avec le CDN / serveur web qui héberge les fichiers ; cet échange est régi par les pratiques de confidentialité du fournisseur d'hébergement et n'est pas sous le contrôle de ForgeLM. Nous ne loggons pas ce trafic nous-mêmes.

Ressources tierces

Le site charge :

  • Google Fonts — les polices Inter et JetBrains Mono. Google peut logger les requêtes comme décrit dans sa politique de confidentialité.
  • jsDelivr — Mermaid 10.9.4 est chargé uniquement sur la page Guide pour rendre les diagrammes d'architecture / flux. jsDelivr peut logger les requêtes comme décrit dans sa politique de confidentialité.
  • Formspree — uniquement lorsque vous soumettez le formulaire de contact, comme décrit ci-dessus.

Rien d'autre n'est chargé depuis un tiers. Pas de Google Analytics, pas de pixel Facebook, pas de Hotjar, pas de Mixpanel, pas de tracker-du-moment-quel-qu'il-soit.

Enfants

Ce site s'adresse aux développeurs, ingénieurs ML et professionnels de la conformité. Il n'est pas destiné aux enfants de moins de 16 ans.

Vos droits (RGPD / KVKK)

Si vous pensez que nous détenons des données personnelles vous concernant et que vous voulez y accéder, les corriger ou les supprimer, écrivez-nous via le formulaire de contact (ou GitHub Issues) et nous répondrons dans les 30 jours. Comme les seules données personnelles que nous détenons sont celles que vous avez envoyées dans le formulaire de contact, la suppression est simple : nous supprimons le fil d'e-mail.

La boîte à outils elle-même

Le paquet Python ForgeLM — installé via pip install forgelm==0.5.5 — ne « téléphone pas à la maison ». Il ne collecte pas de télémétrie, n'envoie pas de données d'usage où que ce soit et fonctionne hors-ligne (compatible air-gap). Les modèles, datasets et tokenizers que vous référencez dans votre config YAML ne sont téléchargés qu'à votre demande explicite et uniquement depuis les sources que vous spécifiez.

Droits des personnes concernées que vous pouvez livrer dans votre propre pipeline

Si votre organisation déploie ForgeLM, le toolkit fournit des primitives concrètes pour le volet droits des personnes concernées du RGPD : forgelm reverse-pii scanne le corpus à la recherche de résidus en clair ou de digests salés d'un identifiant de personne et signale chaque ligne où elle apparaît (Article 15 accès), et forgelm purge supprime ces lignes de vos corpus d'entraînement et estampille la suppression dans le log d'audit append-only (Article 17 effacement). De plus, ForgeLM est aligné avec les contrôles ISO 27001 / SOC 2 Type II — voir la page Compliance pour la cartographie complète des preuves.

Modifications

Si nous mettons cette page à jour, la date en haut change. Les changements importants sont notés dans le CHANGELOG.md du projet.

Questions

Ouvrez le formulaire de contact ou une GitHub Discussion.

" }); Object.assign(T.es, { @@ -4336,7 +4336,7 @@ "privacy.header.eyebrow": "Privacidad", "privacy.header.title": "Política de privacidad", "privacy.header.lead": "ForgeLM es software de código abierto que ejecuta en su propia infraestructura. Esta página cubre lo que hace este sitio web — no el toolkit en sí.", - "privacy.body": "

Versión corta

Este sitio es HTML estático. No ejecutamos analytics, píxeles de tracking, trackers publicitarios, A/B tests, fingerprinting o telemetría de terceros. Aquí ocurren dos solicitudes a terceros: Google Fonts se obtiene en cada carga de página (las tipografías Inter y JetBrains Mono), y Formspree solo cuando envía el formulario de contacto. Ambas están detalladas abajo; nada más.

Qué recopilamos

De la navegación normal

Nada. No se establecen cookies. Se almacenan dos valores en localStorage en su dispositivo:

  • forgelm-lang — su idioma de interfaz elegido (en, tr, de, fr, es, zh).
  • forgelm-theme — su tema de color elegido (dark o light).

Ambos quedan en su dispositivo y nunca se transmiten. Limpiar el almacenamiento del navegador los elimina.

Del formulario de contacto

Cuando envía el formulario en la página de Contacto, los valores que escribió (nombre, email, organización, tema, asunto, mensaje) se envían a Formspree, que los reenvía al mantenedor del proyecto. Las prácticas de privacidad de Formspree se rigen por su propia política en formspree.io/legal/privacy-policy.

Su email se usa solo para responder a su mensaje. No lo agregamos a una lista de correo, no lo compartimos con terceros y no lo retenemos después de que la conversación se resuelve.

Hosting

Este sitio se sirve como archivos estáticos. Su navegador intercambiará cabeceras de solicitud estándar (User-Agent, Accept-Language, dirección IP) con el CDN / servidor web que aloja los archivos; ese intercambio se rige por las prácticas de privacidad del proveedor de hosting y no está bajo el control de ForgeLM. No registramos este tráfico nosotros mismos.

Recursos de terceros

El sitio carga:

  • Google Fonts — las tipografías Inter y JetBrains Mono. Google puede registrar las solicitudes como se describe en su política de privacidad.
  • Formspree — solo cuando envía el formulario de contacto, como se describe arriba.

Nada más se carga desde un tercero. No hay Google Analytics, no hay píxel de Facebook, no hay Hotjar, no hay Mixpanel, no hay tracker-del-momento-sea-cual-sea.

Niños

Este sitio está dirigido a desarrolladores, ingenieros de ML y profesionales del cumplimiento. No está dirigido a niños menores de 16 años.

Sus derechos (RGPD / KVKK)

Si cree que tenemos datos personales sobre usted y desea acceder, corregir o eliminarlos, escríbanos vía el formulario de contacto (o GitHub Issues) y responderemos en 30 días. Dado que los únicos datos personales que tenemos son lo que envió en el formulario de contacto, la eliminación es directa: borramos el hilo de email.

El toolkit en sí

El paquete Python ForgeLM — instalado vía pip install forgelm==0.5.5 — no telefonea a casa. No recopila telemetría, no envía datos de uso a ninguna parte y funciona offline (compatible con air-gap). Los modelos, datasets y tokenizers que referencia en su config YAML se descargan solo a petición explícita suya y solo desde fuentes que usted especifica.

Cambios

Si actualizamos esta página, la fecha en la parte superior cambia. Los cambios materiales se anotan en el CHANGELOG.md del proyecto.

Preguntas

Abra el formulario de contacto o una GitHub Discussion.

" + "privacy.body": "

Versión corta

Este sitio es HTML estático. No ejecutamos analytics, píxeles de tracking, trackers publicitarios, A/B tests, fingerprinting o telemetría de terceros. Aquí pueden ocurrir tres solicitudes a terceros: Google Fonts se obtiene en cada carga de página (las tipografías Inter y JetBrains Mono); Mermaid se carga desde jsDelivr solo en la página Guía (para renderizar los diagramas); y Formspree solo cuando envía el formulario de contacto. Las tres están detalladas abajo; nada más.

Qué recopilamos

De la navegación normal

Nada. No se establecen cookies. Se almacenan dos valores en localStorage en su dispositivo:

  • forgelm-lang — su idioma de interfaz elegido (en, tr, de, fr, es, zh).
  • forgelm-theme — su tema de color elegido (dark o light).

Ambos quedan en su dispositivo y nunca se transmiten. Limpiar el almacenamiento del navegador los elimina.

Del formulario de contacto

Cuando envía el formulario en la página de Contacto, los valores que escribió (nombre, email, organización, tema, asunto, mensaje) se envían a Formspree, que los reenvía al mantenedor del proyecto. Las prácticas de privacidad de Formspree se rigen por su propia política en formspree.io/legal/privacy-policy.

Su email se usa solo para responder a su mensaje. No lo agregamos a una lista de correo, no lo compartimos con terceros y no lo retenemos después de que la conversación se resuelve.

Hosting

Este sitio se sirve como archivos estáticos. Su navegador intercambiará cabeceras de solicitud estándar (User-Agent, Accept-Language, dirección IP) con el CDN / servidor web que aloja los archivos; ese intercambio se rige por las prácticas de privacidad del proveedor de hosting y no está bajo el control de ForgeLM. No registramos este tráfico nosotros mismos.

Recursos de terceros

El sitio carga:

  • Google Fonts — las tipografías Inter y JetBrains Mono. Google puede registrar las solicitudes como se describe en su política de privacidad.
  • jsDelivr — Mermaid 10.9.4 se carga solo en la página Guía para renderizar los diagramas de arquitectura / flujo. jsDelivr puede registrar las solicitudes como se describe en su política de privacidad.
  • Formspree — solo cuando envía el formulario de contacto, como se describe arriba.

Nada más se carga desde un tercero. No hay Google Analytics, no hay píxel de Facebook, no hay Hotjar, no hay Mixpanel, no hay tracker-del-momento-sea-cual-sea.

Niños

Este sitio está dirigido a desarrolladores, ingenieros de ML y profesionales del cumplimiento. No está dirigido a niños menores de 16 años.

Sus derechos (RGPD / KVKK)

Si cree que tenemos datos personales sobre usted y desea acceder, corregir o eliminarlos, escríbanos vía el formulario de contacto (o GitHub Issues) y responderemos en 30 días. Dado que los únicos datos personales que tenemos son lo que envió en el formulario de contacto, la eliminación es directa: borramos el hilo de email.

El toolkit en sí

El paquete Python ForgeLM — instalado vía pip install forgelm==0.5.5 — no telefonea a casa. No recopila telemetría, no envía datos de uso a ninguna parte y funciona offline (compatible con air-gap). Los modelos, datasets y tokenizers que referencia en su config YAML se descargan solo a petición explícita suya y solo desde fuentes que usted especifica.

Derechos del interesado que puede enviar en su propio pipeline

Si su organización despliega ForgeLM, el toolkit proporciona primitivas concretas para el lado de los derechos del interesado del RGPD: forgelm reverse-pii escanea el corpus en busca de residuos en texto claro o digests salados de un identificador de sujeto y reporta cada fila en la que aparece (Artículo 15 acceso), y forgelm purge elimina esas filas de sus corpus de entrenamiento y estampa la supresión en el log de auditoría append-only (Artículo 17 supresión). Además, ForgeLM está alineado con los controles ISO 27001 / SOC 2 Type II — vea la página de Compliance para el mapa completo de pruebas.

Cambios

Si actualizamos esta página, la fecha en la parte superior cambia. Los cambios materiales se anotan en el CHANGELOG.md del proyecto.

Preguntas

Abra el formulario de contacto o una GitHub Discussion.

" }); Object.assign(T.zh, { @@ -4345,7 +4345,7 @@ "privacy.header.eyebrow": "隐私", "privacy.header.title": "隐私政策", "privacy.header.lead": "ForgeLM 是你在自己基础设施上运行的开源软件。本页讲的是这个网站做了什么 — 不是 toolkit 本身。", - "privacy.body": "

简短版

本站是静态 HTML。我们不运行分析、跟踪像素、广告跟踪器、A/B 测试、指纹识别或任何第三方遥测。本站发生两个第三方请求:Google Fonts 在每次页面加载时获取 (Inter 和 JetBrains Mono 字体),Formspree 仅在你提交联系表单时。两者均在下方详述;此外没有别的。

我们收集什么

正常浏览时

什么也没有。不设置 cookie。在你设备的 localStorage 中存储两个值:

  • forgelm-lang — 你选择的界面语言 (en、tr、de、fr、es、zh)。
  • forgelm-theme — 你选择的色彩主题 (dark 或 light)。

两者都留在你设备上,从不发送出去。清除浏览器存储就能移除它们。

从联系表单

当你在联系页提交表单时,你填写的值 (姓名、邮箱、组织、主题、标题、消息) 会发送到 Formspree,Formspree 再转发给项目维护者。Formspree 的隐私实践由其自身政策管理:formspree.io/legal/privacy-policy。

你的邮箱仅用于回复你的消息。不会加入任何邮件列表,不会与第三方共享,在对话结束之后也不保留。

托管

本站以静态文件的方式提供。你的浏览器会与托管文件的 CDN / Web 服务器交换标准请求头 (User-Agent、Accept-Language、IP 地址);该交换由托管提供商的隐私实践管理,不在 ForgeLM 的控制之下。我们自己不记录这部分流量。

第三方资源

本站加载:

  • Google Fonts — Inter 和 JetBrains Mono 字体。Google 可能按照其隐私政策记录请求。
  • Formspree — 仅在你提交联系表单时,如上所述。

除此之外不从任何第三方加载。没有 Google Analytics、没有 Facebook 像素、没有 Hotjar、没有 Mixpanel、没有那个时髦的随便什么跟踪器。

儿童

本站面向开发者、ML 工程师和合规专业人员。不面向 16 岁以下儿童。

你的权利 (GDPR / KVKK)

如果你认为我们持有关于你的个人数据,并希望访问、更正或删除它,通过联系表单 (或 GitHub Issues) 写信给我们;我们会在 30 天内回复。由于我们持有的唯一个人数据就是你在联系表单中发送的内容,删除很简单:我们删除该邮件 thread。

Toolkit 本身

通过 pip install forgelm==0.5.5 安装的 ForgeLM Python 包不会回拨。不收集遥测,不向任何地方发送使用数据,可离线工作 (支持气隙)。你在 YAML 配置中引用的模型、数据集和 tokenizer 仅在你的明确请求下且仅从你指定的来源下载。

变更

如果我们更新本页,顶部日期会变化。重要变更会记入项目的 CHANGELOG.md。

问题

打开联系表单或一个 GitHub Discussion。

" + "privacy.body": "

简短版

本站是静态 HTML。我们不运行分析、跟踪像素、广告跟踪器、A/B 测试、指纹识别或任何第三方遥测。本站可能发生三种第三方请求:Google Fonts 在每次页面加载时获取 (Inter 和 JetBrains Mono 字体);Mermaid 仅在指南页面从 jsDelivr 加载 (用于渲染图表);Formspree 仅在你提交联系表单时。三者均在下方详述;此外没有别的。

我们收集什么

正常浏览时

什么也没有。不设置 cookie。在你设备的 localStorage 中存储两个值:

  • forgelm-lang — 你选择的界面语言 (en、tr、de、fr、es、zh)。
  • forgelm-theme — 你选择的色彩主题 (dark 或 light)。

两者都留在你设备上,从不发送出去。清除浏览器存储就能移除它们。

从联系表单

当你在联系页提交表单时,你填写的值 (姓名、邮箱、组织、主题、标题、消息) 会发送到 Formspree,Formspree 再转发给项目维护者。Formspree 的隐私实践由其自身政策管理:formspree.io/legal/privacy-policy。

你的邮箱仅用于回复你的消息。不会加入任何邮件列表,不会与第三方共享,在对话结束之后也不保留。

托管

本站以静态文件的方式提供。你的浏览器会与托管文件的 CDN / Web 服务器交换标准请求头 (User-Agent、Accept-Language、IP 地址);该交换由托管提供商的隐私实践管理,不在 ForgeLM 的控制之下。我们自己不记录这部分流量。

第三方资源

本站加载:

  • Google Fonts — Inter 和 JetBrains Mono 字体。Google 可能按照其隐私政策记录请求。
  • jsDelivr — Mermaid 10.9.4 仅在指南页面加载,用于渲染架构 / 流程图。jsDelivr 可能按照其隐私政策记录请求。
  • Formspree — 仅在你提交联系表单时,如上所述。

除此之外不从任何第三方加载。没有 Google Analytics、没有 Facebook 像素、没有 Hotjar、没有 Mixpanel、没有那个时髦的随便什么跟踪器。

儿童

本站面向开发者、ML 工程师和合规专业人员。不面向 16 岁以下儿童。

你的权利 (GDPR / KVKK)

如果你认为我们持有关于你的个人数据,并希望访问、更正或删除它,通过联系表单 (或 GitHub Issues) 写信给我们;我们会在 30 天内回复。由于我们持有的唯一个人数据就是你在联系表单中发送的内容,删除很简单:我们删除该邮件 thread。

Toolkit 本身

通过 pip install forgelm==0.5.5 安装的 ForgeLM Python 包不会回拨。不收集遥测,不向任何地方发送使用数据,可离线工作 (支持气隙)。你在 YAML 配置中引用的模型、数据集和 tokenizer 仅在你的明确请求下且仅从你指定的来源下载。

你可以在自己的管道中交付的数据主体权利

如果你的组织部署 ForgeLM,这套工具为 GDPR 数据主体权利那一面提供了具体原语:forgelm reverse-pii 扫描语料库,查找主体标识的明文残留或加盐 digest 匹配,并报告该主体出现的每一行 (第 15 条访问);forgelm purge 从你的训练语料中删除这些行,并将删除盖戳到 append-only 审计日志中 (第 17 条删除)。此外,ForgeLM 与 ISO 27001 / SOC 2 Type II 控制项保持对齐 — 见合规页面查看完整证据图。

变更

如果我们更新本页,顶部日期会变化。重要变更会记入项目的 CHANGELOG.md。

问题

打开联系表单或一个 GitHub Discussion。

" }); /* ── Terms page (terms.html) ─────────────────────────────── */ @@ -4404,5 +4404,190 @@ }); + + /* ── Phase 22 / pass-4: backfill missing compliance + features keys (was H6 i18n gap) ── */ + Object.assign(T.de, { + "compliance.gdpr15.title": "Auskunftsrecht", + "compliance.gdpr15.body": "forgelm reverse-pii durchsucht maskierte JSONL-Korpora nach Klartextresten oder gesalzenen SHA-256-Digests einer Betroffenenkennung und meldet jede Zeile jedes Splits, in der die betroffene Person erscheint, und erfüllt damit die Auskunftsseite der DSGVO-Betroffenenrechte.", + "compliance.gdpr17.title": "Recht auf Löschung", + "compliance.gdpr17.body": "forgelm purge löscht die Zeilen einer betroffenen Person aus Trainingskorpora und stempelt data.erasure_requested + data.erasure_completed-Ereignisse in das Append-only-Audit-Log, sodass Läufe nach der Löschung forensisch mit dem Löschereignis verknüpft sind.", + "compliance.iso.title": "Aligned, nicht zertifiziert", + "compliance.iso.eyebrow": "ISO 27001 · SOC 2 Type II", + "compliance.iso.lead": "Software kann nicht ISO 27001 oder SOC 2 zertifiziert werden — nur Organisationen. ForgeLM ist aligned mit den Kontrollen, nach denen ein Auditor den Deployer fragt: Es produziert die Audit-Trail-, Change-Management-, Daten-Lineage- und Supply-Chain-Nachweise auf jedem Lauf, bereit zur Aufnahme in Ihren Audit-Ordner.", + "compliance.iso.audit.title": "Audit-Trail", + "compliance.iso.audit.body": "Append-only audit_log.jsonl pro Lauf mit HMAC- + SHA-256-Hashkette + Genesis-Manifest-Sidecar. forgelm verify-audit validiert die Kette Ende-zu-Ende. HMAC-Integrität ist aktiv, wenn FORGELM_AUDIT_SECRET KMS-verwaltet ist und pro output-dir-Lebenszyklus rotiert wird.", + "compliance.iso.change.title": "Änderungskontrolle", + "compliance.iso.change.body": "Artikel-14-Staging-Gate (forgelm approve / forgelm reject) plus human_approval.required/granted/rejected-Audit-Ereignisse plus forgelm verify-audit-Kettenintegrität — jede Modellfreigabe ist dual-kontrolliert und forensisch zugeordnet.", + "compliance.iso.lineage.title": "Daten-Lineage", + "compliance.iso.lineage.body": "data_provenance.json (SHA-256-Fingerprint + Größe + mtime + HF-Hub-Revisions-Pin) und data_governance_report.json (Erhebungsmethode, Annotationsprozess, bekannte Verzerrungen, Personenbezogen-Daten-Flag, DPIA-Abschluss) decken die Lineage-Fragen ab, die ein Auditor zuerst stellt.", + "compliance.iso.supply.title": "Supply Chain", + "compliance.iso.supply.body": "CycloneDX 1.5 SBOM pro Release-Tag für jede (OS x Python-Version)-Zelle der Publish-Matrix emittiert. Wave 4 fügte pip-audit nightly + bandit in CI für statische + dynamische Sicherheitsscans des Builds selbst hinzu.", + "compliance.iso.cookbook": "Für das vollständige Audit-Cookbook, einschließlich 8 Audit-Floor-Fragen und einer 93-Kontrollen-Abdeckungskarte, siehe docs/guides/iso_soc2_deployer_guide.md.", + "features.gov.heading": "Compliance- & DSGVO-Tooling", + "features.gov.body": "EU-AI-Act-Artikel 9-17, DSGVO-Artikel 15 + 17, ISO-27001- / SOC-2-Type-II-Alignment-Nachweise.", + "features.gov.access.title": "DSGVO-Artikel-15-Auskunft", + "features.gov.access.body": "forgelm reverse-pii durchsucht maskierte JSONL-Korpora nach forensischen Substring- oder gesalzenen Digest-Treffern und bringt jede Zeile zum Vorschein, in der eine Betroffenenkennung erscheint.", + "features.gov.annex.title": "Annex-IV-Verifier", + "features.gov.annex.body": "forgelm verify-annex-iv validiert die Annex-IV-§1-9-Schemavollständigkeit und den manifest_hash des Bundles zur Manipulationserkennung. (Audit-Ketten-Integrität ist der separate Befehl forgelm verify-audit.)", + "features.gov.approve.title": "Artikel-14-Staging-Gate", + "features.gov.approve.body": "forgelm approve / forgelm reject + forgelm approvals implementieren das Human-Oversight-Staging-Verzeichnis mit audit-gestempelter Freigabe.", + "features.gov.gguf.title": "GGUF-Integritäts-Verifier", + "features.gov.gguf.body": "forgelm verify-gguf prüft das beim Export gestempelte SHA-256- + Größen-Manifest erneut, bevor Sie ein quantisiertes Modell ausliefern.", + "features.gov.iso.title": "ISO 27001 / SOC 2 Alignment", + "features.gov.iso.body": "Audit-Trail-, Change-Management-, Daten-Lineage- und Supply-Chain-Nachweise, nach denen der Auditor des Deployers fragt. Die Software ist aligned, nicht zertifiziert.", + "features.gov.purge.title": "DSGVO-Artikel-17-Löschung", + "features.gov.purge.body": "forgelm purge entfernt die Zeilen einer betroffenen Person aus Trainingskorpora und stempelt die Löschung in das Append-only-Audit-Log.", + "features.eval.safetyeval.title": "Standalone-Sicherheits-Eval", + "features.eval.safetyeval.body": "forgelm safety-eval führt Llama Guard gegen eine --probes-JSONL-Prompt-Datei aus (oder --default-probes für das gebündelte 50-Prompt-Set) und gibt eine kategorienspezifische Sicherheitszusammenfassung aus (safety_results.json + safety_trend.jsonl).", + "features.ent.api.title": "Bibliotheks-API", + "features.ent.api.body": "from forgelm import … stellt ForgeTrainer, audit_dataset, verify_audit_log, verify_annex_iv_artifact, mask_pii und Freunde als Python-Funktionen bereit (die vollständige öffentliche Oberfläche ist in forgelm.__all__ aufgeführt) zum Einbetten in andere Pipelines.", + "features.ent.cache.title": "Air-Gap-Pre-Cache", + "features.ent.cache.body": "forgelm cache-models und forgelm cache-tasks stellen HuggingFace-Modelle und lm-eval-harness-Datasets für Offline-Läufe bereit.", + "features.ent.doctor.title": "Umgebungsdiagnose", + "features.ent.doctor.body": "forgelm doctor prüft Python, GPU, Treiber, optionale Extras, Speicherplatz, Netzwerk und gibt einen pass / warn / fail-Triage-Bericht aus.", + "features.ent.sbom.title": "Supply-Chain-Sicherheit", + "features.ent.sbom.body": "CycloneDX 1.5 SBOM pro Release-Tag emittiert, plus pip-audit nightly und bandit in CI.", + "features.ent.workers.title": "Deterministische Audit-Worker", + "features.ent.workers.body": "--workers N parallelisiert das Daten-Audit, während deterministische, byte-identische Berichte über Läufe hinweg erhalten bleiben.", + }); + + /* ── Phase 22 / pass-4: backfill missing compliance + features keys (was H6 i18n gap) ── */ + Object.assign(T.fr, { + "compliance.gdpr15.title": "Droit d'accès", + "compliance.gdpr15.body": "forgelm reverse-pii scanne les corpus JSONL masqués à la recherche de résidus en clair ou de digests SHA-256 salés d'un identifiant de personne concernée et signale chaque ligne de chaque split où cette personne apparaît, satisfaisant le volet droit d'accès des droits des personnes concernées du RGPD.", + "compliance.gdpr17.title": "Droit à l'effacement", + "compliance.gdpr17.body": "forgelm purge supprime les lignes d'une personne concernée des corpus d'entraînement et estampille les événements data.erasure_requested + data.erasure_completed dans le log d'audit append-only, de sorte que les exécutions post-suppression soient liées de manière forensique à l'événement d'effacement.", + "compliance.iso.title": "Aligné, non certifié", + "compliance.iso.eyebrow": "ISO 27001 · SOC 2 Type II", + "compliance.iso.lead": "Le logiciel ne peut pas être certifié ISO 27001 ou SOC 2 — seules les organisations le peuvent. ForgeLM est aligné avec les contrôles qu'un auditeur demande au déployeur : il produit les preuves d'audit-trail, de gestion du changement, de traçabilité des données et de supply chain à chaque exécution, prêtes à être déposées dans votre classeur d'audit.", + "compliance.iso.audit.title": "Piste d'audit", + "compliance.iso.audit.body": "audit_log.jsonl append-only par exécution avec chaîne de hash HMAC + SHA-256 + manifest genesis en sidecar. forgelm verify-audit valide la chaîne de bout en bout. L'intégrité HMAC est active lorsque FORGELM_AUDIT_SECRET est géré par KMS et tourné selon le cycle de vie de l'output-dir.", + "compliance.iso.change.title": "Contrôle des changements", + "compliance.iso.change.body": "Gate de staging Article 14 (forgelm approve / forgelm reject) plus événements d'audit human_approval.required/granted/rejected plus intégrité de chaîne forgelm verify-audit — chaque promotion de modèle est sous double contrôle et attribuée de manière forensique.", + "compliance.iso.lineage.title": "Traçabilité des données", + "compliance.iso.lineage.body": "data_provenance.json (empreinte SHA-256 + taille + mtime + pin de révision HF Hub) et data_governance_report.json (méthode de collecte, processus d'annotation, biais connus, drapeau données personnelles, complétion DPIA) couvrent les questions de traçabilité qu'un auditeur pose en premier.", + "compliance.iso.supply.title": "Supply chain", + "compliance.iso.supply.body": "SBOM CycloneDX 1.5 émis par tag de release pour chaque cellule (OS x version Python) de la matrice de publication. Wave 4 a ajouté pip-audit nightly + bandit en CI pour le scan de sécurité statique + dynamique du build lui-même.", + "compliance.iso.cookbook": "Pour le cookbook d'audit complet, incluant 8 questions audit-floor et une cartographie de couverture de 93 contrôles, voir docs/guides/iso_soc2_deployer_guide.md.", + "features.gov.heading": "Outillage Compliance & RGPD", + "features.gov.body": "Articles 9-17 de l'EU AI Act, RGPD Articles 15 + 17, preuves d'alignement ISO 27001 / SOC 2 Type II.", + "features.gov.access.title": "Accès RGPD Article 15", + "features.gov.access.body": "forgelm reverse-pii scanne les corpus JSONL masqués à la recherche de correspondances de sous-chaînes forensiques ou de digests salés qui font remonter chaque ligne où apparaît un identifiant de personne concernée.", + "features.gov.annex.title": "Vérificateur Annex IV", + "features.gov.annex.body": "forgelm verify-annex-iv valide la complétude du schéma Annex IV §1-9 et le manifest_hash du bundle pour la détection de falsification. (L'intégrité de la chaîne d'audit est la commande séparée forgelm verify-audit.)", + "features.gov.approve.title": "Gate de staging Article 14", + "features.gov.approve.body": "forgelm approve / forgelm reject + forgelm approvals implémentent le répertoire de staging de supervision humaine avec signature audit-estampillée.", + "features.gov.gguf.title": "Vérificateur d'intégrité GGUF", + "features.gov.gguf.body": "forgelm verify-gguf revérifie le manifest SHA-256 + taille estampillé au moment de l'export avant que vous n'expédiiez un modèle quantisé.", + "features.gov.iso.title": "Alignement ISO 27001 / SOC 2", + "features.gov.iso.body": "Preuves d'audit-trail, de gestion du changement, de traçabilité des données et de supply chain que l'auditeur du déployeur demande. Le logiciel est aligné, non certifié.", + "features.gov.purge.title": "Effacement RGPD Article 17", + "features.gov.purge.body": "forgelm purge supprime les lignes d'une personne concernée des corpus d'entraînement et estampille la suppression dans le log d'audit append-only.", + "features.eval.safetyeval.title": "Évaluation sécurité autonome", + "features.eval.safetyeval.body": "forgelm safety-eval exécute Llama Guard contre un fichier de prompts JSONL --probes (ou --default-probes pour le set bundlé de 50 prompts) et émet un résumé de sécurité par catégorie (safety_results.json + safety_trend.jsonl).", + "features.ent.api.title": "API bibliothèque", + "features.ent.api.body": "from forgelm import … expose ForgeTrainer, audit_dataset, verify_audit_log, verify_annex_iv_artifact, mask_pii et leurs amis en tant que fonctions Python (la surface publique complète est listée dans forgelm.__all__) à intégrer dans d'autres pipelines.", + "features.ent.cache.title": "Pré-cache air-gap", + "features.ent.cache.body": "forgelm cache-models et forgelm cache-tasks préparent les modèles HuggingFace et les datasets lm-eval-harness pour des exécutions offline.", + "features.ent.doctor.title": "Diagnostics d'environnement", + "features.ent.doctor.body": "forgelm doctor sonde Python, GPU, drivers, extras optionnels, espace disque, réseau, et imprime un rapport de triage pass / warn / fail.", + "features.ent.sbom.title": "Sécurité supply chain", + "features.ent.sbom.body": "SBOM CycloneDX 1.5 émis par tag de release, plus pip-audit nightly et bandit en CI.", + "features.ent.workers.title": "Workers d'audit déterministes", + "features.ent.workers.body": "--workers N parallélise l'audit des données tout en préservant des rapports déterministes, byte-pour-byte identiques entre exécutions.", + }); + + /* ── Phase 22 / pass-4: backfill missing compliance + features keys (was H6 i18n gap) ── */ + Object.assign(T.es, { + "compliance.gdpr15.title": "Derecho de acceso", + "compliance.gdpr15.body": "forgelm reverse-pii escanea corpus JSONL enmascarados en busca de residuos en texto claro o digests SHA-256 salados de un identificador de interesado y reporta cada fila de cada split donde aparece ese sujeto, satisfaciendo el lado de solicitud de acceso de los derechos del interesado del RGPD.", + "compliance.gdpr17.title": "Derecho de supresión", + "compliance.gdpr17.body": "forgelm purge elimina las filas de un interesado de los corpus de entrenamiento y estampa eventos data.erasure_requested + data.erasure_completed en el log de auditoría append-only, de modo que las ejecuciones posteriores a la supresión queden vinculadas forensemente al evento de borrado.", + "compliance.iso.title": "Alineado, no certificado", + "compliance.iso.eyebrow": "ISO 27001 · SOC 2 Type II", + "compliance.iso.lead": "El software no puede ser certificado ISO 27001 o SOC 2 — solo las organizaciones pueden. ForgeLM está alineado con los controles que un auditor le pregunta al deployer: produce las pruebas de pista de auditoría, gestión de cambios, trazabilidad de datos y cadena de suministro en cada ejecución, listas para incorporarse a su carpeta de auditoría.", + "compliance.iso.audit.title": "Pista de auditoría", + "compliance.iso.audit.body": "audit_log.jsonl append-only por ejecución con cadena de hash HMAC + SHA-256 + manifiesto genesis en sidecar. forgelm verify-audit valida la cadena de extremo a extremo. La integridad HMAC está activa cuando FORGELM_AUDIT_SECRET es gestionado por KMS y rotado por ciclo de vida del output-dir.", + "compliance.iso.change.title": "Control de cambios", + "compliance.iso.change.body": "Gate de staging del Artículo 14 (forgelm approve / forgelm reject) más eventos de auditoría human_approval.required/granted/rejected más integridad de cadena forgelm verify-audit — cada promoción de modelo es de control dual y atribuida forensemente.", + "compliance.iso.lineage.title": "Trazabilidad de datos", + "compliance.iso.lineage.body": "data_provenance.json (huella SHA-256 + tamaño + mtime + pin de revisión HF Hub) y data_governance_report.json (método de recolección, proceso de anotación, sesgos conocidos, marca de datos personales, completitud DPIA) cubren las preguntas de trazabilidad que un auditor hace primero.", + "compliance.iso.supply.title": "Cadena de suministro", + "compliance.iso.supply.body": "SBOM CycloneDX 1.5 emitido por etiqueta de release para cada celda (OS x versión Python) de la matriz de publicación. Wave 4 añadió pip-audit nightly + bandit en CI para escaneo de seguridad estático + dinámico del propio build.", + "compliance.iso.cookbook": "Para el cookbook de auditoría completo, incluidas 8 preguntas audit-floor y un mapa de cobertura de 93 controles, vea docs/guides/iso_soc2_deployer_guide.md.", + "features.gov.heading": "Tooling Compliance & RGPD", + "features.gov.body": "Artículos 9-17 del EU AI Act, RGPD Artículos 15 + 17, pruebas de alineamiento ISO 27001 / SOC 2 Type II.", + "features.gov.access.title": "Acceso RGPD Artículo 15", + "features.gov.access.body": "forgelm reverse-pii escanea corpus JSONL enmascarados en busca de coincidencias de subcadenas forenses o digests salados que sacan a la luz cada fila en la que aparece un identificador de interesado.", + "features.gov.annex.title": "Verificador Annex IV", + "features.gov.annex.body": "forgelm verify-annex-iv valida la completitud del esquema Annex IV §1-9 y el manifest_hash del bundle para la detección de manipulación. (La integridad de la cadena de auditoría es el comando separado forgelm verify-audit.)", + "features.gov.approve.title": "Gate de staging del Artículo 14", + "features.gov.approve.body": "forgelm approve / forgelm reject + forgelm approvals implementan el directorio de staging de supervisión humana con firma estampada en auditoría.", + "features.gov.gguf.title": "Verificador de integridad GGUF", + "features.gov.gguf.body": "forgelm verify-gguf reverifica el manifiesto SHA-256 + tamaño estampado en el momento del export antes de que envíe un modelo cuantizado.", + "features.gov.iso.title": "Alineamiento ISO 27001 / SOC 2", + "features.gov.iso.body": "Pruebas de pista de auditoría, gestión de cambios, trazabilidad de datos y cadena de suministro que pide el auditor del deployer. El software está alineado, no certificado.", + "features.gov.purge.title": "Supresión RGPD Artículo 17", + "features.gov.purge.body": "forgelm purge elimina las filas de un interesado de los corpus de entrenamiento y estampa la supresión en el log de auditoría append-only.", + "features.eval.safetyeval.title": "Evaluación de seguridad autónoma", + "features.eval.safetyeval.body": "forgelm safety-eval ejecuta Llama Guard contra un archivo de prompts JSONL --probes (o --default-probes para el set bundleado de 50 prompts) y emite un resumen de seguridad por categoría (safety_results.json + safety_trend.jsonl).", + "features.ent.api.title": "API de biblioteca", + "features.ent.api.body": "from forgelm import … expone ForgeTrainer, audit_dataset, verify_audit_log, verify_annex_iv_artifact, mask_pii y compañía como funciones Python (la superficie pública completa se enumera en forgelm.__all__) para incrustar dentro de otras pipelines.", + "features.ent.cache.title": "Pre-caché air-gap", + "features.ent.cache.body": "forgelm cache-models y forgelm cache-tasks preparan modelos HuggingFace y datasets lm-eval-harness para ejecuciones offline.", + "features.ent.doctor.title": "Diagnósticos de entorno", + "features.ent.doctor.body": "forgelm doctor sondea Python, GPU, drivers, extras opcionales, espacio en disco, red, e imprime un reporte de triaje pass / warn / fail.", + "features.ent.sbom.title": "Seguridad de cadena de suministro", + "features.ent.sbom.body": "SBOM CycloneDX 1.5 emitido por etiqueta de release, más pip-audit nightly y bandit en CI.", + "features.ent.workers.title": "Workers de auditoría deterministas", + "features.ent.workers.body": "--workers N paraleliza la auditoría de datos preservando reportes deterministas, idénticos byte a byte entre ejecuciones.", + }); + + /* ── Phase 22 / pass-4: backfill missing compliance + features keys (was H6 i18n gap) ── */ + Object.assign(T.zh, { + "compliance.gdpr15.title": "访问权", + "compliance.gdpr15.body": "forgelm reverse-pii 扫描已掩码的 JSONL 语料库,查找数据主体标识的明文残留或加盐 SHA-256 摘要,并报告该主体出现的每个 split 的每一行,满足 GDPR 数据主体权利的访问请求一侧。", + "compliance.gdpr17.title": "删除权", + "compliance.gdpr17.body": "forgelm purge 从训练语料中删除某个数据主体的行,并在 append-only 审计日志中盖上 data.erasure_requested + data.erasure_completed 事件,使删除后的运行在取证上与该删除事件相连。", + "compliance.iso.title": "对齐,而非认证", + "compliance.iso.eyebrow": "ISO 27001 · SOC 2 Type II", + "compliance.iso.lead": "软件无法获得 ISO 27001 或 SOC 2 认证 — 只有组织可以。ForgeLM 与审计员向 deployer 询问的控制项保持对齐:它在每次运行时产出审计追踪、变更管理、数据血缘和供应链证据,可直接放入你的审计文件夹。", + "compliance.iso.audit.title": "审计追踪", + "compliance.iso.audit.body": "每次运行的 append-only audit_log.jsonl,带 HMAC + SHA-256 哈希链 + 创世清单 sidecar。forgelm verify-audit 端到端验证该链。当 FORGELM_AUDIT_SECRET 由 KMS 管理并按 output-dir 生命周期轮换时,HMAC 完整性生效。", + "compliance.iso.change.title": "变更控制", + "compliance.iso.change.body": "第 14 条 staging gate (forgelm approve / forgelm reject) 加上 human_approval.required/granted/rejected 审计事件,加上 forgelm verify-audit 链完整性 — 每次模型晋升均为双重控制并可在取证上追溯。", + "compliance.iso.lineage.title": "数据血缘", + "compliance.iso.lineage.body": "data_provenance.json (SHA-256 指纹 + 大小 + mtime + HF Hub 修订版本固定) 与 data_governance_report.json (采集方法、标注流程、已知偏见、个人数据标记、DPIA 完成情况) 覆盖审计员最先问的血缘问题。", + "compliance.iso.supply.title": "供应链", + "compliance.iso.supply.body": "每个 release tag 为 publish 矩阵的每个 (OS x Python 版本) 单元格发布 CycloneDX 1.5 SBOM。Wave 4 在 CI 中加入 nightly pip-audit + bandit,对构建本身进行静态 + 动态安全扫描。", + "compliance.iso.cookbook": "完整的审计 cookbook,包括 8 个 audit-floor 问题和 93 控制项覆盖图,见 docs/guides/iso_soc2_deployer_guide.md。", + "features.gov.heading": "合规 & GDPR 工具", + "features.gov.body": "EU AI Act 第 9-17 条、GDPR 第 15 + 17 条、ISO 27001 / SOC 2 Type II 对齐证据。", + "features.gov.access.title": "GDPR 第 15 条访问", + "features.gov.access.body": "forgelm reverse-pii 扫描已掩码的 JSONL 语料库,查找取证子串或加盐摘要匹配,使每一条数据主体标识出现的行浮现出来。", + "features.gov.annex.title": "Annex IV 验证器", + "features.gov.annex.body": "forgelm verify-annex-iv 验证 Annex IV §1-9 模式完整性以及 bundle 的 manifest_hash 防篡改。(审计链完整性由独立的 forgelm verify-audit 命令负责。)", + "features.gov.approve.title": "第 14 条 staging gate", + "features.gov.approve.body": "forgelm approve / forgelm reject + forgelm approvals 通过审计盖章的签字实现人工监督 staging 目录。", + "features.gov.gguf.title": "GGUF 完整性验证器", + "features.gov.gguf.body": "forgelm verify-gguf 在你交付量化模型之前重新校验 export 时盖好的 SHA-256 + 大小 manifest。", + "features.gov.iso.title": "ISO 27001 / SOC 2 对齐", + "features.gov.iso.body": "deployer 的审计员需要的审计追踪、变更管理、数据血缘和供应链证据。软件是对齐,而不是被认证。", + "features.gov.purge.title": "GDPR 第 17 条删除", + "features.gov.purge.body": "forgelm purge 从训练语料中移除某个数据主体的行,并将该删除盖入 append-only 审计日志。", + "features.eval.safetyeval.title": "独立安全评估", + "features.eval.safetyeval.body": "forgelm safety-eval 对 --probes JSONL 提示文件 (或用 --default-probes 调用打包的 50-提示集) 运行 Llama Guard,并产出按类别的安全摘要 (safety_results.json + safety_trend.jsonl)。", + "features.ent.api.title": "库 API", + "features.ent.api.body": "from forgelm import … 公开 ForgeTrainer、audit_dataset、verify_audit_log、verify_annex_iv_artifact、mask_pii 等作为 Python 函数 (完整的公开表面在 forgelm.__all__ 中列出) 以嵌入其他管道。", + "features.ent.cache.title": "气隙预缓存", + "features.ent.cache.body": "forgelm cache-models 和 forgelm cache-tasks 为离线运行预备 HuggingFace 模型与 lm-eval-harness 数据集。", + "features.ent.doctor.title": "环境诊断", + "features.ent.doctor.body": "forgelm doctor 探测 Python、GPU、驱动、可选 extra、磁盘空间、网络,并打印 pass / warn / fail 三色分诊报告。", + "features.ent.sbom.title": "供应链安全", + "features.ent.sbom.body": "每次 release tag 发出 CycloneDX 1.5 SBOM,加上 CI 中的 nightly pip-audit 和 bandit。", + "features.ent.workers.title": "确定性审计 workers", + "features.ent.workers.body": "--workers N 并行化数据审计,同时在多次运行间保持确定性、字节级一致的报告。", + }); + window.ForgeLMTranslations = T; })(); diff --git a/site/js/wizard.js b/site/js/wizard.js index 76a18347..d9afacf5 100644 --- a/site/js/wizard.js +++ b/site/js/wizard.js @@ -71,6 +71,14 @@ // v2 → v3: new fields don't break old saves (loadState merges over // defaults), but bumping the version reserves the right to drop // incompatible state shapes if needed in the future. + // + // This number is the in-browser wizard's resume-state version; it is + // intentionally independent of the CLI wizard's + // ``forgelm/wizard/_state.py::_STATE_VERSION`` (currently 1). The + // two surfaces persist to entirely different stores (browser + // ``localStorage`` here vs. XDG cache JSON there) and bump on their + // own state-shape schedules, so a drift between the two numbers is + // normal and not a synchronisation bug. var STATE_VERSION = 3; // Trainer registry — single source of truth for the 6 trainer_type @@ -479,41 +487,50 @@ // with ``forgelm/quickstart.py::TEMPLATES`` — the CLI quickstart // catalogue is the single source of truth so an operator who // crosses surfaces never sees a renamed key. + // The model + dataset values mirror ``forgelm/quickstart.py::TEMPLATES`` + // verbatim — that registry is the runtime source of truth, and an operator + // who finishes the wizard and runs ``forgelm --config .yaml`` + // must see exactly the same defaults the CLI quickstart would have set. + // Bundled-dataset templates use ``datasetKind: 'local-jsonl'`` with the + // in-repo path under ``forgelm/templates//data.jsonl`` (the trainer + // resolves the path without any HF Hub call). ``domain-expert`` is the + // only BYOD template — kind ``local-pdf`` reflects its README's "drop + // your PDFs into ./policies/". var USE_CASE_PRESETS = { 'customer-support': { trainerType: 'sft', - model: 'meta-llama/Llama-3.1-8B-Instruct', - modelPreset: 'llama3-8b', - datasetKind: 'huggingface', - datasetName: 'argilla/Capybara-Preferences' + model: 'Qwen/Qwen2.5-7B-Instruct', + modelPreset: 'qwen-7b', + datasetKind: 'local-jsonl', + datasetName: 'forgelm/templates/customer-support/data.jsonl' }, 'code-assistant': { trainerType: 'sft', model: 'Qwen/Qwen2.5-Coder-7B-Instruct', modelPreset: 'custom', - datasetKind: 'huggingface', - datasetName: 'bigcode/the-stack-smol-xs' + datasetKind: 'local-jsonl', + datasetName: 'forgelm/templates/code-assistant/data.jsonl' }, 'domain-expert': { trainerType: 'sft', - model: 'meta-llama/Llama-3.1-8B-Instruct', - modelPreset: 'llama3-8b', + model: 'Qwen/Qwen2.5-7B-Instruct', + modelPreset: 'qwen-7b', datasetKind: 'local-pdf', datasetName: './policies/' }, 'grpo-math': { trainerType: 'grpo', - model: 'Qwen/Qwen2.5-7B-Instruct', - modelPreset: 'qwen-7b', - datasetKind: 'huggingface', - datasetName: 'openai/gsm8k' + model: 'Qwen/Qwen2.5-Math-7B-Instruct', + modelPreset: 'custom', + datasetKind: 'local-jsonl', + datasetName: 'forgelm/templates/grpo-math/data.jsonl' }, 'medical-qa-tr': { trainerType: 'sft', - model: 'meta-llama/Llama-3.1-8B-Instruct', - modelPreset: 'llama3-8b', - datasetKind: 'huggingface', - datasetName: 'forgelm/medical-qa-tr' + model: 'Qwen/Qwen2.5-7B-Instruct', + modelPreset: 'qwen-7b', + datasetKind: 'local-jsonl', + datasetName: 'forgelm/templates/medical-qa-tr/data.jsonl' }, 'custom': { /* leave the existing values intact — user wants explicit control */ diff --git a/site/privacy.html b/site/privacy.html index f4f51a1d..850652cc 100644 --- a/site/privacy.html +++ b/site/privacy.html @@ -46,7 +46,7 @@ "description": "ForgeLM site privacy policy.", "url": "https://forgelm.dev/privacy.html", "downloadUrl": "https://pypi.org/project/forgelm/", - "operatingSystem": "Linux, macOS", + "operatingSystem": "Linux, macOS, Windows", "license": "https://www.apache.org/licenses/LICENSE-2.0", "softwareVersion": "0.5.5", "offers": { @@ -129,7 +129,7 @@

Privacy policy