API and the ChatGPT performs different?


I am calling API with gpt-4 model to translate some texts. But find the API result is different from what I see from the ChatGPT web interface(I also choose GPT-4).

For example, I sent the following prompt:

Please translate the following contents from English (United States) to Bengali (India): '%d items in file ''%s'' have been recovered successfully!'

The API will produce the translation that changes the order of the placeholders(starting from %):

'"%s" ?????? %d ?? ????? ??????? ?????????? ??? ??????!

??? is the text, while the order of the placeholders are changed.

If I input the same prompt in the web interface, then the translation will be OK. The order of the placeholders are correct.

Moreover, it will produce some more information as below:

Final Answer:
'%d টি আইটেম ফাইলে "%s" সফলভাবে পুনরুদ্ধার করা হয়েছে!'

When translating text, the primary objective is to maintain the original meaning and context. In this case, the English phrase '%d items in file ''%s'' have been recovered successfully!' contains placeholders '%d' and '%s' for

So it seems that API and the web interface performs differently?

Depending on the language I would imagine the order of the placeholders should change.

Besides that, unless you are using the same system message as ChatGPT it’s very likely you’ll experience different behaviours.


How can I know the system message in the web interface? I cannot see it. Neither does I send a system message.

I try different prompts, but the result from API is always different from that in Web interface.

Instead of making a general purpose chatbot like ChatGPT, you can make a specialist AI system by using system message instructions.

Translation was done at top_p = 0