What the documents look like
In cross-border product compliance and labeling, compliance work happens before listing and before import, and the core evidence concerns product safety and label wording. The working materials come from platform policy centers, testing laboratory reports, destination-country regulation libraries, and supplier files. Day-to-day documents include product test reports, English-language labels, MSDS files, and platform prohibited-listing lists. These materials are updated irregularly, and every new product listing requires fresh checking.
The subject, object, status, and validity range of a record are frequently spread across separate documents. A selection question must line up the product, the destination country, the report conclusion, and the label field. Similar wording in a retrieved passage does not by itself settle a compliance conclusion. Retrieval returns text that is related; it does not return records that have been authorized, and it does not return records that belong to a particular business entity. Permission and entity separation require separate checking. This page addresses one step only: model connections for product questions. It does not treat retrieval or a form as an authorization action, and it does not convert a pending handover into an approved one.
Constraints at the model connections step
FastGPT connects to model providers through AI Proxy. The App service and the Admin service must both set AIPROXY_API_ENDPOINT and a non-empty AIPROXY_API_TOKEN; if either is missing, startup validation fails. The old OpenAI environment variables and a single-model custom request address cannot substitute for these two settings. The model ID is the value of the model field in the request body and is globally unique; the model name is used for display only. A model channel determines the protocol type and the upstream address. Model mapping maps the model name that FastGPT requests to the model that the upstream provider actually receives. The system needs at least one language model and one index model before it can be used normally. A model probe reports availability and latency; it does not certify that the model's output is correct for any compliance question.
Hypothetical paper exercise sample. A cross-border seller plans to list a children's drinking cup in Germany. The material available for checking is an excerpt from a test report, and its wording is: "Report number HYP-2026-0417, sample is a 350 ml children's drinking cup, test item is phthalates, conclusion is that limits are met, report issue date 10 March 2026, valid until 9 March 2027." A separate English label draft contains the sentence under review: "This product meets German safety requirements for children's drinking vessels." The handover request reads: "Please confirm whether this report can support the label sentence above, and state what further materials are needed." In this sample the report covers the phthalates item only, while the label sentence does not name a test item. The subject is the same, but the field scope differs, so the label sentence is not supported by the material provided. This is a paper comparison and no test was run.
Configuration and implementation checks
The table lists only settings or implementation checks that the supplied official documents describe and that matter to this page's task. The middle column is a hypothetical starting point for this paper comparison, chosen so that two named values can be lined up; it is not an official default.
| Configuration item | Hypothetical starting point for this exercise | Comparison method |
|---|---|---|
AIPROXY_API_ENDPOINT | The AI Proxy service root address, with no /v1 appended | Compare against the deployment documentation example and confirm no path suffix is present |
AIPROXY_API_TOKEN | A non-empty administrator token matching the server configuration | Confirm the value is non-empty and is not an application API key |
| Language model | One enabled language model that has passed a model test | Run a test from the model test page and observe the returned result |
| Index model | One enabled index model that has passed a model test | Run a test from the model test page and observe the returned result |
| Model mapping | Map gpt-4o-test to gpt-4o | Compare against the mapping JSON in the channel configuration |
| Model probe interval | Set to 30 minutes for this exercise | Compare against the documented 5 to 60 minute integer range |
The 30-minute figure was chosen because it sits inside the documented range and is easy to compare against the range bounds. The mapping pair uses identifiers that appear in the official model configuration document. Neither value is asserted as a default.
Three common errors
- Filling
AIPROXY_API_TOKENwith an application API key. The input is a key generated on the application side; the comparison object is the AI Proxy administrator token; the observable result is a startup validation failure or a rejected call. - Writing a model alias into model mapping. The input is a display name; the comparison object is the model ID configured in the channel; the observable result is that the
modelfield sent upstream does not match the intended model. - Treating a retrieval similarity score as a permission filter. The input is a record with a high similarity score; the comparison object is whether that record falls inside the authorized scope; the observable result is that the record is recalled while use of it is not authorized.
How to verify the setup
- Verification one. Input the report excerpt and the label sentence from the hypothetical sample above. Compare the test item named in the report against the scope covered by the label sentence. The condition is satisfied only when the label sentence explicitly names phthalates and the report is inside its validity period. The current sample does not satisfy this condition, and the missing evidence stays missing: no further test item is supplied.
- Verification two. Input the handover request "Please confirm whether this report can support the label sentence above." Compare whether the reply asks for the materials that cover the items not yet covered. The condition is satisfied only when the reply names the missing test item or the missing regulatory basis. A reply that only restates the report conclusion does not satisfy the condition.
- Verification three. Input an empty-result downstream case, stated on paper as a retrieval result of
[]. Compare whether the downstream design handles an empty result as empty. The condition is satisfied only when the downstream does not produce a compliance conclusion and instead prompts for supplementary materials. This is a paper check of downstream design, and it does not assert that any retrieval will in fact return an empty array.
Verification four. Input the model mapping entry gpt-4o-test to gpt-4o. Compare the mapping JSON stored in the channel against the model ID that the upstream request carries. The condition is satisfied only when the upstream model value equals gpt-4o while FastGPT continues to request gpt-4o-test. Any difference between the two values is recorded as an observation, and the cause remains unknown unless a documented error code or an actual observation is available.
Verification five. Input the model probe interval of 30 minutes. Compare it against the documented 5 to 60 minute integer range. The condition is satisfied only when the configured value is an integer inside that range. A value outside the range is recorded as an observation; no failure cause is asserted without a documented error code.
All five checks are paper comparisons. No test, deployment, approval, or refund took place, and no business action was executed. Where a field is not provided in the supplied documents, the value remains unknown.