Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Giskard Core

Core shared utilities and foundational components for the Giskard library ecosystem.

Installation

uv add giskard-core
# or
pip install giskard-core

Requirements

  • Python >= 3.12
  • pydantic >= 2.11.0, < 3

Telemetry

giskard-core includes optional usage analytics to help maintainers understand how the libraries are used (versions, environment, coarse feature usage). Analytics are sent to PostHog hosted in the EU (https://eu.i.posthog.com).

What we collect

Installed versions of giskard-core, giskard-checks, and giskard-agents (each the package version or not_installed), a coarse environment label (ci, colab, kaggle, or local), and when you run giskard-checks flows, aggregated non-content metrics such as step counts, counts of checks by kind, booleans (e.g. custom trace type or target present), durations, and pass/fail/skip-style outcomes. Scenario names, prompts, model outputs, trace content, and exception messages are not sent.

If an error propagates through the telemetry context, a single event may record exception_type (the Python class name only), not the exception string or traceback.

Anonymous identifier

A random persistent ID may be stored under ~/.giskard/id so repeated sessions can be counted without logging in. If the home directory is not writable, a one-off anonymous value is used for that process instead.

How to disable telemetry

Set any of these environment variables to a truthy value before importing giskard packages (values are matched case-insensitively; common examples: 1, true, yes, on):

  • DO_NOT_TRACK
  • GISKARD_TELEMETRY_DISABLED

You can also call disable_telemetry() from giskard.core at runtime to turn off further sends for that process (for example from test harnesses). That does not remove ~/.giskard/id if it was already created; use env-based opt-out before import to avoid writing the file.

from giskard.core import disable_telemetry

disable_telemetry()

GeoIP

When telemetry is enabled, PostHog may apply GeoIP enrichment to events (server-side location metadata used in dashboards). That enrichment is off whenever telemetry is fully disabled (see above) or when you call disable_telemetry().

To keep usage analytics but disable GeoIP only, set this environment variable to a truthy value before importing Giskard packages (same matching rules as in How to disable telemetry):

  • GISKARD_TELEMETRY_DISABLE_GEOIP

For library authors

The client and helpers are exported from giskard.core: telemetry, telemetry_tag, telemetry_run_context, scoped_telemetry, and disable_telemetry. New events should follow the same rules: no user strings, secrets, file paths, or model I/O in analytics payloads.

Development

make setup    # Install dependencies
make test     # Run tests
make lint     # Run linting
make format   # Format code

License

This project is licensed under the MIT License - see the LICENSE file for details.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

giskard_core-1.0.1b6.tar.gz (11.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

giskard_core-1.0.1b6-py3-none-any.whl (13.5 kB view details)

Uploaded Python 3

File details

Details for the file giskard_core-1.0.1b6.tar.gz.

File metadata

  • Download URL: giskard_core-1.0.1b6.tar.gz
  • Upload date:
  • Size: 11.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for giskard_core-1.0.1b6.tar.gz
Algorithm Hash digest
SHA256 7417d8ae2949e7280d29b5d3fe8d037f744351ea9b71def8ed933444ea20ecb7
MD5 656e510d4823d0b4b10aa2cc3d10f34f
BLAKE2b-256 9539632d4f0dba4a87575d9b2b82b64686ebdee6096e7ceefdeb8f61fa257377

See more details on using hashes here.

File details

Details for the file giskard_core-1.0.1b6-py3-none-any.whl.

File metadata

  • Download URL: giskard_core-1.0.1b6-py3-none-any.whl
  • Upload date:
  • Size: 13.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for giskard_core-1.0.1b6-py3-none-any.whl
Algorithm Hash digest
SHA256 edfcf11ae0ab58ab7c56795b5b074bde2dfc8d5ce604f8a59b42869bb0d2a188
MD5 de3bed13df01fa8a9eca17314f864331
BLAKE2b-256 26cfcb616240f17769c44b0b3771a434fd5491951860abb1adb5bb1837b5ac51

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0.1

2 files

This release

1.0.1b6 This release

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page