What the documents look like
Fresh-food concession counters in hypermarkets are often staffed by supplier personnel who operate on site and are paid through sales revenue sharing. The daily material set includes concession contracts, daily sales reports, shrinkage sheets and food purchase inspection records. These materials originate across POS systems, supplier delivery notes, food safety ledgers and store inventory counts. Errors in this setting can trigger food safety penalties, gross-margin disputes and customer claims.
In cross-border and multilingual situations, contracts and inspection records may contain foreign-language product names, overseas supplier names and multilingual licence descriptions. Parsing and chunking must preserve the back-reference relationships among these fields so that later retrieval can check them against one another. A supplier name, a counter identifier, a validity period and a shrinkage-sharing ratio may appear in different sentences of the same attachment, and the chunking step decides whether they remain retrievable as one data group.
Constraints at the document chunking step
Chunking follows the structure of each material so that a condition, its explanation and the content it constrains stay inside the same data group. In FastGPT, one group of source data can correspond to multiple vector indexes, and a hit on any one index recalls that data group; the vector score takes the highest value. Semantic retrieval supports cross-language understanding, so a Chinese question can match a foreign-language knowledge point, but accuracy depends on model training and sentence completeness. Full-text retrieval suits exact queries such as numbers, models and proper nouns. Image retrieval requires image input and model capability, and reranking requires a model plus the setting being enabled; neither runs on every request. Libraries built on different vector models cannot be associated together; the identifier is checked first and non-matching libraries are excluded.
Hypothetical paper exercise sample: a concession contract attachment contains three sentences — "Supplier: A Trading Co., Ltd.; Counter: B Hypermarket Fresh Zone Counter 3; Validity: 1 January 2025 to 31 December 2025." "Shrinkage sharing ratio: fresh category at 2% of sales." "Inspection records must accompany the goods, in Chinese or English." A draft sentence for review reads: "This supplier's 2025 annual shrinkage is shared at 2% of sales." The comparison object is whether the draft sentence matches the attachment on subject, period and field.
Configuration and implementation checks
| Configuration item | Hypothetical starting point for this exercise | Reason and comparison method |
|---|---|---|
| Search mode | Hybrid retrieval | Material mixes foreign-language product names with Chinese identifiers; semantic and full-text run together, compared with semantic retrieval alone for recall coverage |
| Minimum relevance | 0.4 | Hypothetical starting point to filter low-relevance fragments; compared with 0.3 and 0.5 on whether cited content contains unrelated fragments |
| Citation limit | 3000 tokens | Hypothetical starting point controlling citation volume by tokens; compared with 2000 and 4000 on whether key conditions are truncated |
| Question optimisation | Enabled | Multilingual follow-up questions contain references; after enabling, the completed result is checked for subject and period |
| Reranking | Enabled | Second-pass ordering when candidates are numerous; rerank score is checked against the vector score |
| Index field | indexes array | One source data group can carry multiple indexes; a hit on any index is checked for recalling the same group |
Three common errors
- Treating a successful upload as retrieval already updated. The upload action and the training or index state are separate facts. The check is to confirm whether the data has completed training and whether an index was actually generated. The input is the dataset status view; the comparison is between the upload record and the training or index state; the observable result is a recorded gap when the index is absent.
- Treating semantic similarity as a permission or entity filter. Minimum relevance is a filtering threshold and does not exclude unrelated businesses or non-matching subjects. The check is to compare the recalled content's subject and period against the source text by hand. The input is the retrieval result; the comparison is subject, period and field against the attachment; the observable result is a recorded gap when the draft omits the "fresh category" qualifier.
- Forcing association across libraries built on different vector models. Libraries using different vector models cannot be associated together. The check is to verify the identifier first and exclude non-matching libraries, recording the actual observation. The input is the library identifier list; the comparison is the model identifier across libraries; the observable result is the excluded library being recorded, with no claim about missed recall or redundant results.
How to verify the setup
- Enter the hypothetical sample attachment text and the draft sentence "This supplier's 2025 annual shrinkage is shared at 2% of sales," then compare subject, period and field against the source. The source subject is A Trading Co., Ltd., the period is the full year 2025, and the field is the fresh-category shrinkage sharing ratio. The draft omits the "fresh category" qualifier, which is unsupported and must be recorded as a gap. A match on all three elements would satisfy the condition; a missing qualifier does not.
- Enter "shrinkage sharing ratio" as a semantic query and "2%" as a full-text query, then compare whether the two recall paths hit the same data group. A hit on the same group, with the fused citation containing the complete conditional sentence, satisfies the condition. A hit on the ratio alone while losing the "fresh category" qualifier indicates incomplete chunking.
- Use a paper input of an empty array to check how the downstream handles an empty result, observing whether it is treated as a non-hit and whether the gap is recorded. No claim is made that a fictional rule returns an empty result. After material changes, re-check the training and index state to confirm the retrieved content has updated, rather than treating a successful upload as sufficient.