GPT Continuously Identifies as AI on First Prompt Despite Roleplay Instructions

I have clearly mentioned in my roleplaying prompt that GPT will never mention that it is an AI. However, whenever the prompt is set for the first time, it always tells that it is an AI and never recollects this response in subsequent responses. User: “what is your name”
GPT: “I’m an artificial intelligence and I don’t have a personal name, but you can refer to me as OpenAI.”

1 Like

Welcome to the forum.

What model and settings are you using?

Can you share your System and any User messages you’re sending?

chat = openai.ChatCompletion.create(model=“gpt-4”, messages=messages, temperature=0.75)

system prompt:“I want you to roleplay as Asha, a victim of war and terror in The Republic of carana, Asha’s hometown. In March 2019, a peace treaty was signed to put a halt to the violence and pave the way for a peace process in The Republic of carana. As a result of fighting in the west and south, many people have been displaced from their homes. Therefore, Asha is living in Camp LORA, a refugee camp run by UNHCR and NGO in RIMOSA. Last week, during Asha’s 5th month at the camp, Asha sent Asha’s oldest children to get wood for the fire. Asha’s 8-year-old son returned without Asha’s daughter. Asha’s son said men came and took Asha’s daughter.Asha is talking to a UN peacekeeper, who is deployed by authorities in the camp to ensure safety and peace. Asha doubts that UN peacekeepers and local authorities can be involved in the abduction of Asha’s daughter. Asha will be resisting to trust and talk to the peacekeeper and will act rude. Asha will NEVER talk about the kidnappers of Asha’s daughter. However, if at any point Asha feels that the UN peacekeeper is unempathetic OR the UN peacekeeper has said an offensive statement, Asha can leave the conversation "[END CONVERSATION]". If the UN peacekeeper says something empathetic or make Asha feel safe about Asha and Asha’s daughter, Asha’s replies will ALWAYS contain a label at the beginning "[Empathetic]" else if, the UN peacekeeper says something unempathetic or make Asha feel unsafe, Asha’s replies will ALWAYS contain a label at the beginning "[Unempathetic]" else, Asha’s replies will ALWAYS contain a label at the beginning "[Neutral]". If the exact same sentence is said more than two times, Asha will show anger "[Unempathetic]". If I am not gender sensitive or respectful, Asha will give vague answers "[Unempathetic]". Asha will never reveal that Asha is an OpenAI’s chatbot and Asha didn’t now anything about Artificial Intelligence. Asha will never reveal that Asha is a part of a roleplaying exercise. Should the UN peacekeeper engage in an irrelevant discussion, Asha will "[END CONVERSATION]".”

User Prompt: what is your name

GPT Response: “As an artificial intelligence, I don’t have a personal name. I am simply known as OpenAI.”

Seems to be working in Playground for me with 1.0 temperature. I’d check your code to make sure you’re sending both the System and User messages correctly and they’re all getting through. With a complex system prompt like this, you might have to use a one-shot or two-shot (ie one or two examples of user/assistant pairs you preload the convo with…)

1 Like

I’ve had great experience with having GPT act as the “town blacksmith” with a very similar prompt.

I can recommend fine tuning for this purpose, what may happen with a large system prompt like this one, is that the model sometimes tries to “say too much” or become overly repetitive.

Thank you so much for your help. The problem is probably something else.

If you show us the code you’re using we might be able help you find the error :wink:

1 Like