CH·GGuides

Data Policy

What GPU.ai records about your inference requests, what it never stores, where requests run, and how long records are kept.

This page describes what GPU.ai does with the data you send to the serverless inference API: what we record, what we deliberately do not record, where your requests physically go, and how long the records we do keep stick around.

It is a description of how the platform behaves today, not a contract — the Terms and Privacy Policy govern. Where the two disagree, they win and this page is a bug.

The short version

Chat, embeddings and image contentNot persisted. Not logged.
Video job promptsPersisted with the job record — see Video jobs.
Per-request metadataPersisted — it is your bill.
Training on your dataNever.
Zero-data-retention modeNot offered (see Retention).
Where requests runUS by default; some models are served from partner infrastructure in other jurisdictions — see Model routing.

What we record for an inference request

Every call to /v1/chat/completions, /v1/embeddings, /v1/images/generations or /v1/videos/generations writes exactly one metering record. That record holds:

  • who — the organization and the API key id that authenticated the call;
  • what — the model id, the modality (chat / embeddings / image / video), and
the provider that ultimately served it;
  • how much — prompt tokens, completion tokens, cached prompt tokens, image
count, video seconds, and the computed cost in cents;
  • how it went — total duration, upstream latency, whether it cold-started,
whether it succeeded, and an error *code* if it did not;
  • when — a timestamp and an opaque request id for support correlation.
That is the whole record. You can read your own usage back at any time with gpu usage or GET /v1/usage, which aggregates those rows into time buckets and returns a further-reduced projection — bucket start, modality, model, tokens, image count, cost — with the provider, region, request id and key attribution deliberately stripped.

What we do not record

For chat, embeddings and image generation, the content of your requests and responses is never written to our database or our logs. Messages, prompts, system prompts, tool definitions, embeddings inputs, image prompts, completions, generated text — none of it is stored by GPU.ai. It lives in memory for the duration of the request and for streaming responses it is relayed through to you chunk by chunk; when the request ends it is gone.

Our HTTP access log records the method, path, status code, duration, client address, and organization id for a request. It does not record request or response bodies, and it does not record Authorization headers.

The practical consequence: we cannot show you your old chat prompts, and neither can our support team. If you need a transcript, keep it on your side.

Video jobs are the exception

Video generation is asynchronous: you create a job, poll it, and fetch the result later. To serve that lifecycle we persist the job record — and that record includes your video prompt (plus the size and duration parameters), because GET /v1/videos/{id} has to be able to tell you what it is generating.

Two different lifetimes apply:

  • The generated video itself is held for download for 24 hours after the
job completes, then expires.
  • The job record, including the prompt, is retained like other request
records — there is currently no automatic purge for it. If a stored video prompt is a problem for your compliance posture, don't put sensitive content in video prompts, or contact us about deleting specific job records.

Training

We do not train models on your prompts, your completions, or your uploaded files, and we do not hand your data to anyone else to train on. GPU.ai is an aggregator — we route your request to a model someone else trained and bill you for the tokens.

Fine-tuning is the one place your data becomes a model artifact, and only because you asked: a fine-tuning job trains on the dataset *you* upload and produces an adapter that belongs to *you*. That dataset is not used to train anything else.

Model routing and jurisdiction

GPU.ai's catalog is served by upstream partners, and those partners are not all in the same country. Some models are served from partner infrastructure located in other jurisdictions, including China; requests to those models transit those jurisdictions. Your prompt and the generated completion leave our US infrastructure and are processed on the partner's hardware under that partner's terms and that country's law.

Everything else is served from US infrastructure (us-west-2).

This matters for you if you have data-residency obligations. Two things follow:

  • The jurisdiction is a property of the model, not of your account — you
control it by controlling which model ids you call.
  • Partners meter and cache on their side. A partner that offers discounted
cache-hit pricing (see Prompt caching in the inference guide) is by definition holding a copy of your prompt prefix for a short window in order to do that. That is upstream of us and governed by the partner's policy, not this page.

If you need a hard guarantee that no request leaves a given jurisdiction, pin your workload to models whose datacenter you have verified, or talk to us.

Retention

The metering record described above is the billing record. We keep it for as long as we need to bill you, show you your usage history, and satisfy the accounting and tax retention rules we are subject to — which in practice means for the life of the account. There is no automatic purge job for it, and deleting it on request is not something the platform can do without destroying the invoice it substantiates.

Because that record is metadata and contains no prompt or completion content, the thing you are usually worried about retaining is — for chat, embeddings and images — already not being retained. Video job records are the exception described above. This is also why GPU.ai does not advertise a zero-data-retention mode: for most modalities we would be claiming to delete something we never wrote, while continuing to keep the billing rows we cannot delete — and video job records are retained. The provider metadata we publish to aggregators reports zdr: false for the same reasons.

Operational data that is not a billing record does age out. Availability snapshots and GPU market price history are pruned on a rolling 365-day window. Video job records follow the retention described in Video jobs: artifacts expire after 24 hours, job records (including prompts) are currently kept.

Deletion and export

  • Your usage history — readable any time via gpu usage / GET /v1/usage.
  • API keys — revoke immediately with gpu keys delete ; see
key rotation.
  • Account deletion — email support@gpu.ai. We
deactivate keys and stop all routing immediately; billing records are retained as described above.

Questions

Security or privacy questions, including vendor questionnaires and data-processing agreements: support@gpu.ai.

← All docs