Most chatbot users miss this key setting, so we moved it up front
Making it easier and more intuitive to change the system prompt in duck.ai
The magic of chatbots is that they make it seem like you’re chatting with a real person. But the default personality of this “person” isn’t one I particularly enjoy talking to, and in many cases I find downright annoying. Based on feedback from duck.ai users—who rely on our service for private access to popular chatbots—I know I’m not alone. What people want in a chatbot’s personality varies widely: I cringe at extra exclamation points and emojis, while others love them. I also find the default output too verbose, whereas some appreciate the added exposition.
Of course, I could tell the chatbot every time to keep its replies short and emoji-free, but pasting that constantly is enough friction that I rarely bother. OpenAI and Anthropic do offer customization options in their settings, yet those options are buried and feature intimidating blank text boxes, such that I highly suspect most people never touch them.
Recently, we’ve been considering this issue in the context of duck.ai. I’m sure what we’ll do here will continue to evolve as we get feedback, but to get started we’ve just introduced a much easier-to-find customization dialog. Not only does it make the responses feel better, it can make the actual content significantly better as well.
As you can see in the video, it provides customization guidance through drop-downs and fields, including options to customize:
The tone of responses
The length of responses
Whether the chatbot should ask clarifying questions
The role of the chatbot (for example, teacher)
Your role (for example, student)
The nickname of the chatbot
Your nickname
All fields are optional, and you can also add additional info if desired, as well as inspect what the instructions will look like in aggregate. If you select role(s), then there are detailed instructions that get created specifically for those. Here’s an example using the ‘Tech support specialist’ role, which asks you clarifying questions to drill down faster to a solution vs. the more generic (and lengthier) default response.
Customized response:
Generic response:
All of this works through the “system prompt.” In an excellent post titled AI Horseless Carriages, Pete Koomen explains system prompts:
LLM providers like OpenAI and Anthropic have adopted a convention to help make prompt writing easier: they split the prompt into two components: a System Prompt and a User Prompt, so named because in many API applications the app developers write the System Prompt and the user writes the User Prompt.
The System Prompt explains to the model how to accomplish a particular set of tasks, and is re-used over and over again. The User Prompt describes a specific task to be done.
When you set the duck.ai customization options, the instructions that are created are appended to the default system prompt, which is repeated (in the background) when you start a new conversation. That is, the instructions will apply to the current conversation as well as subsequent ones, until you change them again.
Like everything we do at DuckDuckGo, these system prompt tweaks are also private. They are stored locally on your device only, along with your recent chats (if you choose to save them). When we ultimately add an optional ability to sync settings and chats across devices, it will be part of our end-to-end encrypted sync service, which DuckDuckGo cannot decrypt. And Duck.ai itself anonymizes chats to all model providers, doesn’t store chats itself, and ensures your chats aren’t used for AI training. More at the Duck.ai Privacy Policy.
Our approach to AI is to make features that are useful, private, and optional. We believe these new duck.ai customization options tick all three boxes, but please try them out and let us know what you think. As always, please feel free to leave comments here. However, the best method for sharing feedback about duck.ai is to do so directly through the product, as it will then be shared with the entire team automatically.