What the documents look like
Price and display auditing for chain stores happens during ordinary trading periods, and the emphasis sits on sustained execution of standards rather than on opening support or franchise training. The working materials come from supervision systems, POS price tables, store cameras and head office promotion calendars. The daily documents are store visit photographs, price tag lists, display standards and rectification notices, with weekly or monthly update cycles. Product information and selection questions are answered against this material, so the choice of vector model and index determines whether store visit photographs and price tag lists can be retrieved at all.
Constraints at the vector indexes step
A FastGPT knowledge base is built from libraries, collections and data. The smallest search unit is the library, and collections only classify data for management purposes without affecting search results. Knowledge bases linked into one retrieval must share the same vector model, so the actual model and its input types are checked first. Libraries built on different vector models cannot be linked together; the check is to compare model identifiers, exclude those that do not match, and record what was observed.
Vector storage uses the PostgresSQL PG Vector extension with an HNSW index. PostgresSQL serves vector retrieval only, while MongoDB handles other data access. The dataset.datas table stores vector source data and carries an indexes field that records vector IDs as an array, so one group of data can correspond to several vectors. A single source block can be associated with multiple indexes, and the index content is checked separately from the source text. Index content is built from complete and focused information, and retrieval coverage against index length is weighed against the sample at hand.
Image retrieval also depends on whether image descriptions or image vectors were generated at ingestion time, so the query side alone does not settle the question. After any model or index change, the same set of questions is used to compare returned source text, and vector scores alone do not support a promise about outcomes. Hybrid retrieval combines multiple result paths through RRF, reranking requires a model and must be enabled in settings, and image retrieval requires a corresponding image input together with model capability.
Configuration and implementation checks
Hypothetical drill sample. Source material provided for checking: "Page 12 of the East China region March 2026 price tag list states that product A carries a store retail price of 9.9 yuan, with a promotion period from 1 March to 15 March. The display standard on the same page requires product A to be placed on the second shelf of the end cap." Draft sentence to be assessed: "Product A is sold at 9.9 yuan for the whole of March, displayed on the second shelf of the end cap." The draft treats the promotion period as the full month, which exceeds the valid range in the source text.
| Configuration item | Assumed trial starting point for this exercise | Reason for the choice and comparison method |
|---|---|---|
| Linked knowledge bases | Link only the price tag and display libraries that share one vector model | Check the model identifier first, compare it against each library to be linked, and exclude those that do not match |
| Index fields | Build a text index for price tag list blocks and, subject to model capability, an image index for store visit photograph blocks | Compare against whether the corresponding index was generated at ingestion, checking the query side separately |
| Search mode | Begin with semantic retrieval plus full-text retrieval as hybrid retrieval | Price tag numbers and prices are exact queries, so compare cited source text against pure semantic results |
| Reference cap | Set the trial starting point to a token amount covering a single price tag list page | Compare against the length of that page and observe whether the citation truncates the promotion period sentence |
| Minimum relevance | Take a middle value as the trial starting point | Compare against the relevance of the block that the draft sentence hits and observe whether the promotion period sentence is filtered out |
| Result reranking | Enable reranking when candidates are numerous | Compare cited source text order for the same question against results without reranking |
Three common errors
- Treating a retrieval hit as authorized execution. A retrieval returning price tag list source text only shows that the passage was recalled; it does not show that a rectification notice was approved or that a promotion was executed. The input is the draft sentence, the comparison object is the promotion period field in the source document, and the observable result is whether the draft sentence matches the source text.
- Linking libraries that use different vector models. The input is two knowledge bases with different model identifiers, the comparison object is the model identifier, and the observable result is that mismatched identifiers are excluded. Cross-model retrieval is not run to compare missed recalls.
- Treating minimum relevance as a permission or entity filter. The input is a query containing unrelated stores, the comparison object is the relevance threshold against returned blocks, and the observable result is that the threshold only affects relevance selection and does not exclude unauthorized records.
How to verify the setup
- Run a retrieval with the draft sentence from the hypothetical drill sample, compare the promotion period field in the returned source text against the draft sentence, and observe whether the result marks "the whole of March" as exceeding the range "1 March to 15 March".
- Run the same question with reranking enabled and disabled, compare the order of cited source text between the two runs, and observe whether reranking changes candidate order. A first-place hit is not guaranteed.
- Use an explicit paper input of an empty array to check the downstream design, compare whether the chain proceeds when the node output reference length can be zero, and do not claim that a fictional rule retrieval necessarily returns an empty array.