[bot] Instrument Guardrails AI (30,625 weekly downloads)
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 48/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- python
- Área
- observability
Línea de trabajo
Start in py/src/braintrust/integrations/ and inspect py/src/braintrust/wrappers/, then read the [tool.braintrust.matrix] section of py/pyproject.toml and py/noxfile.py for existing integration patterns. Done means the guarded call and parse entry points are instrumented, with the integration represented in the matrix and a nox session or other repository test coverage added.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
guardrails-ai (import name guardrails, by Guardrails AI Inc.) is a framework for adding structural, type, and quality validation directly around LLM calls. Its primary execution surfaces are Guard.for_pydantic(output_class=...) / Guard().use(<validators>) to construct a guard, and then the callable form guard(model=..., messages=[...]), which invokes the LLM directly and returns a response with .validated_output — i.e. the Guard itself owns the LLM call, not just post-hoc validation of already-generated text. guard.parse(...) is the sibling entrypoint for validating a given string against attached validators.
This is a distinct project/package from NVIDIA NeMo Guardrails (nemoguardrails, tracked separately in #768) — different maintainer, different PyPI package, different API shape (Guard/validators around a direct LLM call vs. NeMo's LLMRails rails pipeline). This repository has zero instrumentation for Guardrails AI anywhere: no py/src/braintrust/integrations/guardrails* directory, no wrapper, no nox session, no cassette directory, and no entry in py/pyproject.toml's [tool.braintrust.matrix].
What's missing
guard(model=..., messages=[...])(and async variant) — the primary "guarded LLM call" entrypoint; since Guardrails AI drives the LLM call itself, an unwrapped call here means the underlying model call, validated output, and any validator retries are entirely invisible to Braintrust tracing.guard.parse(...)/guard.parse_async(...)— validates a given string against attached validators, returning a result with.validation_passed.Guard.for_pydantic(output_class=...)/Guard().use(<validators>)— guard construction with attached validators (useful for capturing validator configuration as metadata on the guarded-call span).
Weekly downloads
Weekly downloads: 30,625 (as of 2026-09-28; https://pypistats.org/api/packages/guardrails-ai/recent)
Braintrust docs status
not_found. Checked https://www.braintrust.dev/docs/guides/tracing and https://www.braintrust.dev/docs/guides/tracing/integrations (both checked 2026-09-28) — neither the tracing-integrations list ("OpenTelemetry, Temporal, Vercel AI SDK, OpenRouter SDK, LangChain, LangChain4j, LangSmith, LlamaIndex, Apollo GraphQL, Cloudflare Workers AI, DSPy, Google Discovery Engine, Instructor, LiteLLM, Ruby LLM, Spring AI, Traceloop, TrueFoundry") nor the agent-framework list mentions Guardrails AI or Guardrails.
Upstream sources
- PyPI: https://pypi.org/project/guardrails-ai/
- GitHub: https://github.com/guardrails-ai/guardrails
- Docs (quickstart): https://www.guardrailsai.com/docs/getting_started/quickstart
Braintrust docs sources checked
- https://www.braintrust.dev/docs/guides/tracing (checked 2026-09-28)
- https://www.braintrust.dev/docs/guides/tracing/integrations (checked 2026-09-28)
Local repo files inspected
py/src/braintrust/integrations/— noguardrails/directory (only unrelatedpy/src/braintrust/integrations/__init__.pyand the separately-trackednemoguardrailsgap in #768)py/src/braintrust/wrappers/— no Guardrails AI wrapperpy/pyproject.toml[tool.braintrust.matrix]— noguardrails-aientrypy/noxfile.py— notest_guardrailssession- Repo-wide case-insensitive grep for
guardrails.ai/guardrails_aiunderpy/src/braintrust/**/*.py— zero matches
- Lenguaje dominante
- Python
- Estrellas
- 20
- Forks
- 18
- Merge medio
- 21 h 8 min
- PR fusionados (30 d)
- 81
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de braintrustdata/braintrust-sdk-python
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
braintrustdata/braintrust-sdk-python#797 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
braintrustdata/braintrust-sdk-python#774 ·
Los mantenedores suelen responder en 1 día
-
Migrate legacy HTTPConnection callers to the policy-aware Transport incrementallyPosiblemente ocupada @AbhiPrasad la tomó hace 1 día. Abiertopython
braintrustdata/braintrust-sdk-python#839 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
new-integration
Dificultad 4/5 3-5 días Aptitud para principiantes 68/100
braintrustdata/braintrust-sdk-python#808 ·
Los mantenedores suelen responder en 1 día
-
new-integration
Dificultad 5/5 Más de una semana Aptitud para principiantes 45/100
braintrustdata/braintrust-sdk-python#806 ·
Los mantenedores suelen responder en 1 día
Todos los issues de braintrustdata/braintrust-sdk-python
Issues similares
-
comp/tools duplicate P2 sweeper:risk-compatibility tool/mcp type/bug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
NousResearch/hermes-agent#132042 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
deepset-ai/haystack#13092 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
EverMind-AI/Raven#845 ·
Los mantenedores suelen responder en 1 día
-
[Feature] 移除「切换到旧版知识库」入口Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
AstrBotDevs/AstrBot#10340 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
BasedHardware/omi#20401 · 1 comentario ·
Los mantenedores suelen responder en 1 día