The Synthetic Data API — privacy-preserving synthetic data generation
Project description
Dataxid Python SDK
Privacy-preserving synthetic data generation, built on a privacy-by-architecture principle. Your raw data never leaves your machine — only abstract embeddings are shared with the API.
Installation
pip install dataxid
Quick Start
import dataxid
import pandas as pd
dataxid.api_key = "dx_..."
df = pd.read_csv("data.csv")
synthetic = dataxid.synthesize(data=df, n_samples=1000)
Full Control
import dataxid
import pandas as pd
dataxid.api_key = "dx_..."
df = pd.read_csv("data.csv")
model = dataxid.Model.create(data=df)
synthetic = model.generate(n_samples=1000)
model.delete()
Error Handling
import dataxid
try:
synthetic = dataxid.synthesize(data=df)
except dataxid.AuthenticationError:
print("Invalid API key")
except dataxid.QuotaExceededError as e:
print(f"Quota exceeded. Upgrade: {e.upgrade_url}")
except dataxid.RateLimitError as e:
print(f"Rate limited. Retry after: {e.retry_after}s")
except dataxid.DataxidError as e:
print(f"Error: {e}")
How It Works
Dataxid is built on a privacy-by-architecture principle. Data encoding and decoding happen entirely on your machine; only abstract embeddings are shared with the API for model training. Raw data never leaves your environment.
Configuration
| Parameter | Default | Description |
|---|---|---|
embedding_dim |
64 |
Embedding size (larger = more expressive) |
model_size |
"medium" |
Model capacity: "small", "medium", "large" |
max_epochs |
100 |
Maximum training epochs |
batch_size |
256 |
Training batch size |
privacy_enabled |
False |
Add noise to embeddings for privacy |
privacy_noise |
0.1 |
Noise scale (Gaussian std) |
model = dataxid.Model.create(
data=df,
config=dataxid.ModelConfig(
embedding_dim=128,
model_size="large",
max_epochs=50,
),
)
Plain dict also works for quick experiments:
model = dataxid.Model.create(
data=df,
config={"embedding_dim": 128, "max_epochs": 50},
)
Links
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dataxid-0.1.0.tar.gz.
File metadata
- Download URL: dataxid-0.1.0.tar.gz
- Upload date:
- Size: 92.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ca7b222eeadbd494569af41129bcd301f551c83fd01f98c06043982deb594a79
|
|
| MD5 |
95415d4093e96e802cb94da49a4793aa
|
|
| BLAKE2b-256 |
6294deef54d18bdf42155a1afec769e23307600b9a455901ba35cd869c8021ea
|
File details
Details for the file dataxid-0.1.0-py3-none-any.whl.
File metadata
- Download URL: dataxid-0.1.0-py3-none-any.whl
- Upload date:
- Size: 43.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d6c861d7d97ae84105f92708f743d8fd42eb30700d9e50f767b4bac01fabc475
|
|
| MD5 |
e3839dcf2c7e69610cc3e79e74473caa
|
|
| BLAKE2b-256 |
dc4546233c87dfde6346947b72890967f661a57ed9e7d4145450df189e08b8f3
|