RAG (Technical Document Search)
Overview
PlantPulse RAG is a RAG (Retrieval-Augmented Generation) search server that lets AI instantly search and reference technical documents, manuals, SOPs, and regulations from the manufacturing field.
It provides accurate, context-aware document search through 4 search modes, and when indexing, it also spells out tables, figures, and formulas inside documents into text so they are searchable too.
Document search is split into two layers.
- RAG API (
plantpulse-rag-api) — the layer where users and AI actually meet. Provides the document management screen and search API. - LightRAG — the internal engine that actually performs indexing and search. It is not exposed externally and is accessed only through the RAG API.
In other words, there is no way to directly open LightRAG's address or WebUI (/webui). All document work is done on the RAG API screen. (The old self-developed server plantpulse-rag has been archived, and as of 2026-07-30 the Documents screen below has replaced the direct LightRAG WebUI upload path.)
Search Modes
| Mode | Description | Suitable Situation |
|---|---|---|
| hybrid (default) | local + global — together with entities and relationships in the knowledge graph | General document search (recommended) |
| naive | Only vector similarity of document chunks (no graph used) | Conceptual questions, finding similar documents |
| local | Centered on entities (equipment, parts, etc.) appearing in the question | Checking details of a specific target |
| global | Centered on relationships between entities | Comprehensive information spanning multiple documents |
If given a mode name outside these four, search is refused without executing (REST 422) → RAG Algorithm
Usage Paths
| What to do | Where |
|---|---|
| Ask via chat | Copilot's Ask — the agent automatically calls the RAG API's rag_search tool through the MCP Gateway (see «Document search in chat goes only through the gateway» below). Clicking the evidence card (document · drawing · video) under the answer opens the document original · drawing · video in the right panel beside the conversation → Ask — Right Panel |
| Try searching directly | Query screen in the RAG API dashboard |
| Upload, delete, and list documents | Documents screen in the RAG API dashboard |
| Check automatic sync results | Sync History screen in the RAG API dashboard |
| See reasons for indexing failures | Logs screen in the RAG API dashboard |
The copilot has no built-in document search. Document search in chat is a single RAG tool, rag_search, behind the MCP Gateway.
- The gateway keeps
rag_search·rag_list_documentson from the start. If an administrator turns them off, chat cannot find documents. - If documents are not found, an administrator checks in AI Admin Console › MCP Gateway › Servers that the RAG Gateway server is on, and in Tools that
rag_searchis on → AI Admin Console — MCP Gateway - The user needs the chat tool permission (
tool:mcp) → Permissions - If it is off or the gateway does not respond, manual · drawing · procedure questions are not answered but blocked — 「Document search is unavailable right now (the MCP gateway is not responding) …」 or 「Document search is turned off or not allowed for this account …」 → Ask — When the answer is interrupted or stopped
- The RAG API dashboard's Query test and document originals · video playback do not go through the gateway, so if those screens work but only chat cannot find documents, the problem is on the gateway side.
Opening the document original in chat
Clicking a document evidence card under an Ask answer opens the original text of that document in the right panel. It does not navigate to the Documents screen or open a new tab.
| Document | In the panel |
|---|---|
| Opens directly in the panel using the browser's PDF viewer. Header row has Open in new tab · Download original | |
| Non-PDF formats (Word · Excel · HWP files, etc.) | Not rendered in the panel — "This format cannot be viewed here. Download the original to open it" and Download original |
| Browsers that cannot render PDF in-page (mobile, etc.) | "This browser does not have PDF viewing. Download the original to open it" and Download original |
| Restricted-level document | "This is a restricted-level document. The original cannot be opened or downloaded" — no Open/Download buttons |
- If document search finds the exact passage the answer relied on, the card gets a cited passage attached (with "page 12" if the PDF has known pages), and the panel shows that passage at the top and opens at that page. Documents with unknown pages (non-PDF documents · scanned PDFs whose text cannot be read · documents whose page info hasn't been generated yet) open at page 1. It is also common for a source to have no passage or page attached — especially for documents mixing figures and scanned pages, where the page isn't attached to avoid giving a wrong page. A passage is either a sentence from the original text or a row from a table.
- 🔴 Korean scanned PDFs without a text layer cannot be read. Upload PDFs that have a text layer.
- Permissions and viewing level are re-checked every time it is opened. Documents that cannot be viewed respond with "You do not have permission to view this document" → Permissions
- If the index remains but the stored original is missing, the response is "Original not found. No stored original exists, or the document has been deleted."
- Documents attached as evidence in Proposals also open in the same panel.
- The document card title is "Equipment name · Document name" (manually uploaded documents show "Common Document · Document name"), and the panel header shows the document name. Multiple passages from the same document are grouped into a single card.
- Documents that the AI searched but did not use in the answer are not attached as evidence cards.
Not the same as files added to a conversation
Files added with Add file in the Ask input box — video · audio included — do not go into this document search. The two are separate.
| Document search (RAG) | Files added to a conversation | |
|---|---|---|
| Who adds | Administrators (Documents screen · Admin Console) · automatic platform sync | The person asking — Add file in the input box |
| Where it is used | Every conversation of every person (within permissions · access classification) | That one conversation — only its owner sees it |
| How the AI reads it | Finds relevant passages with rag_search | Reads the pages · sheets · slides of the added file directly, and the transcript segments for video · audio |
| Video playback | Anyone who is logged in | Only the owner of that conversation |
| When it is deleted | When an administrator deletes it or it drops out of the ledger | Together with the conversation, when the conversation is deleted |
- Documents many people will look up again and again (manuals · SOPs · regulations) go into document search. A file for just this question goes into the conversation.
- There is no feature to move a file added to a conversation into document search. An administrator uploads the same file separately.
- How to add files and the limits (50MB · video · audio 1GB · 60 minutes · 20 per conversation · first 100 pages) are in AI Chat — Adding files.
Two Paths by Which Documents Come In
Documents are indexed in two ways. How they arrived determines how they are managed.
| Path | Source | Description |
|---|---|---|
| Automatic sync | Documents attached to equipment on the platform | When a document is attached to equipment on the platform, it is automatically indexed periodically. No need to upload it separately on the RAG side |
| Manual upload | Documents screen | Upload documents that don't belong to any equipment (common regulations, training materials, etc.) directly. The original is stored separately and survives re-indexing |
Manually uploading equipment-related documents to RAG causes them to diverge from the Platform's document ledger. It's simpler to attach equipment documents to equipment on the Platform and let RAG handle them via automatic sync.
Tables and Figures Inside Documents
When indexing PDF · DOCX · PPTX · XLSX, figures, tables, and formulas are extracted separately, and Aura attaches a caption to figures so they are indexed together. So content that was inside a figure, like "the valve number on this drawing," can also be matched in search.
Search queries are text. Attaching a photo to chat to have gauge readings · nameplate text read is handled by the Vision tool, and if needed, the AI searches documents again using that result → Ask — Asking with a Photo
Drawings and Videos Are Also Searched — But Must Be Turned On
When an administrator turns it on, RAG indexes drawings and video · audio in addition to documents. Both are off by default.
| What | Formats accepted | What's attached to the answer | Switch to turn on |
|---|---|---|---|
| Drawing | dxf · vector PDF (specified as "Drawing" when uploaded, or document type "Drawing" in the platform ledger) | Drawing card — highlights the spot in the page preview, revision badge, compare with latest revision | DRAWING_INGEST_ENABLED |
| Video · Audio | Video mp4 · mov · mkv · webm, Audio m4a · mp3 · wav, sidecar subtitles srt · vtt | Scene card — plays from that timestamp within the answer | Installation switch PI_MEDIA_ENABLED |
For usage and limitations, see Ask with a Drawing · Ask with Video · Audio; for how to turn them on, see Configuration. Turning on video · audio also enables Ask by Voice (microphone) in the Ask input box.
Until a Document Becomes Searchable
문서 등록 (플랫폼 설비 첨부 / Documents 화면 업로드)
│
▼
파싱 — PDF·DOCX·이미지에서 텍스트와 표를 추출
│
▼
청킹 — 검색 단위로 잘게 나눔
│
▼
임베딩 — 각 조각을 벡터로 변환
│
├──▶ 벡터 저장소 (유사도 검색)
└──▶ 지식 그래프 (엔티티·관계 추출)
Right after registration, it is not yet searchable. Since parsing and embedding must finish before it appears in results, if a document you just uploaded isn't found, first check its processing status on the Sync History screen.
Six Formats Are Indexed
Only PDF · DOCX · PPTX · XLSX · MD · TXT are indexed (if drawings · videos are turned on, the formats in the table above are added). When automatic sync encounters a document outside this set, it does not index it and leaves a tally of skip reasons in the sync result.
| Skip reason | Meaning | Where to fix |
|---|---|---|
ext_not_allowed | An extension outside the six above | Convert the format and re-attach |
ext_unknown | Extension unknown — no file format in the ledger and no extension in the document name | Platform document ledger |
size_over_limit | Exceeds the maximum file size (50 MB by default) | Split the file or raise the limit |
ingest_failed | Received but failed during the indexing stage | plantpulse-lightrag log → Troubleshooting |
ingest in /healthThere are states where all storage is up and running, but no document is coming in at all. The RAG API's /health
reports the last sync result as ingest, and unless it's ok · disabled, the overall status is degraded.
ingest | Meaning |
|---|---|
ok | The last sync succeeded |
error | The last sync failed |
unknown | It has never run, or the history couldn't be read — not "normal" |
disabled | Sync has been turned off |
Documents that an operator has excluded remain excluded even after running Reindex All.
Document Types That Can Be Managed
| Document Type | Example | AI Use |
|---|---|---|
| Maintenance manuals | Regular inspection procedures per equipment, lubricant replacement cycle | Immediately provides appropriate action when anomaly is detected |
| SOP | Process-specific work procedures, safety procedures, quality inspection criteria | Accurate step-by-step guidance |
| Safety regulations | Chemical MSDS, health and safety regulations, emergency response manual | Instant regulation reference in hazardous situations |
| Technical specifications | Equipment specs, sensor specs, allowable ranges | Reference for anomaly determination criteria |
| Incident/failure reports | Past failure cases, root cause analysis, recurrence prevention measures | Root-cause estimation based on similar cases |
| Training materials | New employee training materials, process description, quality training | Supports field training |
Configuration
Search parameters such as the embedding model, chunk size, and Top-K are settings on the LightRAG engine side and cannot be changed from the screen. The currently applied values can be checked on the Config screen of the RAG API dashboard (tokens and passwords are masked).
What usually needs adjusting during operation is on the sync side.
| Item | Description |
|---|---|
| Enable sync | Turns platform equipment document auto-indexing on or off |
| Sync interval | Interval at which platform document changes are checked |
| Number of documents to index at once | Cap processed per cycle — used to control load during large initial inflows |
| Maximum file size | Documents exceeding this size (50 MB by default) are skipped |
Usage Scenarios
| Scenario | Search Example |
|---|---|
| Checking maintenance procedure | "How to replace injector bearing" → Maintenance manual |
| Referencing safety regulation | "Response procedure for nitrogen gas leak" → Emergency response manual |
| Anomaly action guide | "Inspection items when temperature sensor is abnormal" → Inspection SOP |
| Searching past cases | "Cause of last year's Line 3 injector failure" → Failure report |
| Dimensions · revision in a drawing | "Where is Ø62 H7?" → Drawing · page · zone (when drawing collection is on) |
| Scene in a training video | "What to check before bearing press-fit?" → That timestamp in the maintenance training video (when video · audio is on) |
| Checking specifications | "Allowable temperature range for injector" → Technical specification |