Use Cases + Implementation

How do you build internal copilots with RAG?

An internal copilot built on RAG answers from your own documentation, tickets and wikis instead of the model's memory. You index internal content into a permission-aware retrieval layer, then the copilot retrieves allowed passages and generates a cited answer through the live chat completions endpoint. Answers stay grounded, auditable and inside the boundaries your access model already defines.

Key facts

PipelineIndex internal sources → retrieve with ACLs → cited answers
Embeddingsplugsky-embed and plugsky-embed-multilingual via /v1/embeddings (live)
GenerationCited answers with streaming and JSON mode (live)
Models30+ models, including plugsky-longctx for long internal documents
PermissionsChunk-level access labels filtered before ranking
AuditRetrieval decisions and model metadata logged per request
ResidencyRegion-locked planes, VPC, on-prem and air-gapped options
Free tierplugsky-micro and plugsky-lite on the free plan, no card required

TL;DR

  • Index once across docs, tickets and wikis; answer anywhere through one retrieval layer.
  • Apply the user's access groups as a filter before retrieval, never after generation.
  • Require citations to source documents so employees can verify before acting.
  • Demote stale content with freshness metadata instead of deleting it silently.
  • Collect unanswered questions to find the documentation gaps worth fixing.

How it works, step by step

  1. Choose the first corpus — product documentation plus the internal wiki, or the support knowledge base — and define its owners.
  2. Parse and chunk content by article or heading, storing source, URL, version, updated date and access groups per chunk.
  3. Embed chunks with plugsky-embed and index them alongside your existing keyword search.
  4. Resolve the caller's identity and groups at query time and apply them as a hard filter before ranking.
  5. Generate the answer from retrieved passages only, with an instruction to cite sources and admit gaps.
  6. Return citations with deep links, plus a fallback list of raw results when confidence is low.
  7. Feed unanswered and low-rated questions back to the content owners and re-index on every publish.
1Choose the firstcorpus — productdocumentation plus2Parse and chunkcontent by articleor heading, storing3Embed chunks withplugsky-embed andindex them4Resolve thecaller's identityand groups at query5Generate the answerfrom retrievedpassages only, with6Return citationswith deep links,plus a fallback

Try it yourself

Open the best model for RAG selector →

Retrieval as the copilot's context layer

An internal copilot is a retrieval product with a conversation on top. Its quality ceiling is set by what retrieval returns: if the right passage is not in the prompt, no prompt wording will save the answer. So invest in the index — clean text, sensible chunks, useful metadata — before tuning the assistant's tone.

Plugsky supplies the live model layer: /v1/embeddings for indexing and /v1/chat/completions for answers with streaming and JSON mode. Connectors, ACLs and the vector store remain in your environment, which is where internal content governance belongs.

Permission-aware indexing for internal content

Internal content spans public-to-company, team-only and confidential material, often in the same source. Encode that distinction as data on every chunk, then enforce it at query time. The retrieval step should resolve the caller's groups server-side and filter before ranking, so no unauthorised passage ever enters a prompt.

  • Group labels: store group identifiers, not just a sensitivity score, so filters match your directory.
  • Source links: keep canonical URLs and document IDs so citations open the live version.
  • Versions: record document version and updated date to support freshness ranking.
  • Audit: log which chunks were retrieved per request for access reviews.

Answer quality and feedback loops

Ground every answer in retrieved passages and require citations. When passages conflict, instruct the copilot to present both and link to each source rather than choosing silently. When nothing relevant is retrieved, it should say so and offer the closest documents — a graceful miss is more useful than a confident invention.

Measure retrieval recall, citation accuracy and thumbs-up rate, and review the queries that produced no answer. Those misses are a map of missing or poorly written documentation. Add freshness signals so superseded pages sink in ranking, and re-index automatically when content owners publish. Residency follows the same pattern as other enterprise workloads: pin to a region-locked plane, or deploy VPC, on-prem or air-gapped.

Honest comparison

CapabilityPlugsky RAG copilotWiki searchManaged copilot product
Answer qualityGrounded synthesis with citationsRanked pagesVendor-defined
PermissionsFiltered before retrievalIndex ACLsVendor connectors
Model choice30+ models behind one endpointNoneVendor catalogue
FreshnessVersion metadata and re-index on publishManual curationVaries
ResidencyRegion-locked planes, VPC, on-prem, air-gappedYour infrastructureUsually cloud-only

Frequently asked questions

How is this different from enterprise search?

The retrieval layer is similar, but the copilot synthesises an answer and cites it. Search returns a list; the copilot returns a usable response with sources attached.

How do permissions stay correct?

Store group identifiers on every chunk, resolve the caller's groups in your service, and apply the filter before ranking. Prompts are never trusted with access control.

Do we need to copy all content into a new store?

You need an index of chunk embeddings, but the source remains the system of record. Keep canonical URLs in metadata so citations point back to live documents.

What happens when the copilot cannot answer?

It should say so, offer the nearest documents and log the query. Those logs identify documentation gaps and are more valuable than a fabricated answer.

Which models should we use?

Use plugsky-micro or plugsky-lite for routing and short answers, and stronger models for synthesis over long documents. 30+ models share one endpoint, so routing is configuration.

Can it run inside our network?

Yes. Plugsky supports region-locked cloud planes plus VPC, on-prem and air-gapped deployment for content that cannot leave your environment.

How do we measure success?

Track deflection rate, citation accuracy, thumbs-up ratio and zero-result queries. Also measure how often employees still open the cited document — verification is the trust signal.