Applies to:
Summary
Goal: Run evaluations tied to specific git commits to track experiments across multiple SHAs. Features: Git metadata tracking viarepo_info.commit or automatic collection with git_metadata_settings.
Tracking Options
Option 1: Set Commit SHA Explicitly (API)
Passrepo_info.commit when launching an eval to tie it to a specific SHA.
Option 2: Set Commit SHA Explicitly (SDK)
Specifyrepo_info when calling Eval() in Python or TypeScript.
Option 3: Enable Automatic Git Metadata Collection
Configuregit_metadata_settings to automatically capture commit info from your environment. By default, this setting will collect all git metadata fields allowed in org-level settings.
Filtering
Run Evals Across Multiple SHAs
To run batch evals based on a specific sha, filtering will need to be handled via your CI/CD pipeline or scripts to target only the desired data. In addition, your datasets will need to have stored the sha for comparison in your code. The following example assumes your dataset has stored the sha in your datasets metadata following the same repo_info pattern used for eval tracking.Filtering Evals by Commit SHA
Use commit SHA or 7+ character prefix to filter experiments in the UI or AI Search.- Navigate to your project’s experiments view
- Use the search/filter bar with
commit:abc1234(minimum 7 chars for exact match) - Compare results across different SHAs
Best Practices
- Use full SHA or minimum 7-character prefix for reliable filtering
- Set commit SHA in CI/CD workflows using environment variables (
$GITHUB_SHA,$CI_COMMIT_SHA) - Enable automatic collection for consistent metadata without manual specification
- Tag evals with branch name alongside commit for easier navigation