-
Notifications
You must be signed in to change notification settings - Fork 463
feat(ai_guard): migrate the AI Guard SDK to V2 of the message format #14916
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
Bootstrap import analysisComparison of import times between this PR and base. SummaryThe average import time from this PR is: 243 ± 5 ms. The average import time from base is: 246 ± 5 ms. The import time difference between this PR and base is: -3.5 ± 0.2 ms. Import time breakdownThe following import paths have shrunk:
|
d647670
to
21ea2b2
Compare
CircleCI:langchain
21ea2b2
to
c5e0d86
Compare
Performance SLOsComparing candidate malvarez/ai-guard-v2 (c5e0d86) with baseline main (6b54ca3) ❌ Test Failures (1 suite)❌ otelspan - 20/22✅ add-eventTime: ✅ 40.135ms (SLO: <47.150ms 📉 -14.9%) vs baseline: +0.4% Memory: ✅ 43.752MB (SLO: <47.000MB -6.9%) vs baseline: +4.8% ❌ add-metricsTime: ✅ 316.385ms (SLO: <344.800ms -8.2%) vs baseline: -0.2% Memory: ❌ 652.456MB (SLO: <630.000MB +3.6%) vs baseline: +4.9% ❌ add-tagsTime: ✅ 286.516ms (SLO: <314.000ms -8.8%) vs baseline: +0.3% Memory: ❌ 653.742MB (SLO: <630.000MB +3.8%) vs baseline: +4.9% ✅ get-contextTime: ✅ 80.032ms (SLO: <92.350ms 📉 -13.3%) vs baseline: +0.2% Memory: ✅ 39.602MB (SLO: <46.500MB 📉 -14.8%) vs baseline: +4.9% ✅ is-recordingTime: ✅ 38.587ms (SLO: <44.500ms 📉 -13.3%) vs baseline: +1.6% Memory: ✅ 43.243MB (SLO: <47.500MB -9.0%) vs baseline: +5.1% ✅ record-exceptionTime: ✅ 57.973ms (SLO: <67.650ms 📉 -14.3%) vs baseline: -0.2% Memory: ✅ 39.935MB (SLO: <47.000MB 📉 -15.0%) vs baseline: +4.8% ✅ set-statusTime: ✅ 44.322ms (SLO: <50.400ms 📉 -12.1%) vs baseline: +1.5% Memory: ✅ 43.220MB (SLO: <47.000MB -8.0%) vs baseline: +5.0% ✅ startTime: ✅ 37.379ms (SLO: <43.450ms 📉 -14.0%) vs baseline: +0.3% Memory: ✅ 43.205MB (SLO: <47.000MB -8.1%) vs baseline: +5.0% ✅ start-finishTime: ✅ 81.982ms (SLO: <88.000ms -6.8%) vs baseline: +0.2% Memory: ✅ 34.524MB (SLO: <46.500MB 📉 -25.8%) vs baseline: +4.8% ✅ start-finish-telemetryTime: ✅ 83.454ms (SLO: <89.000ms -6.2%) vs baseline: ~same Memory: ✅ 34.583MB (SLO: <46.500MB 📉 -25.6%) vs baseline: +4.9% ✅ update-nameTime: ✅ 39.093ms (SLO: <45.150ms 📉 -13.4%) vs baseline: +0.4% Memory: ✅ 43.432MB (SLO: <47.000MB -7.6%) vs baseline: +4.7% 🟡 Near SLO Breach (3 suites)🟡 djangosimple - 30/30✅ appsecTime: ✅ 20.502ms (SLO: <22.300ms -8.1%) vs baseline: -0.2% Memory: ✅ 65.588MB (SLO: <67.000MB -2.1%) vs baseline: +4.9% ✅ exception-replay-enabledTime: ✅ 1.346ms (SLO: <1.450ms -7.2%) vs baseline: -0.3% Memory: ✅ 64.577MB (SLO: <67.000MB -3.6%) vs baseline: +4.8% ✅ iastTime: ✅ 20.505ms (SLO: <22.250ms -7.8%) vs baseline: ~same Memory: ✅ 65.548MB (SLO: <67.000MB -2.2%) vs baseline: +4.8% ✅ profilerTime: ✅ 15.314ms (SLO: <16.550ms -7.5%) vs baseline: -0.3% Memory: ✅ 54.181MB (SLO: <54.500MB 🟡 -0.6%) vs baseline: +4.8% ✅ resource-renamingTime: ✅ 20.554ms (SLO: <21.750ms -5.5%) vs baseline: +0.2% Memory: ✅ 65.590MB (SLO: <67.000MB -2.1%) vs baseline: +4.9% ✅ span-code-originTime: ✅ 25.305ms (SLO: <28.200ms 📉 -10.3%) vs baseline: -0.5% Memory: ✅ 68.527MB (SLO: <69.500MB 🟡 -1.4%) vs baseline: +6.1% ✅ tracerTime: ✅ 20.517ms (SLO: <21.750ms -5.7%) vs baseline: +0.3% Memory: ✅ 65.525MB (SLO: <67.000MB -2.2%) vs baseline: +4.8% ✅ tracer-and-profilerTime: ✅ 22.096ms (SLO: <23.500ms -6.0%) vs baseline: -0.2% Memory: ✅ 66.935MB (SLO: <67.500MB 🟡 -0.8%) vs baseline: +5.0% ✅ tracer-dont-create-db-spansTime: ✅ 19.329ms (SLO: <21.500ms 📉 -10.1%) vs baseline: -0.2% Memory: ✅ 65.559MB (SLO: <66.000MB 🟡 -0.7%) vs baseline: +4.9% ✅ tracer-minimalTime: ✅ 16.606ms (SLO: <17.500ms -5.1%) vs baseline: -0.3% Memory: ✅ 65.486MB (SLO: <66.000MB 🟡 -0.8%) vs baseline: +4.8% ✅ tracer-nativeTime: ✅ 20.489ms (SLO: <21.750ms -5.8%) vs baseline: -0.2% Memory: ✅ 71.328MB (SLO: <72.500MB 🟡 -1.6%) vs baseline: +4.8% ✅ tracer-no-cachesTime: ✅ 18.500ms (SLO: <19.650ms -5.9%) vs baseline: ~same Memory: ✅ 65.600MB (SLO: <67.000MB -2.1%) vs baseline: +5.0% ✅ tracer-no-databasesTime: ✅ 18.793ms (SLO: <20.100ms -6.5%) vs baseline: +0.3% Memory: ✅ 65.581MB (SLO: <67.000MB -2.1%) vs baseline: +5.0% ✅ tracer-no-middlewareTime: ✅ 20.196ms (SLO: <21.500ms -6.1%) vs baseline: +0.2% Memory: ✅ 65.525MB (SLO: <67.000MB -2.2%) vs baseline: +4.8% ✅ tracer-no-templatesTime: ✅ 20.355ms (SLO: <22.000ms -7.5%) vs baseline: +0.3% Memory: ✅ 65.525MB (SLO: <67.000MB -2.2%) vs baseline: +5.0% 🟡 flasksimple - 18/18✅ appsec-getTime: ✅ 4.578ms (SLO: <4.750ms -3.6%) vs baseline: -0.5% Memory: ✅ 61.932MB (SLO: <65.000MB -4.7%) vs baseline: +4.8% ✅ appsec-postTime: ✅ 6.595ms (SLO: <6.750ms -2.3%) vs baseline: +0.1% Memory: ✅ 62.089MB (SLO: <65.000MB -4.5%) vs baseline: +5.2% ✅ appsec-telemetryTime: ✅ 4.582ms (SLO: <4.750ms -3.5%) vs baseline: -0.4% Memory: ✅ 61.991MB (SLO: <65.000MB -4.6%) vs baseline: +4.8% ✅ debuggerTime: ✅ 1.853ms (SLO: <2.000ms -7.4%) vs baseline: ~same Memory: ✅ 45.574MB (SLO: <47.000MB -3.0%) vs baseline: +4.5% ✅ iast-getTime: ✅ 1.855ms (SLO: <2.000ms -7.3%) vs baseline: -0.3% Memory: ✅ 42.448MB (SLO: <49.000MB 📉 -13.4%) vs baseline: +4.9% ✅ profilerTime: ✅ 1.906ms (SLO: <2.100ms -9.3%) vs baseline: -0.3% Memory: ✅ 46.458MB (SLO: <47.000MB 🟡 -1.2%) vs baseline: +4.9% ✅ resource-renamingTime: ✅ 3.381ms (SLO: <3.650ms -7.4%) vs baseline: -0.2% Memory: ✅ 52.239MB (SLO: <53.500MB -2.4%) vs baseline: +4.7% ✅ tracerTime: ✅ 3.364ms (SLO: <3.650ms -7.8%) vs baseline: +0.2% Memory: ✅ 52.219MB (SLO: <53.500MB -2.4%) vs baseline: +4.8% ✅ tracer-nativeTime: ✅ 3.355ms (SLO: <3.650ms -8.1%) vs baseline: +0.3% Memory: ✅ 58.296MB (SLO: <60.000MB -2.8%) vs baseline: +4.9% 🟡 flasksqli - 6/6✅ appsec-enabledTime: ✅ 3.946ms (SLO: <4.200ms -6.0%) vs baseline: ~same Memory: ✅ 62.254MB (SLO: <66.000MB -5.7%) vs baseline: +4.9% ✅ iast-enabledTime: ✅ 2.441ms (SLO: <2.800ms 📉 -12.8%) vs baseline: -0.4% Memory: ✅ 58.859MB (SLO: <60.000MB 🟡 -1.9%) vs baseline: +4.6% ✅ tracer-enabledTime: ✅ 2.060ms (SLO: <2.250ms -8.4%) vs baseline: -0.1% Memory: ✅ 52.339MB (SLO: <54.500MB -4.0%) vs baseline: +4.7%
|
Description
Upgrade the message format to V2 of the AI Guard REST API spec.
Testing
Risks
Since the current adoption of the SDK is low we've decide to drop V1 support in order to reduce extra code.
Additional Notes