Building Guardrails For Large Language Models