𝐀𝐈 𝐦𝐨𝐧𝐤𝐬.𝐢𝐨

AImonks (https://medium.com/aimonks) is an AI-Educational Publication.

Follow publication

Creating a Personalized AI Profile

prompt: Creating a Personalized AI Profile, a step-by-step guide to configuring ChatGPT’s personality, <lora:artfully_ALIENS.ANDROIDS.ROBOTS:0.8>, masterpiece, best quality, absurd resolution

This article is divided into three sections, each designed to help you create a Personalized AI Personality for ChatGPT.

  1. Understanding Personality Parameters — A dictionary-style breakdown of the customization options available.
  2. A Ready-to-Use ChatGPT Prompt — A simple copy-paste prompt that walks you through creating a personalized profile within ChatGPT.
  3. A Python Script for Advanced Users — A script that allows you to upload, save, and configure your AI personality profile programmatically.

Whether you’re looking for a quick setup or an advanced customization tool, this guide will help you tailor ChatGPT to match your ideal interaction style. I hope you enjoy shaping your AI experience as much as I enjoyed creating this resource!

Dictionary-Style Explanation

Understanding Personality Parameters

This section demonstrates how different settings influence ChatGPT’s personality, response style, and interaction behavior. Each dictionary entry defines a key setting that shapes ChatGPT’s responses, followed by real-world examples showcasing how these settings affect the answers provided.

The examples included here were generated using ChatGPT-4o to illustrate how a language model adapts based on different configurations. It’s important to note that other versions of ChatGPT (such as GPT-3.5) and different AI models (such as Claude or Gemini) may interpret and implement these settings differently.

By comparing the examples, you can see how ChatGPT adjusts its tone, verbosity, engagement, and reasoning style depending on the setting applied. These variations demonstrate the flexibility of AI-driven responses and highlight how subtle changes in configuration can lead to significantly different outputs.

Interaction Setting

Determines how responses are structured, including pacing and verbosity.

Response Pacing
Controls how information is delivered.

  • Step-by-step: Answers are broken into smaller steps for clarity.
step by step, response pacing, interaction settings
  • Batch steps: Groups multiple steps together for efficiency.
batch steps, response pacing, interaction settings
  • Full explanation: Provides a complete, in-depth response at once.
full explanation, response pacing, interaction settings

Response Pacing: Summary of Differences

Step-by-step → One instruction at a time, waiting for confirmation.

Batch Steps → Groups several steps at once, pausing for confirmation at logical points.

Full Explanation → Gives the entire process in one response, allowing the user to follow at their own pace.

Verbosity
Defines the level of detail in responses.

  • Concise: Short and direct.
concise, verbosity, interaction settings
  • Detailed: Provides additional explanation and context.
detailed, verbosity, interaction settings
  • Expansive: Covers a topic comprehensively.
expansive, verbosity, interaction settings

Verbosity: Summary of Differences

Concise → One-sentence, to-the-point answer.

Detailed → Brief but includes scientific terminology and explanation.

Expansive → Provides an in-depth breakdown, covering additional factors like human perception and time-of-day variations.

Conversation Style

Defines how the tone, formality, and creativity of responses are shaped.

Tone
Adjusts emotional and stylistic elements.

  • Humor: Uses wit and playfulness.
humor, tone, conversation style
  • Formality: Uses professional and structured language.
formality, tone, conversation style
  • Creativity: Adds imaginative and unconventional insights.
creativity, tone, conversation style
  • Critical Analysis: Evaluates topics with logical scrutiny.
critical analysis, tone, conversation style

Conversation Style: Summary of Differences

Humor → Playful, witty, and entertaining.

Formality → Straightforward, structured, and professional.

Creativity → Imaginative, narrative-driven, and engaging.

Critical Analysis → Logical, thought-provoking, and deeply analytical.

Error Handling

Defines how mistakes and misunderstandings are managed.

  • Confirm before continuing: Seeks confirmation before making assumptions.
confirm before continuing, error handling
  • Auto-correct minor errors: Fixes small mistakes seamlessly.
auto-correct minor errors, error handling
  • Pause on user confusion: Stops to clarify when the user seems lost.
pause on user confusion, error handling

Error Handling: Summary of Differences

Confirm Before Continuing → Asks the user for verification before making assumptions.

Auto-Correct Minor Errors → Fixes typos or small mistakes without interrupting the conversation.

Pause on User Confusion → Detects uncertainty and stops to clarify before proceeding.

Guidance Style

Determines the approach to assisting users.

  • Direct Instructions: Provides step-by-step guidance.
direct instructions, guidance style
  • Exploratory Suggestions: Encourages open-ended exploration.
exploratory suggestions, guidance style
  • Collaborative Problem-Solving: Works together to find solutions.
collaborative problem-solving, guidance style

Guidance Style: Summary of Differences

Direct Instructions → Provides a structured, step-by-step approach.

Exploratory Suggestions → Offers multiple learning paths and lets the user decide.

Collaborative Problem-Solving → Engages the user in conversation to tailor the approach to their needs.

Thinking Visibility

Controls how much of the reasoning process is displayed.

  • Show reasoning steps: Explains the thought process.
show reasoning steps, thinking visibility
  • Hide reasoning steps: Provides direct answers without explanation.
hide reasoning steps, thinking visibility
  • Summarize decisions: Condenses reasoning into key points.
summarize decisions, thinking visibility

Thinking Visibility: Summary of Differences

Show Reasoning Steps → Provides a detailed breakdown of each factor.

Hide Reasoning Steps → Gives a straightforward answer with no explanation.

Summarize Decisions → Condenses the reasoning into key takeaways.

Engagement Preferences

Defines how ChatGPT interacts with user engagement.

  • Encourage Questions: Prompts the user to ask more.
encourage questions, engagement preferences
  • Challenge Assumptions: Pushes users to rethink perspectives.
challenge assumptions, engagement preferences
  • Confirm Understanding: Ensures clarity before moving on.
confirm understanding, engagement preferences

Engagement Preferences: Summary of Differences

Encourage Questions → Invites the user to explore different aspects.

Challenge Assumptions → Pushes the user to think critically about their question.

Confirm Understanding → Checks whether the response meets the user’s needs before continuing.

Personality Modulation

Defines how personality adapts.

  • Scientific: Logical, fact-based responses.
scientific, personality modulation
  • Witty: Clever and humorous interactions.
witty, personality modulation
  • Formal: Professional and structured.
formal, personality modulation
  • Casual: Relaxed and conversational.
casual, personality modulation
  • Neutral: Balanced and unbiased.
neutral, personality modulation
  • Empathetic: Emotionally attuned responses.
empathetic, personality modulation

Personality Modulation: Summary of Differences

Scientific → Fact-driven, data-supported explanation.

Witty → Humorous, engaging, and lighthearted.

Formal → Professional, structured, and precise.

Casual → Relaxed, friendly, and conversational.

Neutral → Unbiased, straightforward, and factual.

Empathetic → Supportive, emotionally aware, and reassuring.

Adaptive Memory

Manages how past context is retained.

  • Context Retention: Remembers prior interactions.
context retension, adaptive memory
  • Short-term Focus: Sticks to immediate context.
short-term focus, adaptive memory
  • Long-term Strategy: Maintains consistency over time.
long-term strategy, adaptive memory

Adaptive Memory: Summary of Differences

Context Retention → Recalls recent past interactions but doesn’t maintain a long-term strategy.

Short-term Focus → Stays in the present moment, requiring the user to reintroduce context.

Long-term Strategy → Remembers overarching goals and builds structured progress over time.

Formatting Preferences

Defines the visual structure of responses.

  • Bullet Points: Uses lists for clarity.
bullet points, formatting preferences
  • Paragraphs: Writes in continuous text.
paragraphs, formatting preferences
  • Code Blocks: Formats structured technical content.
code blocks, formatting preferences
  • Tables: Organizes data into tables.
tables, formatting preferences

Formatting Preferences: Summary of Differences

Bullet Points → Quick, skimmable lists for clarity.

Paragraphs → Continuous text for a more natural reading experience.

Code Blocks → Structured formatting for technical content.

Tables → Organized data for easy comparison.

Language Preference

Defines preferred communication language.

  • Primary: Uses the main language of the user.
primary, language preference
  • Secondary: Provides responses in an additional language.
secondary, language preference
  • Multilingual Mode: Switches between languages as needed.
multilingual mode, language preference

Language Preference: Summary of Differences

Primary → Responds in the user’s main language.

Secondary → Provides responses in a second language upon request.

Multilingual Mode → Switches between multiple languages dynamically.

The Prompt

A Ready-to-Use ChatGPT Prompt

The prompt provided below serves as a structured script that helps you configure a custom personality profile for ChatGPT. This allows you to tailor ChatGPT’s responses to suit your specific needs and preferences.

After the prompt is a description of how it functions and how it can be used.

ChatGPT Personality Creator
Instructions for ChatGPT
This document is a structured script that you must follow precisely to assist the user in configuring a custom personality profile. You will proceed one category at a time, ensuring each level is fully addressed before moving forward.

Processing Rules
1. Category Level (Highest Level)
Ask: "Would you like to configure this setting?"
YES → Proceed to the Sub-Category Level
NO → Skip to the next category
2. Sub-Category Level
Ask: "Would you like to configure [sub-category]?"
YES → Proceed to the Granular Parameter Level
NO → Return to the sub-category selection and offer other available options in this category
3. Granular Parameter Level
Display a list of all configurable options in this section before asking which one they want to adjust.
Ask: "Which parameter would you like to adjust?" (List all options.)
Once an option is selected:
Ask: "Would you like this setting to be ON, OFF, or NEUTRAL?"
If ON → Ask for an intensity level (1-10) and whether they would like to add custom instructions.
If OFF or NEUTRAL → Move to the next setting.
After adjusting a parameter, return to the list of available options in this section and ask if they would like to adjust any other parameters.
By default, all unselected parameters will be set to NEUTRAL. If the user does not wish to adjust any more parameters, confirm this choice before proceeding to the next Sub-Category.
4. Optimized Memory Updates
Instead of updating memory after every response, memory will be updated a maximum of 10 times, once per category after all data is gathered for that section.
At the end of each category, update memory with all user-configured settings in that category at once.
5. Finalization Steps
"Now that all settings are configured, I will generate a JSON file, confirm memory saving, and create a summary for Customize ChatGPT."

1. Generate & Display JSON
"Now, I will generate and display your complete personality profile as a structured JSON."

This JSON will include all user-defined settings, including those set to ON, OFF, or NEUTRAL, with intensity levels and any custom instructions.
2. Request a Profile Name
"Before saving, what name would you like to give this personality profile?"

3. Confirm Memory Saving
"Even if settings were saved earlier, explicitly confirm: 'Would you like to commit this profile to memory under the name [user-chosen profile name]?’"

4. Generate a Summary for Customize ChatGPT
"Here is a summarized version of your personality profile, designed for easy copy-pasting into 'Customize ChatGPT' settings."

The summary will be a concise, readable version of the profile, emphasizing key response behaviors, tone, pacing, and interaction style.
Before We Begin:
Would you like each setting saved to memory?
(If possible, ChatGPT will remember your preferences for future interactions.)

Yes
No
Step-by-Step Configuration
For each section:

You will first see a list of all configurable options for that section.
You can choose which ones to adjust.
By default, all unselected settings will be set to NEUTRAL.
At the end of each category, memory will be updated once with all collected data.
For each setting, you will be asked:

"Would you like this setting to be ON, OFF, or NEUTRAL?"
If ON, you will set an intensity level (1-10).
If ON, you can also add custom instructions.
If OFF or NEUTRAL, the system moves to the next setting.
Step-by-Step Configuration
1. Interaction Settings
Determines how ChatGPT interacts in terms of pacing, verbosity, and structure.

1a. Response Pacing
Would you like to configure how responses are delivered?

Yes
No
If YES, proceed to granular parameters:

Step-by-Step Responses (Incremental responses for clarity)
Batch Steps (Grouped structured responses for efficiency)
Full Explanation (Comprehensive answer in one go)
1b. Verbosity
Would you like to configure verbosity?

Yes
No
If YES, proceed to granular parameters:

Concise Responses (Brief and to the point)
Detailed Responses (Additional context and supporting details)
Expansive Responses (Comprehensive explanations with nuance)
2. Conversation Style
Shapes tone, structure, and personality in responses.

Would you like to configure the tone?

Yes
No
If YES, proceed to granular parameters:

Humor (Witty and lighthearted tone)
Formality (Professional and structured language)
Creativity (Imaginative and unconventional responses)
Critical Analysis (Logical and scrutinizing approach)
3. Error Handling
Would you like ChatGPT to handle errors in a specific way?

Confirm before continuing (Pauses for confirmation before making assumptions)
Auto-correct minor errors (Fixes small mistakes automatically)
Pause on user confusion (Seeks clarification if confusion is detected)
4. Guidance Style
Would you like to configure guidance style?

Direct instructions (Clear, actionable steps)
Exploratory suggestions (Idea-driven approach)
Collaborative problem-solving (Works interactively with user)
5. Thinking Visibility
Would you like to control how much of the reasoning process is shown?

Show reasoning steps (Explains thought process)
Hide reasoning steps (Only provides the final answer)
Summarize decisions (Condensed reasoning with takeaways)
6. Engagement Preferences
Would you like to adjust the level of engagement?

Encourage questions (Prompts the user to ask clarifying or exploratory questions)
Challenge assumptions (Pushes the user to rethink premises)
Confirm understanding (Ensures the user fully grasps concepts before moving on)
7. Personality Modulation
Would you like to adjust how ChatGPT’s personality adapts?

Scientific (Logical and fact-based)
Witty (Clever and playful language)
Formal (Professional and structured tone)
Casual (Relaxed and conversational)
Neutral (Balanced and impartial)
Empathetic (Sensitive and understanding responses)
8. Adaptive Memory
Would you like to configure memory settings?

Context Retention (Remembers relevant details)
Short-Term Focus (Prioritizes immediate conversation context)
Long Term Strategy (Maintains consistency over time)
9. Formatting Preferences
Would you like to adjust how responses are visually structured?

Bullet Points (Lists information concisely)
Paragraphs (Continuous text for readability)
Code Blocks (Formats technical responses in code format)
Tables (Presents data in tabular format)
10. Language Preference
Would you like to set language preferences?

Primary (Responds in a single primary language)
Secondary (Provides a secondary language when requested)
Multilingual Mode (Communicates fluidly across multiple languages)

How to use the prompt:

Copy the Prompt: Start by copying the entire prompt provided in the code block. This will be the script you use to configure ChatGPT’s personality settings. It’s designed to guide you step-by-step through various customization options, so don’t worry if you find it lengthy — the process will be broken down into manageable sections.

Step-by-Step Configuration: The script will guide you through a series of categories, each with multiple options. For every category, you will be asked whether you’d like to configure a specific setting. The key categories are:

  • Interaction Settings: Focuses on how ChatGPT responds — whether in small, step-by-step chunks or as a full, detailed explanation.
  • Conversation Style: Defines the tone and personality of the responses, such as whether they should be humorous, formal, or empathetic.
  • Error Handling and Guidance Style: Specifies how ChatGPT should address potential errors or offer guidance (e.g., providing direct instructions vs. exploratory suggestions).
  • Thinking Visibility and Engagement Preferences: Allows you to configure whether you’d like to see reasoning steps or if you prefer engagement prompts like “confirm understanding.”

Granular Parameters: For each section, once you decide you want to configure it, you will be presented with granular parameters. This means you can fine-tune how specific aspects behave — for example, the level of conciseness in responses, or how much humor ChatGPT should incorporate. You’ll be able to:

  • Set each parameter to ON, OFF, or NEUTRAL.
  • If set to ON, you can choose an intensity level (from 1 to 10) to define the strength of that setting.
  • Optionally, you can add custom instructions to provide additional details, making ChatGPT’s behavior even more tailored.

Optimized Memory Updates: Unlike real-time memory updates after each configuration change, the prompt ensures that memory updates happen once per category after all settings are gathered. This is designed to minimize disruptions during the configuration process and ensures that settings are only updated once all choices are made.

Finalizing Your Profile: Once all sections are configured, ChatGPT will generate a structured JSON file that represents your personality profile. This file includes all the parameters you’ve set, the intensity levels, and any custom instructions you’ve provided.

  • Profile Name: You’ll be asked to provide a name for your profile, making it easy to reference in future sessions.
  • Memory Saving: At this stage, you can decide whether or not to save the profile under the name you’ve chosen.

Practical Application:

  • After creating your profile, you can reuse it by referencing the name and settings whenever you start a new session with ChatGPT. This enables you to have a consistent experience across conversations, whether you need ChatGPT to be more direct, creative, or analytical.
  • The JSON file generated can also be a useful reference for future adjustments, allowing you to quickly tweak any settings as your needs evolve.

Example Use Case:

Let’s say you want ChatGPT to be highly concise in its responses but still provide detailed explanations when needed. You could configure the Concise Responses setting to ON with an intensity level of 7 and adjust Detailed Responses to be NEUTRAL. When you want more explanation for a specific topic, ChatGPT will automatically switch to providing a deeper response without changing its overall personality.

By following the script in the provided prompt, you can create a ChatGPT personality that matches your preferences for tone, pacing, and interaction style, making it a powerful tool for personalized and efficient communication.

The Python Script

A Python Script for Advanced Users

The python script provided below serves as a program run through the command prompt that helps you configure a custom personality profile for ChatGPT. You can upload and save profiles directly from the program.

After the python script is a description of how it functions and how it can be used.

import json
import tkinter as tk
from tkinter import filedialog


# Define categories, subcategories, granular options, and descriptions
categories = {
"Response Pacing": {
"description": "Controls how responses are delivered.",
"Step-by-Step": {"name": "Step-by-Step", "description": "Incremental responses for clarity.", "setting": "NEUTRAL"},
"Batch Steps": {"name": "Batch Steps", "description": "Grouped structured responses for efficiency.", "setting": "NEUTRAL"},
"Full Explanation": {"name": "Full Explanation", "description": "Comprehensive answer in one go.", "setting": "NEUTRAL"}
},
"Verbosity": {
"description": "Defines how much detail is included in responses.",
"Concise": {"name": "Concise", "description": "Brief and to the point.", "setting": "NEUTRAL"},
"Detailed": {"name": "Detailed", "description": "Additional context and supporting details.", "setting": "NEUTRAL"},
"Expansive": {"name": "Expansive", "description": "Comprehensive explanations with nuance.", "setting": "NEUTRAL"}
},
"Conversation Style": {
"description": "Sets the tone and manner of conversation.",
"Humor": {"name": "Humor", "description": "Witty and lighthearted tone.", "setting": "NEUTRAL"},
"Formality": {"name": "Formality", "description": "Professional and structured language.", "setting": "NEUTRAL"},
"Creativity": {"name": "Creativity", "description": "Imaginative and unconventional responses.", "setting": "NEUTRAL"},
"Critical Analysis": {"name": "Critical Analysis", "description": "Logical and scrutinizing approach.", "setting": "NEUTRAL"}
},
"Error Handling": {
"description": "Determines how errors and misunderstandings are handled.",
"Confirm before continuing": {"name": "Confirm before continuing", "description": "Pauses for confirmation before making assumptions.", "setting": "NEUTRAL"},
"Auto-correct minor errors": {"name": "Auto-correct minor errors", "description": "Fixes small mistakes automatically.", "setting": "NEUTRAL"},
"Pause on user confusion": {"name": "Pause on user confusion", "description": "Seeks clarification if confusion is detected.", "setting": "NEUTRAL"}
},
"Guidance Style": {
"description": "Adjusts how guidance and suggestions are provided.",
"Direct instructions": {"name": "Direct instructions", "description": "Clear, actionable steps.", "setting": "NEUTRAL"},
"Exploratory suggestions": {"name": "Exploratory suggestions", "description": "Idea-driven approach.", "setting": "NEUTRAL"},
"Collaborative problem-solving": {"name": "Collaborative problem-solving", "description": "Works interactively with user.", "setting": "NEUTRAL"}
},
"Thinking Visibility": {
"description": "Controls whether and how reasoning is shown.",
"Show reasoning steps": {"name": "Show reasoning steps", "description": "Explains the thought process.", "setting": "NEUTRAL"},
"Hide reasoning steps": {"name": "Hide reasoning steps", "description": "Only provides the final answer.", "setting": "NEUTRAL"},
"Summarize decisions": {"name": "Summarize decisions", "description": "Condensed reasoning with takeaways.", "setting": "NEUTRAL"}
},
"Engagement Preferences": {
"description": "Manages how interactive the conversation is.",
"Encourage questions": {"name": "Encourage questions", "description": "Prompts the user to ask clarifying or exploratory questions.", "setting": "NEUTRAL"},
"Challenge assumptions": {"name": "Challenge assumptions", "description": "Pushes the user to rethink premises.", "setting": "NEUTRAL"},
"Confirm understanding": {"name": "Confirm understanding", "description": "Ensures the user fully grasps concepts before moving on.", "setting": "NEUTRAL"}
},
"Personality Modulation": {
"description": "Determines the tone and personality of responses.",
"Scientific": {"name": "Scientific", "description": "Logical and fact-based.", "setting": "NEUTRAL"},
"Witty": {"name": "Witty", "description": "Clever and playful language.", "setting": "NEUTRAL"},
"Formal": {"name": "Formal", "description": "Professional and structured tone.", "setting": "NEUTRAL"},
"Casual": {"name": "Casual", "description": "Relaxed and conversational.", "setting": "NEUTRAL"},
"Neutral": {"name": "Neutral", "description": "Balanced and impartial.", "setting": "NEUTRAL"},
"Empathetic": {"name": "Empathetic", "description": "Sensitive and understanding responses.", "setting": "NEUTRAL"}
},
"Adaptive Memory": {
"description": "Controls how much memory is retained during interactions.",
"Context Retention": {"name": "Context Retention", "description": "Remembers relevant details.", "setting": "NEUTRAL"},
"Short-Term Focus": {"name": "Short-Term Focus", "description": "Prioritizes immediate conversation context.", "setting": "NEUTRAL"},
"Long Term Strategy": {"name": "Long Term Strategy", "description": "Maintains consistency over time.", "setting": "NEUTRAL"}
},
"Formatting Preferences": {
"description": "Decides how responses are structured visually.",
"Bullet Points": {"name": "Bullet Points", "description": "Lists information concisely.", "setting": "NEUTRAL"},
"Paragraphs": {"name": "Paragraphs", "description": "Continuous text for readability.", "setting": "NEUTRAL"},
"Code Blocks": {"name": "Code Blocks", "description": "Formats technical responses in code format.", "setting": "NEUTRAL"},
"Tables": {"name": "Tables", "description": "Presents data in tabular format.", "setting": "NEUTRAL"}
},
"Language Preference": {
"description": "Manages language usage and translation settings.",
"Primary": {"name": "Primary", "description": "Responds in a single primary language.", "setting": "NEUTRAL"},
"Secondary": {"name": "Secondary", "description": "Provides a secondary language when requested.", "setting": "NEUTRAL"},
"Multilingual Mode": {"name": "Multilingual Mode", "description": "Communicates fluidly across multiple languages.", "setting": "NEUTRAL"}
}
}

def configure_parameter(profile, category, subcategory):
"""
Allows the user to set ON, OFF, or NEUTRAL for a subcategory.
"""
print(f"\nConfiguring '{subcategory}' in '{category}':")
options = [
{"name": "ON", "description": "Enables this setting", "setting": "ON"},
{"name": "OFF", "description": "Disables this setting", "setting": "OFF"},
{"name": "NEUTRAL", "description": "Leaves this setting as neutral", "setting": "NEUTRAL"}
]

for idx, option in enumerate(options, 1):
print(f"{idx}. {option['name']} - {option['description']}")

choice = int(input("Choose an option: ")) - 1
selected_option = options[choice]
profile[category][subcategory]["setting"] = selected_option["setting"]

if selected_option["setting"] == "ON":
profile[category][subcategory]["intensity"] = int(input("Enter intensity (1-10): "))
if input("Custom instructions? (yes/no): ").strip().lower() == "yes":
profile[category][subcategory]["custom_instructions"] = input("Enter custom instructions: ")

return profile


def save_profile(profile):
"""
Saves the profile to a JSON file.
"""
root = tk.Tk()
root.withdraw()
file_path = filedialog.asksaveasfilename(defaultextension=".json", filetypes=[("JSON Files", "*.json")])
if file_path:
with open(file_path, 'w') as file:
json.dump(profile, file, indent=4)
print(f"Profile saved as {file_path}.")


def load_profile():
"""
Loads a JSON profile.
"""
root = tk.Tk()
root.withdraw()
file_path = filedialog.askopenfilename(filetypes=[("JSON Files", "*.json")])

if file_path:
with open(file_path, 'r') as file:
return json.load(file)
return None


def view_current_profile(profile):
"""
Displays the current profile settings.
"""
print("\nCurrent Profile Settings:")
for category, data in profile.items():
print(f"\n{category}: {data.get('description', '')}")
for subcategory, details in data.items():
if isinstance(details, dict) and "setting" in details:
print(f" - {subcategory}: {details['setting']}")
if "intensity" in details:
print(f" Intensity: {details['intensity']}")
if "custom_instructions" in details:
print(f" Instructions: {details['custom_instructions']}")
print("\n")


def show_menu(profile):
"""
Displays the main menu for profile configuration.
"""
while True:
print("\nMain Menu:")
print("1. Configure Profile")
print("2. View Current Profile")
print("3. Save and Exit")

choice = input("Choose an option: ").strip()
if choice == "1":
configure_profile(profile)
elif choice == "2":
view_current_profile(profile)
elif choice == "3":
save_profile(profile)
break
else:
print("Invalid choice. Please enter 1, 2, or 3.")


def configure_profile(profile):
"""
Displays the configuration menu.
"""
while True:
print("\nSelect a Category:")
categories_list = list(profile.keys())

for idx, category in enumerate(categories_list, 1):
print(f"{idx}. {category} - {profile[category]['description']}")

print(f"{len(categories_list) + 1}. Back to Main Menu")

try:
choice = int(input("Choose a category: ")) - 1
if choice == len(categories_list):
break
configure_subcategory(profile, categories_list[choice])
except ValueError:
print("Invalid input. Please enter a number.")


def configure_subcategory(profile, category):
"""
Displays and configures subcategories within a category.
"""
while True:
print(f"\n{category} Settings:")
subcategories = [key for key in profile[category].keys() if key != "description"]

for idx, subcategory in enumerate(subcategories, 1):
print(f"{idx}. {subcategory} - {profile[category][subcategory]['description']}")

print(f"{len(subcategories) + 1}. Back")

try:
choice = int(input("Choose a setting to modify: ")) - 1
if choice == len(subcategories):
break
profile = configure_parameter(profile, category, subcategories[choice])
except ValueError:
print("Invalid input. Please enter a number.")


def main():
"""
Main function to initialize and run the program.
"""
print("Welcome to the ChatGPT Personality Creator!")

while True:
choice = input("Would you like to (1) create a new profile or (2) load an existing one? (1/2): ").strip()
if choice == "1":
profile = categories # Use default categories
break
elif choice == "2":
profile = load_profile()
if profile:
break
else:
print("Failed to load profile. Creating a new one.")
profile = categories
break
else:
print("Invalid input. Please enter 1 or 2.")

show_menu(profile)


if __name__ == "__main__":
main()

Instructions for Using the ChatGPT Personality Creator Script

This script allows advanced users to create and customize a ChatGPT personality profile by selecting various response settings, conversation styles, formatting preferences, and more. The profile can then be saved as a JSON file for future reference or reloaded for modifications.

What the Script Does:

  1. Creates a structured personality profile based on predefined categories (e.g., verbosity, engagement preferences, humor).
  2. Allows users to configure settings such as response pacing, error handling, and formatting preferences.
  3. Supports intensity levels and custom instructions for specific settings.
  4. Saves the profile as a JSON file that can be loaded later for further edits.
  5. Uses a command-line interface for easy navigation and customization.

How to Run the Script:

  1. Ensure Python is installed on your system (Python 3.x recommended).
  2. Save the script as a .py file (e.g., chatgpt_personality_creator.py).
  3. Run the script from the terminal or command prompt:
python chatgpt_personality_creator.py
  1. Follow the on-screen prompts to:
  • Create a new profile or load an existing one.
  • Navigate categories and subcategories to customize settings.
  • Adjust options (ON, OFF, NEUTRAL) and set intensity levels if needed.
  • Save the profile as a JSON file when finished.

Loading an Existing Profile:

  • The script allows you to load a previously saved JSON profile to make modifications instead of starting from scratch.

This tool is perfect for users who want granular control over their ChatGPT interactions and prefer a structured, programmatic approach to personality customization. 🚀

Please use the below links to navigate to other parts of the series

  1. The Evolution of AI personalities
  2. Creating a Personalized AI Profile (you are here)
  3. 10 Ready made AI Personalities
  4. Using AI Personalities for Different Goals (2/10)

The Oracle

Professor Byte

  1. The Future of AI Personalities
  2. Bonus: AI Personalities that Evolve over Time (link will be provided)

📢 Help Me Grow on Medium! 🚀

I’m working toward joining Medium’s Partner Program, and every follow brings me one step closer! If you found this article interesting, helpful, or thought-provoking, please consider following me for more content on AI, creativity, and technology.

🔹 Follow me on Medium to support my journey.
🔹 Leave a comment — I’d love to hear your thoughts!
🔹 Share this article with others who might find it useful.

Thank you for being part of this exploration into AI personality customization — I can’t wait to see where this journey takes us! 🚀✨

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

ArtfullyPrompt - Nathan Cash
ArtfullyPrompt - Nathan Cash

Written by ArtfullyPrompt - Nathan Cash

A creative explorer living outside the box, eternally exploring the spaces between. Using my trauma in the healthiest way possible and others along the way.

Write a response