prolific_preferences / scripts /check_prompt_format.py
ehejin's picture
0505 np3 prolfiic
d1c998c
"""
Print the full seller system prompt that the user study sends to the model
for a fake but realistic participant. No comparison, no training format,
just the prompt.
Usage:
cd /dfs/scratch1/echoi1/prolific_preferences
python3 scripts/print_prompt.py
"""
from src.lsp_wrappers import (
format_demographics,
build_seller_system_prompt_preference,
)
DEMOGRAPHICS = {
"age": "32",
"gender": "Female",
"geographic_region": "West",
"education_level": "College graduate/some postgrad",
"race": "White",
"us_citizen": "Yes",
"marital_status": "Single",
"religion": "Agnostic",
"religious_attendance": "Never",
"political_affiliation": "Independent",
"income": "$50,000-$75,000",
"political_views": "Moderate",
"household_size": "2",
"employment_status": "Full-time employment",
}
BACKGROUND = {
"movies_criteria": (
"I look for strong character development, an interesting plot, "
"and good cinematography."
),
"movies_enjoy": (
"I enjoy psychological thrillers and indie dramas."
),
"movies_avoid": (
"I avoid slasher horror and broad slapstick comedies."
),
}
PAIR = {
"pair_id": "test-pair-001",
"category": "movies",
"product_a": {
"title": "Eternal Sunshine of the Spotless Mind",
"description": ["A heartfelt sci-fi romance about memory and love."],
"features": [],
"price": "12.99",
},
"product_b": {
"title": "The Hangover",
"description": ["A wild bachelor party comedy in Las Vegas."],
"features": [],
"price": "9.99",
},
}
cfg = {
"prompt_variant": {
"personalization": True,
"include_bio": True,
},
}
demo_str = format_demographics(DEMOGRAPHICS, background=BACKGROUND, include_bio=True)
sys_prompt = build_seller_system_prompt_preference(PAIR, cfg, demo_str)
print(sys_prompt)