ZBS Index What actually exists in applied AI, with the source next to it

Decision page

Private internal document assistant stack for Legal

What should a legal team use for a private assistant over internal documents?

ZBS editorial starting point. Start with Docling, pgvector, vLLM and LangGraph when controlled inference is a hard requirement.

Staff can search approved material without treating local hosting as proof of access control or quality.

Editorial starting point

Controlled internal retrieval

A concrete starting configuration that keeps source facts, model output and operational authority separate.

Choose this when: External model inference is prohibited and the firm can operate the stack.

  1. Ingestion Docling observed

    Convert approved documents locally. The public quickstart documents local conversion and structured export.

    Limit: Scans, unusual tables, annotations and source metadata require a representative parsing test.

    Evidence: source 1

  2. Retrieval pgvector observed

    Search with access metadata. It keeps vector search beside relational metadata and access filters in PostgreSQL.

    Limit: Approximate retrieval can miss results and needs recall measurement against an exact baseline.

    Evidence: source 1

  3. Inference vLLM observed

    Serve the selected local model. It provides a documented self-operated model-serving layer.

    Limit: Serving a model does not prove its task accuracy, safe tool use or secure operation.

    Evidence: source 1

  4. Workflow LangGraph observed

    Coordinate retrieval and refusal. Stateful workflow steps keep model output separate from acceptance and operational action.

    Limit: Policy, persistence, access control and recovery remain application responsibilities.

    Evidence: source 1

Private / local

Controlled reasoning path

Keep parsing, retrieval or model inference in controlled infrastructure while retaining the same source-of-truth and approval rules.

Choose this when: Sensitive inputs cannot be sent to an external model API and the team can operate the additional infrastructure.

  1. Ingestion Docling source backed inference

    Use a separate sensitive-file profile. The public quickstart documents local conversion and structured export.

    Limit: Scans, unusual tables, annotations and source metadata require a representative parsing test.

    Evidence: source 1

  2. Retrieval pgvector source backed inference

    Keep exact and approximate search. It keeps vector search beside relational metadata and access filters in PostgreSQL.

    Limit: Approximate retrieval can miss results and needs recall measurement against an exact baseline.

    Evidence: source 1

  3. Inference vLLM source backed inference

    Serve an isolated smaller tier. It provides a documented self-operated model-serving layer.

    Limit: Serving a model does not prove its task accuracy, safe tool use or secure operation.

    Evidence: source 1

  4. Workflow LangGraph source backed inference

    Route privileged requests. Stateful workflow steps keep model output separate from acceptance and operational action.

    Limit: Policy, persistence, access control and recovery remain application responsibilities.

    Evidence: source 1

Budget alternative

Lower-cost external model path

Keep the workflow and source integration explicit while evaluating a lower-cost model candidate on the same acceptance set.

Choose this when: External processing is acceptable and measured model spend is a leading constraint.

  1. Ingestion Docling source backed inference

    Convert documents locally. The public quickstart documents local conversion and structured export.

    Limit: Scans, unusual tables, annotations and source metadata require a representative parsing test.

    Evidence: source 1

  2. Retrieval pgvector source backed inference

    Select authorized source chunks. It keeps vector search beside relational metadata and access filters in PostgreSQL.

    Limit: Approximate retrieval can miss results and needs recall measurement against an exact baseline.

    Evidence: source 1

  3. Inference DeepSeek API source backed inference

    Provide an external cost comparison. It is a concrete lower-cost external model candidate for the same acceptance set.

    Limit: Price alone is not task fitness; output structure, languages, availability and data terms need testing.

    Evidence: source 1

  4. Workflow LangGraph source backed inference

    Keep refusal rules explicit. Stateful workflow steps keep model output separate from acceptance and operational action.

    Limit: Policy, persistence, access control and recovery remain application responsibilities.

    Evidence: source 1

Community check

Do you agree with this starting stack?

This is a reader opinion about the whole editorial recommendation, not evidence that the stack is objectively good. Votes never change it automatically.

Loading reader votes…

Voting needs JavaScript. The recommendation and every source above remain available without it.

Trade-offs that change the choice

ConstraintPrimaryPrivate / localBudget
Data boundary The named managed APIs receive only the fields explicitly sent to them Reasoning stays controlled; source systems may remain externalLower cost does not make external processing private
Operational load Lower: managed components with explicit integration points Highest: serving, retrieval and recovery are yoursModerate: custom workflow plus external APIs
Decision authority Risky writes and low-confidence cases require a deterministic or human gate The same gate is required regardless of hostingLower model price does not relax the approval rule

Implementation path

1. Define the boundary for files, chunks, prompts, logs and backups.

2. Carry permissions and deletion through the index.

3. Test cross-matter leakage and stale access.

4. Measure recall, grounding, exposure and operating cost.

Known limits

Private means a verified boundary, not merely local hosting.

The external budget path is incompatible when external inference is forbidden.

No product on this page is a universal winner; the configuration still needs a task-specific acceptance test.

EU and US routes stay consolidated with Global until evidence changes the answer.

Validate this stack on your data

A recommendation is a starting point. Practice Lab can test the same workflow on representative inputs, constraints and failure cases.

Request a real-data evaluation

Sources

  1. DeepSeek API documentation — DeepSeek, observed , trust tier 2.
  2. LangGraph overview — LangChain, observed , trust tier 2.
  3. vLLM documentation — vLLM, observed , trust tier 2.
  4. Docling quickstart — Docling, observed , trust tier 3.
  5. pgvector repository — pgvector, observed , trust tier 3.
  6. ZBS Index solution-stack editorial synthesis — ZBS Index, observed , trust tier 7.