Skip to main content

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.1.tar.gz (13.1 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.1-py3-none-any.whl (15.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: giskard_core-1.0.1.tar.gz
  • Upload date:
  • Size: 13.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","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.1.tar.gz
Algorithm Hash digest
SHA256 cc031a13c64e39e989b2a09f755d0da0275f5a563085e108efa119065601efa4
MD5 cb75a5f49a55025f4f156da599a98c2d
BLAKE2b-256 4aab1a6b63122f771cca02975a33e51e6d3894485b7de4a2ddd27b381c4295ee

See more details on using hashes here.

File details

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

File metadata

  • Download URL: giskard_core-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 15.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 36effdfa35d864943d90b5f9e9c21d9e857dfd9e5e83abbf8dce19bfab2161a6
MD5 e8a9a8db221ba0e046d9a2e93d8e4f94
BLAKE2b-256 e4cf265cd730464c21a7c397ffb0adffca971879b6db6960ea70e5b676e1dd06

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.1 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