{"id":"oss-evals","slug":"oss-evals","name":"OSS / CI-native LLM evals","shortName":"OSS / CI-native LLM evals","problemStatement":"Run prompt evals and red teams in CI without paying for a hosted eval SaaS.","whenNotTopPick":"Need hosted collaboration/datasets for PMs — Braintrust; RAG-only metrics — Ragas.","categoryIds":["cat-observability"],"depotPickProviderId":"promptfoo","depotPickRationale":"pricePerf + privacy of local runs; Promptfoo wins general OSS+redteam.","runnersUpIds":["ragas","braintrust","langsmith","confident-ai","comet-opik","langwatch"],"weights":{"capabilityFit":0.26,"pricePerformance":0.12,"latencyReliability":0.12,"developerDx":0.22,"privacyPosture":0.12,"lockInRisk":0.08,"maturity":0.08},"methodologyNotes":"pricePerf + privacy of local runs; Promptfoo wins general OSS+redteam.","tags":["oss"],"depth":{"whenNotToUse":{"text":"Need hosted collaboration/datasets for PMs — Braintrust; RAG-only metrics — Ragas.","source":"editorial `whenNotTopPick` (data/jtbds.json)"},"whenNotToUseReason":null,"runnerUp":{"providerId":"ragas","name":"Ragas","overallForJob":8.29,"pickOverallForJob":8.43,"beatsPickOn":["pricePerformance","privacyPosture","lockInRisk"],"source":"first resolvable entry of the job's editorially ranked `runnersUpIds`; scores are stored job-weighted scores"},"runnerUpReason":null,"lockIn":{"pickLockInRisk":2.5,"runnerUpLockInRisk":2,"scale":"0–10 stored curated estimate; higher = more lock-in (worse)","pickExitSignals":["open source (provider tag `oss`)"],"runnerUpExitSignals":["open source (provider tag `oss`)"],"pickNotes":[],"selfHostFallback":[{"id":"promptfoo","name":"Promptfoo","license":"MIT","sourceUrl":"https://github.com/promptfoo/promptfoo/blob/main/LICENSE"},{"id":"inspect-ai","name":"Inspect AI","license":"MIT","sourceUrl":"https://github.com/UKGovernmentBEIS/inspect_ai/blob/main/LICENSE"},{"id":"swe-bench","name":"SWE-bench","license":"MIT","sourceUrl":"https://github.com/SWE-bench/SWE-bench/blob/main/LICENSE"}],"migration":"Runner-up Ragas has lower stored lock-in risk (2 vs 2.5, 0–10, higher = more lock-in). Pick exit signals: open source (provider tag `oss`). Self-host fallback listed for this job: Promptfoo, Inspect AI, SWE-bench.","migrationReason":null,"derivedFrom":"stored lockInRisk scores, provider tags (oss, self-host, openai-compat, open-models), free rows that list this job, and verbatim provider notes. No migration guide was invented."}},"freshness":{"pick":{"score":{"asOf":"2026-10-19","ageDays":8,"stale":false,"staleAfterDays":30,"reason":null},"lastReviewed":{"asOf":"2026-10-19","ageDays":8,"stale":false,"staleAfterDays":30,"reason":null},"sourceCheck":{"checkedAt":"2026-10-27","sourceUrls":3,"sourcesReachable":3,"pricingRows":0,"pricingRowsReconfirmed":0,"note":"A source re-check confirms the page is reachable and, for pricing rows, that the stored amount and SKU name appear on it. It does not re-derive or change the score.","reason":null}}}}