Dasturlash

Datamimic: Sintetik ma'lumotlar yaratish va maxfiylikni saqlash uchun ochiq manba platformasi

16-sentabr, 2026, 10:540 ko'rish5 daqiqa o'qish
Datamimic: Sintetik ma'lumotlar yaratish va maxfiylikni saqlash uchun ochiq manba platformasi

Datamimic — bu sintetik ma'lumotlar yaratish va maxfiylikni saqlash uchun mo'ljallangan ochiq manba platformasi. Bu platforma Python tilida yozilgan va MIT litsenziyasi ostida tarqatiladi. Datamimic Community Edition (CE) versiyasi standalon holda ishlatilishi mumkin va aniq sintetik ma'lumotlar yaratish va shaxsiy ma'lumotlarni maxfiylikni saqlab pseudonimlashtirish imkoniyatlarini taqdim etadi.

Datamimicning asosiy xususiyatlari

Datamimic CE versiyasi quyidagi asosiy xususiyatlarga ega:

CI Coverage
  • Tolovsiz sintetik ma'lumotlar yaratish: bu xususiyat model asosida ishlaydi va manba ma'lumotlarga muhtoj emas.
  • Pseudonimlashtirish: bu xususiyat aniq (seedlangan) yoki maxfiylikni maksimal darajada saqlovchi (non-seedlangan) maydonlar o'zgarishini taqdim etadi. Shaxsiy ma'lumotlar maydonlari XML pipeline-da qo'llaniladigan usul bilan aniqlanadi.
  • Tuzilma va ma'lumotlar bazalariga qarshi ishlash: Datamimic PostgreSQL, MySQL, Oracle, MS SQL, SQLite, MongoDB, CSV, JSON, XML, XLSX, DbUnit va fixed-width (.fcw) formatlarida ishlash imkoniyatini taqdim etadi.
  • Model xulq-atvori: Datamimic og'irlikli holat mashinalari, bir nechta maydonlarga bog'langan murakkab referensalar, nazorat oqimi va bosqichli agregatsiya uchun scriptlangan memstore imkoniyatlarini taqdim etadi.
  • Provenance chiqarish: Datamimic audit re-execution uchun append-only ijro loglarini va har bir chiqish uchun content hashini taqdim etadi.
  • Agentlarni yo'llash: Datamimic mashina o'qiladigan qobiliyatlar, progressiv referensalarni so'rov qilish va bir kanonik CLI scaffold transaksiya imkoniyatlarini taqdim etadi.

Enterprise Platform

Datamimic Enterprise Platformi CE versiyasiga nisbatan quyidagi xususiyatlarni qo'shadi:

Maintainability Python
  • PII skaner: bu xususiyat DataWorkbench orqali konfiguratsiyalanadigan o'zgaruvchan egrilardan foydalanib, maydonlarni aniqlash imkoniyatini taqdim etadi.
  • Ko'p tizimli ijro: bu xususiyat Oracle, MongoDB va Kafka tizimlarida referentsial integritetni saqlab turish imkoniyatini taqdim etadi.
  • Sanoat xabar shablonlari: bu xususiyat EDIFACT, SWIFT MT, HL7 v2.x va HL7 FHIR formatlarida aniq test/training artefaktlarini yaratish imkoniyatini taqdim etadi.
  • Boshqaruv qatlami: bu xususiyat rol asosidagi dashbordlar, audit izlari, tasdiqlash oqimlari, qayta ishlatiladigan korporativ shablonlar va rejalarni taqdim etadi.
  • Performance core: bu xususiyat Rust fastpath, ML/auto-regressive engine, keyset va manifest qurish, optimizatsiyalangan tarqatilgan ijro imkoniyatlarini taqdim etadi.
  • On-premise / air-gapped deploy: bu xususiyat podman-compose yoki Helm orqali deploy qilish imkoniyatini taqdim etadi.

Datamimicning amaliy foydalanishi

