Overseas stock replenishment: model connections for product questions

Review model connections for product questions in Overseas stock replenishment. Check input mappings, source evidence and failure handling before use.

What the documents look like

Third-party overseas warehouses can serve several sales channels at once, and the seller assigns stock across them rather than receiving an automatic allocation. Replenishment work draws on warehouse WMS records, ERP sales forecasts, freight forwarder systems and carrier bills. The documents handled day to day are replenishment plans, inbound booking forms, inventory age tables and last-mile delivery notes. In product material and selection questions, these documents act as material to be checked against, not as records that already carry an approval.

A replenishment plan may state a coverage period and the SKUs assigned to a named overseas warehouse. An inbound booking form may carry a booking number and a submission status. An inventory age table may show how many days a SKU has sat in the warehouse. These three document types are the ones this page uses, because the selection question here is whether a drafted sentence about a booking, a SKU or an age figure is supported by the material on hand.

Constraints at the model connections step

Model connections run through AI Proxy. Both the App and the Admin service must set AIPROXYAPIENDPOINT and a non-empty AIPROXYAPITOKEN; if either is missing, startup validation fails. Older OpenAI environment variables and a single-model custom request address do not replace these two settings. The system needs at least one language model and one index model to work normally.

A model ID is the value of the model field in the request body and is globally unique. A model channel is configured by protocol type, and one model can sit in several channels for load balancing. Model probing covers only system models that are currently enabled; disabled models are not probed and produce no history. A probe retries at most three times after the first failure, so one round makes at most four attempts, and only when all four fail is the model judged abnormal. The alert webhook fires on edge changes of model status, one message per model.

Hypothetical paper exercise sample: a cross-border seller submits material to be checked. The source text reads: "This replenishment plan covers 1 September 2026 to 30 September 2026 and involves SKU-A and SKU-B at the German overseas warehouse; inbound booking RK-0912 has status Submitted and has not yet received warehouse confirmation; the inventory age table shows SKU-B at 95 days of stock age." One drafted sentence to be judged reads: "Inbound booking RK-0912 has received warehouse approval and last-mile delivery can be arranged." The source text carries no approval field, so this drafted sentence is not supported.

Configuration and implementation checks

Configuration itemHypothetical starting value for this exerciseReason and comparison method
AIPROXYAPIENDPOINThttp://aiproxy:3000Documented as the service root address without /v1 appended; compare against the documented format
AIPROXYAPITOKENA non-empty administrator tokenDocumented as required, non-empty and consistent with the server side; compare the App value with the deployment value
Language model and index modelOne of each enabledDocumented as the minimum for normal use; compare against the enabled model list
Model probe interval30 minutesDocumented as an integer between 5 and 60 minutes; compare against that range
Alert webhook addressA hypothetical HTTPS callback addressDocumented as accepting HTTP or HTTPS; use the test button to check connectivity
Model mappinggpt-4o-test mapped to gpt-4oDocumented example format; compare against the model ID inside the channel

Three common errors

  1. Treating the Submitted status of RK-0912 as warehouse approval. The input is the source sentence "status Submitted and has not yet received warehouse confirmation"; the comparison object is the drafted sentence "has received warehouse approval"; the observable result is that the source text lacks an approval field, so the drafted sentence is not supported.
  2. Using an application API key in place of the administrator token for AIPROXYAPITOKEN. The input is the deployment-side token and the value written in the App configuration; the comparison is whether both are non-empty and equal; the observable result is that startup validation fails when either is empty or the two differ.
  3. Reading a single failed attempt as an abnormal model. The input is the attempts field of one probe round; the comparison is that value against the documented range of 1 to 4; the observable result is that an attempts value below 4 does not meet the condition for an abnormal judgement.

How to verify the setup

  1. Check the drafted sentence "inbound booking RK-0912 has received warehouse approval" against the source. The input is the two hypothetical source sentences and the drafted sentence. Compare whether the source text states an approval status field. The condition is met only when the source contains an approval field and the subject, booking number and period match; otherwise record the sentence as not supported.
  2. Check the token configuration. The input is the actual values written for AIPROXYAPIENDPOINT and AIPROXYAPITOKEN. Compare whether the token is non-empty and consistent with the server side. Startup validation passes only when both conditions hold; when either is missing, record the configuration as incomplete.
  3. Check probe retry behaviour. The input is the attempts and status of one probe round. Compare whether attempts reaches 4 and status is red. An abnormal judgement holds only when both are true at once; when attempts is below 4, record that the condition for an abnormal judgement is not reached.