Nyraxis/ docs
Integrations
Developer documentation

Haystack

Evaluate input before Haystack runs and buffer output for a second decision.

Recipe for haystack-ai, not the older farm-haystack API. With a Pipeline, place gates around the exact generator and user-visible answer. Pipeline execution does not automatically become an intercepted SDK call.

Prepare the boundary

Complete the quickstart, set NYRAXIS_API_KEY and NYRAXIS_BASE_URL, and configure an applicable policy for the docs-integration agent. Keep all credentials server-side.

python -m pip install nyraxis-sdk==1.3.2 haystack-ai

Save nyraxis_gate.py beside your application. It evaluates input before calling your generator, requires a complete non-empty policy evaluation, then checks buffered output before returning it. Permission errors, incomplete checks and transport failures interrupt the operation.

Connect Haystack

Set the provider environment variables referenced below. Save this as example.py beside nyraxis_gate.py, then run python example.py.

import os
from haystack.components.generators import OpenAIGenerator
from nyraxis_gate import guarded_text_call

model = OpenAIGenerator(model=os.environ["OPENAI_MODEL"])
def generate(prompt):
    result = model.run(prompt=prompt)
    return result["replies"][0]

print(guarded_text_call("Explain how to contact support.", generate))

The provider API follows its upstream documentation. Pin that provider/framework version in your application lockfile. Recipe status is distinct from a live account test; review the support matrix.

Verify this integration

Run one safe prompt, one synthetic Secrets detection input, and one case where the generated output contains the synthetic password marker. Count provider calls: input blocking should stop the generator; output blocking should prevent the buffered answer from reaching the user. Repeat with an unreachable Nyraxis API and verify that the request does not proceed.

This boundary checks complete text. It does not automatically authorize tools, inspect every internal step, or block tokens after they have been emitted. Add application permissions before side effects and separate gates for intermediate untrusted data.

On this page