LlamaIndex
Evaluate input before LlamaIndex runs and buffer output for a second decision.
Recipe: adapt this final text boundary to your query engine. Submit retrieved source context explicitly for grounded-output evaluation; this call does not automatically gate retrieval, tools or every node.
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 llama-index-core llama-index-llms-openaiSave 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 LlamaIndex
Set the provider environment variables referenced below. Save this as example.py beside nyraxis_gate.py, then run python example.py.
import os
from llama_index.llms.openai import OpenAI
from nyraxis_gate import guarded_text_call
model = OpenAI(model=os.environ["OPENAI_MODEL"])
def generate(prompt):
return model.complete(prompt).text
print(guarded_text_call("What are your support hours?", 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.