Generate Customer-Support Instructions from Company Policies
AirbnbMachine Learning Engineer · OnsiteLast updated
Design a policy-grounded support RAG system with ordered instructions, applicability checks, procedural evaluation, citations, and version-aware debugging.
Design a RAG system that helps customer-support personnel resolve user issues. It reads company policies and produces step-by-step instructions for the support agent to follow.
Constraints & Assumptions
- The output is an evidence-grounded procedure for a human support agent, not autonomous execution of account changes.
- Policies can have versions, effective dates, and applicability conditions. Clarify which issue context is available and which facts the support agent must confirm.
- Steps must not invent permissions, exceptions, or remedies absent from the applicable policies.
- Include data, retrieval, model behavior, evaluation, and online debugging. No scale, model vendor, or latency SLA is specified.
Clarifying Questions to Ask
- Which issue types are supported, and how are conflicting policies prioritized?
- Are policies restricted by region, product, account type, or support role?
- Should the assistant ask for missing facts before producing an executable procedure?
- What is the escalation path when evidence is missing, conflicting, or outdated?
Part 1 — Policy ingestion and retrieval
Design policy storage, chunking, metadata, and retrieval for the issue being handled.
What This Part Should Cover
- Version/effective-date metadata, access controls, and preservation of procedural context.
- Retrieval of prerequisites, exceptions, and related rules, not only a superficially similar paragraph.
- Handling of changed, deleted, or conflicting policy sources.
Part 2 — Step-by-step generation
Define how retrieved evidence becomes an ordered support procedure with references and uncertainty handling.
What This Part Should Cover
- Applicability checks and required customer facts before taking a step.
- Ordering, branching conditions, citations, and explicit escalation when unsupported.
- A boundary between untrusted policy text, model instructions, and authorized human actions.
Part 3 — Evaluation and debugging
Explain how to test the system and diagnose an incorrect instruction sequence in production.
What This Part Should Cover
- Retrieval coverage and procedural correctness, including missing prerequisites and invalid exceptions.
- Test cases involving stale policies, conflicting clauses, missing context, and no supported answer.
- Traceability from each generated step to retrieved versions and the decision path.
Hints
Hint 1
Retrieve the rule around the action: A policy sentence naming a remedy may be unsafe to apply without its eligibility conditions, exceptions, and approval requirements. Keep those dependencies visible to both retrieval and evaluation.
Follow-up questions
- How would you handle a policy update while a support conversation is already in progress?
- What would you do if the retrieved documents disagree about an exception?
Solution walkthrough is for members
Get the full walkthrough with reference code and complexity analysis, plus Kitty Coach at 300 messages a day. Hints, the code runner and community answers stay free.