What the documents look like
Brand outlet discount operations exist to clear out-of-season stock. This objective shapes the material set used for contract and transaction material comparison. Discount approvals, slow-moving inventory lists, price tags and gross margin calculation sheets carry explicit time and quantity boundaries. These materials are typically updated weekly or monthly, and they need to remain checkable against one another on the same style number, the same period and the same field. Outlet mall activities and historical discounts form the price background. ERP inventory age and POS sales provide stock and sell-through evidence. Finance business partners focus on the margin result. When parsing and chunking lose the subject, object, status or valid scope, later comparison has no original text to point back to.
FastGPT organizes a knowledge base into library, collection and data. The smallest search unit is the library. Vector storage uses the PostgresSQL PG Vector plugin with an HNSW index. The MongoDB dataset.datas table stores vector source data, and its indexes field records the corresponding vector IDs, so one group of data can map to multiple vectors. During retrieval, vectors are recalled first, then the vector ID is used to find the source content in MongoDB. When the same source data is hit through multiple paths, results are merged and the highest vector score is kept.
Chunking must preserve the completeness and single semantics of each data group. If the conditions in a discount approval, the style number and quantity in a slow-moving list, the price and effective scope on a price tag, or the period and basis in a margin sheet are split apart, the retrieved fragment cannot support same-field comparison. Hybrid search fuses semantic recall and full-text recall through RRF. A rerank model performs a second ordering of candidate text and returns a score between 0 and 1. The minimum relevance value is a filter threshold and takes effect only in semantic search or when result reranking is used. It does not perform permission or entity isolation. The reference upper limit controls how much content each search cites, measured in tokens.
Hypothetical drill sample: the original discount approval material to be checked reads in three sentences. "This approval form applies to the brand outlet East China store, style number A-2401, out-of-season stock 1,200 units. The requested discount is fifty percent of the tag price, valid from March 1, 2025 to March 31, 2025. Approval status is pending operations lead review." A draft handover request sentence to be judged reads: "A-2401 has been approved for clearance at fifty percent; the price tag team may execute directly." The draft sentence and the original text disagree on the approval status field. The original text states only pending review and does not state approval.
Constraints at the document chunking step
The comparison task depends on retrieving fragments that still carry the identity and version of the source material. A discount approval is meaningful only when the applicable store, style number, quantity, discount level, validity period and approval status stay together. A slow-moving list is meaningful only when the style number, inventory age and quantity stay together. A price tag is meaningful only when the price and its effective scope stay together. A margin calculation sheet is meaningful only when the period and calculation basis stay together.
The multi-vector mapping in FastGPT allows one group of data to map to multiple vectors, so a longer text can be annotated with several indexes and be recalled when any one of them is hit. This supports keeping a complete data group while raising retrieval precision. It does not remove the need to keep the subject, object, status and valid scope within the same source data.
The minimum relevance value filters low-relevance results. It is a threshold, not a final ordering rule. After problem optimization, hybrid search, image retrieval or reranking are enabled, final results may come from multi-path fusion and are not necessarily ordered strictly by a single vector similarity. A relevance score is not a category, entity or permission filter. Retrieval is not authorization. When a retrieved fragment contains only application content and no approval subject or effective scope, a price tag execution request lacks an authorization basis, and the evidence gap is recorded.
Configuration and implementation checks
| Configuration or check item | Value or action on this page | Basis and explanation |
|---|---|---|
| Search mode | Hybrid search | Precise fields such as style number and period coexist with natural language descriptions; semantic recall and full-text recall are fused through RRF |
| Minimum relevance | Hypothetical trial starting point 0.30 | This value is a hypothetical starting point, to be compared with 0.20 and 0.40 retrieval results and adjusted by observation; it is not an official default |
| Reference upper limit | Hypothetical trial starting point 2,000 tokens | This value is a hypothetical starting point, to be compared with 1,000 and 4,000 tokens for citation completeness; it is not an official default |
| Result reranking | Used when a rerank model is available and enabled by configuration | The rerank score can be used for filtering; when reranking is not enabled, that score is not produced |
| Chunk completeness check | Manually inspect whether conditions, style number, status and period are in the same chunk | Preserves the source data's ability to point back to the original text identity and version |
| Post-update review | After material changes, check the actual training and index state | A successful upload does not mean retrieval has already updated |
Three common errors
- Reading a pending-review status as approved. The input is the approval material original text above and the draft sentence. Compare the value of the approval status field. The original text gives "pending operations lead review" and the draft sentence writes "has been approved." The two values in the same field are mutually exclusive, so the draft sentence is judged unsupported by the original text.
- Associating libraries that use different vector models. The input is the vector model identifier of two libraries. Compare whether the identifiers are the same. When the identifiers differ, exclude joint association and record only each library's actual observation. Do not infer missed recall or redundant results.
- Treating a retrieval hit as authorized execution. The input is the retrieved discount fragment and the price tag execution request. Compare whether the fragment states an approving subject and an effective scope. When the fragment contains only application content, the price tag execution lacks an authorization basis, and the evidence gap is recorded.
How to verify the setup
- Input the approval material original text above and the draft sentence. Compare the approval status field. The original value "pending operations lead review" and the draft value "has been approved" are mutually exclusive. The condition is met when the retrieval result can point back to that original text and keeps it in the same chunk. If the status and the application content are split into different chunks, the condition is not met.
- Input style number A-2401 and the natural language query "out-of-season stock clearance discount." Run full-text and semantic recall separately. Compare whether the returned fragment contains all four items: style number, quantity, period and status. The condition is met when all four appear in the same source data. A fragment containing only the style number is a partial hit and is recorded as pending supplement.
- Input a query with no corresponding material and check the downstream design, for example whether an empty reference list is handled as an empty result. Do not claim that this query necessarily returns an empty list. After a material change, compare the training and index state records before and after the change. Any observed state difference serves as the review basis; when no difference is observed, record it as unconfirmed.