What the documents look like
For general trade import declaration, the core materials are the import declaration form, commercial invoice, packing list, bill of lading and contract. Compared with export declaration, the import stage concentrates on dutiable value, freight and insurance, and tax payment. In store service and internal training, multi-turn dialogue needs to organise follow-up questions around those fields. Day-to-day data arrives from the International Trade Single Window, customs tariff schedules, freight forwarder arrival notices and foreign exchange payment slips, and it updates per shipment. Context carried inside a conversation therefore corresponds to one specific consignment.
In a store service setting, a customs manager or customs broker follows up repeatedly on the transaction term, the split of freight and insurance, and inspection cooperation. Multi-turn dialogue and prompts must keep the consignment identity, period and field consistent across consecutive follow-ups, and must record a gap explicitly when evidence is missing rather than writing in business facts.
Constraints at the multi-turn prompts step
Multi-turn dialogue depends on memory rounds to carry history forward. Memory rounds control how many earlier rounds of chat the AI may reference; a larger value makes it easier to reference earlier conversation, and also brings in more content, which can increase consumption and affect response speed. Customer service and knowledge base question-answering applications usually keep only a small number of history rounds. In the chat interface, when chatId is a non-empty string, the session is taken automatically from the database, the last item in the messages array is used as the user question, and other messages are ignored. When chatId is not passed, the session context provided by FastGPT is not used, and context is built from the passed messages instead.
Reply format controls the AI answer format. Ordinary chat, customer service question-answering and knowledge base question-answering normally keep the default; the setting changes only when a downstream flow needs to read fixed-format content. Selecting json_schema also requires filling in the corresponding format requirement. Temperature controls answer stability; a lower value is more stable and suits customer service, knowledge base question-answering and rule-clear scenarios.
Hypothetical drill sample: a customs broker store receives materials for one general trade import consignment. The commercial invoice states the transaction term as CIF, freight of USD 800 and insurance of USD 120. The bill of lading states an arrival date of 10 March 2025. The contract does not state a freight and insurance split clause. The draft sentence to be assessed is: "The freight and insurance for this consignment are already included in the transaction price, so no separate declaration is required." This draft sentence and the CIF transaction term and freight and insurance amounts stated on the invoice have a field relationship that requires checking. The absence of a split clause in the contract is unsupported information and cannot be used to conclude that no declaration is required.
Configuration and implementation checks
| Configuration item | Hypothetical trial starting point for this page | How to check |
|---|---|---|
| Memory rounds | Keep a small number of history rounds | Compare against the historyPreview actually carried in, and confirm whether it covers the current consignment follow-up |
| Reply limit | Set according to the required answer length | Check whether the reply is truncated early, compared with the required explanation length |
| Temperature | On the low side | Compare whether answers to the same follow-up are stable, which suits rule-clear scenarios |
| Reply format | Keep the default | Change to json_schema and fill in the format requirement only when a downstream flow needs to read fixed format |
| Multimodal recognition | Enable according to model capability | Check whether the model supports the corresponding media type; unsupported types are not sent |
| Hide AI output | Enable as needed | Confirm whether AI content needs to be passed to a downstream node for processing |
The values above are hypothetical trial starting points for this exercise, not official default values. The reason for choosing a lower temperature is that this scenario is rule-clear and needs to be compared with divergent answers at a higher temperature for stability.
Three common errors
- Setting memory rounds too large, which brings earlier conversation about a different consignment into the current follow-up and mixes up subject and period. To check, enter the follow-up from the hypothetical sample and compare whether information about other consignments appears in historyPreview.
- Selecting json_schema for reply format without filling in the corresponding format requirement, so a downstream flow cannot read a fixed structure. To check, verify whether the format requirement field in the configuration dialog has been filled in, and observe whether the returned structure matches the expectation.
- Treating retrieval results or form entries as business authorisation. In the hypothetical sample the draft sentence concerns freight and insurance declaration; a form collecting a value does not equal a completed customs declaration, and approval, database writes and external synchronisation require separate system implementation.
How to verify the setup
- Enter the complete material text and the draft sentence from the hypothetical sample, compare whether the draft sentence is consistent with the CIF transaction term and freight and insurance amounts stated on the invoice, and observe whether the answer records the gap in split basis and leaves the declaration decision to customs staff to verify against the applicable rules. The absence of a contract clause alone cannot support a conclusion that no declaration is required.
- Enter the follow-up from the hypothetical sample, compare whether the historyPreview carried in by memory rounds covers only the current consignment, and observe whether information about other consignments is mixed in.
- Enter the follow-up from the hypothetical sample with json_schema format selected, compare whether the returned structure matches the filled-in format requirement, and observe whether a downstream node can read the fixed fields. For empty-result handling, a clearly written paper input of [] can be used to check the downstream design; this does not claim that a fictional rule retrieval necessarily returns [].