What the documents look like
General trade import declaration work runs on a recurring document set: the import declaration form, commercial invoice, packing list, bill of lading, and contract. Compared with export declaration, the import side concentrates on customs dutiable value, freight and insurance apportionment, and tax payment. Copy drafting for goods and marketing therefore has to stay aligned with the declared basis used across those documents. Records update per shipment, and the goods description, transaction terms, freight and insurance allocation, and origin details can all shift with each document set.
These traits shape how drafting inputs are organized. Goods name, specification, quantity, unit price, and currency come from the commercial invoice and packing list. Transaction terms together with freight and insurance shape how the dutiable value is worded. The contract and bill of lading supply the parties and batch information. At the drafting step these fields function as material to be checked, and model output cannot be used externally on its own.
Constraints at the model connections step
Model access depends on the AI Proxy service. Both the App and Admin services must set AIPROXYAPIENDPOINT and a non-empty AIPROXYAPITOKEN; missing either one causes startup validation to fail. Older OpenAI environment variables or a single-model custom request address do not replace these two settings. The model ID configured in a model channel and the model mapping determine which upstream model actually receives the request, and model capabilities such as image input and tool calling must be checked item by item in the model configuration.
Hypothetical walkthrough sample: an importer holds one general trade import consignment. The commercial invoice states "Goods name: stainless steel kitchenware; specification: 304 stainless steel; quantity: 2000 pieces; unit price: USD 4.50; transaction terms: CIF." The contract states "The seller arranges transport and insurance; the goods are to be shipped on or before 10 March 2026." One draft sentence is pending judgment: "This batch of stainless steel kitchenware uses 304 stainless steel, totals 2000 pieces, is priced at USD 4.50 per unit, and already includes transport and insurance costs."
The specification, quantity, and unit price in the draft sentence match the commercial invoice, and the CIF transaction term corresponds to the seller arranging transport and insurance, consistent in direction with the contract wording. The sentence does not exceed the material. If the draft sentence instead read "this batch of kitchenware has been certified by a certain certification body," the material contains no certification information, so that sentence is unsupported.
Configuration and implementation checks
| Configuration item | Hypothetical trial starting point | Check method |
|---|---|---|
| AIPROXYAPIENDPOINT | Assume http://aiproxy:3000 | Compare against the documented service root address format and confirm no /v1 is appended |
| AIPROXYAPITOKEN | Assume a non-empty admin token | Compare against the server-side configuration and confirm it matches and is non-empty |
| Model channel model ID | Assume one language model is selected | Compare against the model ID in the model configuration and confirm it matches |
| Model mapping | Assume the drafting model is mapped to an upstream model | Compare against the channel configuration and confirm the request model name corresponds to the upstream model name |
| Model capability | Assume checking whether the required input type is supported | Compare against the model configuration fields and confirm image input, tool calling, and similar capabilities meet drafting needs |
| Model test | Assume running a model test on the configured channel | Observe the test result and request duration to confirm the model is available |
These values are hypothetical trial starting points for this page, not official defaults. They were chosen to cover four links: access address, authentication, model identity, and capability checking.
Three common errors
- Filling AIPROXYAPIENDPOINT as a full request address with
/v1appended. The input is the hypothetical valuehttp://aiproxy:3000/v1; the comparison object is the documented service root address format; the observable result is that the value does not meet the root address requirement. - Using an application API key in place of AIPROXYAPITOKEN. The input is the hypothetical application key; the comparison object is the admin token requirement; the observable result is that the value does not satisfy the non-empty admin token condition.
- Writing certification information into a draft sentence when the material does not state it. The input is the hypothetical draft sentence "this batch of kitchenware has been certified by a certain certification body"; the comparison object is the commercial invoice and contract text; the observable result is that the material contains no certification field, so the sentence is unsupported.
How to verify the setup
- Input the hypothetical AIPROXYAPIENDPOINT and AIPROXYAPITOKEN; compare against the documented required and non-empty conditions; if both are present and the format matches, the access configuration meets the startup validation conditions.
- Input the hypothetical draft sentence "This batch of stainless steel kitchenware uses 304 stainless steel, totals 2000 pieces, is priced at USD 4.50 per unit, and already includes transport and insurance costs"; compare against the commercial invoice and contract text; if specification, quantity, and unit price match the invoice and the transport and insurance responsibility matches the contract, the sentence is supported by the material.
- Input the hypothetical draft sentence "this batch of kitchenware has been certified by a certain certification body"; compare against the commercial invoice and contract text; if the material contains no certification information, the sentence is unsupported and needs either additional material or revised wording.