Datamimic platformasi turli sohalarda, jumladan, bank sohasida aniq test ma'lumotlarini yaratish uchun ishlatiladi. Platforma Oracle, MongoDB va Kafka tizimlarida ishlash imkoniyatini taqdim etadi. Datamimicning referentsiya mijozlari NDA asosida mavjud.

License: MIT

Datamimic CLI — bu platformaning asosiy agent shartnomasi. CE versiyasini pip install datamimic-ce orqali o'rnatish mumkin. Platforma ichida .venv/bin/datamimic foydalanish orqali eskirgan global o'rnatish schema yoki buyruqlarni o'zgartirib yubormaslik mumkin.

MCP Ready

Datamimic CLI xususiyatlari

Datamimic CLI quyidagi xususiyatlarni taqdim etadi:

Create the dataset I describe with DATAMIMIC.

Read AGENTS.md first. In a repository checkout use `.venv/bin/datamimic`;
otherwise use the current `datamimic` CLI. Preserve my intent as
`model.dm.json`; do not hand-write XML.

Start from the minimal valid document shape in AGENTS.md ("Authoring a new
model"). Two rules prevent most rejections: the top level allows ONLY
version, seed, products, expectations; product-level "kind"
(generated/source/time_series) is a different vocabulary from field-level
"kind" (increment, values, weighted, int_range, decimal_range, pattern,
constant, script). Range fields take minimum/maximum, never min/max.

Submit EARLY: run `datamimic scaffold model.dm.json --format json` with your
best attempt after at most one discovery call. Repair from the structured
issues (path/code/message/allowed_fields) and diagnostics (fix_hint) — they
teach the schema faster than more discovery. Never resubmit an unchanged
document. If a remediation requests a larger max_count, retry scaffold with
at least that value without changing the intent.

Declare an expectation for every requirement I state (counts as exact_count
with a "count" field, uniqueness, allowed values, ranges, foreign keys) —
verified=true certifies only what you declared. Stop on verified=true; do
not lint or dry-run the generated XML. If I request real execution, save the
returned XML as a generated artifact and run that descriptor. Return the
model.dm.json path and concise verification evidence.
  • Tizimning yashirin tuzilmasini kashf qilish: datamimic capabilities buyrug'i compact machine-readable JSON indeksini taqdim etadi.
  • Intent Modelni progressiv tarzda o'rganish: datamimic reference authoring buyrug'i so'rov katalogini taqdim etadi.
  • Yangi model yaratish: datamimic scaffold model.dm.json --format json buyrug'i model.dm.json faylini saqlab qoladi.
  • Mavjud raw XML bilan ishlash: datamimic lint model.xml --format json buyrug'i diagnostikalarni tahrirlash imkoniyatini taqdim etadi.
  • DSL detalini topish: datamimic reference overview buyrug'i live model va rule registrilarini so'rov qilish imkoniyatini taqdim etadi.

Datamimic platformasi sintetik ma'lumotlar yaratish va maxfiylikni saqlash uchun mo'ljallangan kuchli vosita bo'lib, turli sohalarda qo'llanilishi mumkin. Platformaning ochiq manba tabiati va MIT litsenziyasi uni keng foydalanish uchun qulay qiladi.

Seed a relational dataset with referential integrity: 4 customers, each with
exactly 2 orders.

Customers get an incrementing unique id and a region from
{north, south, east, west}. Each order carries the REAL parent customer id
as a foreign key and an amount between 10.0 and 500.0.

Follow AGENTS.md's "Authoring a new model" and its structural recipes:
orders nest inside the customer product's "children" array; the FK field is
{"kind": "script", "script": "parent.id"} with a foreign_key role — a
randomly generated FK passes schema validation but fails per-parent-count
acceptance. Declare expectations for the customer count, customer id
uniqueness, exactly 2 orders per customer (per_parent_count), the
orders->customers foreign key, and the amount range. Stop on verified=true
and show the acceptance evidence.

Asl manba: github.com

Manba: Hacker News
#sintetik ma'lumotlar #maxfiylik #ochiq manba #Python #Datamimic
Telegram da muhokama qilish