File size: 4,224 Bytes
433f3f1
 
 
dc3dc12
 
 
 
 
433f3f1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# ==============================
# Descriptions for Classification
# ==============================
ALLOWED_STORY_TOPICS = [
    "fortune","confidence","mental_strength","bullying","fear_phobias",
    "friendship","love","sex","meaning_of_life","justice_fairness","none"
]

TRACKED_FIELDS = [
    "name", "living_country", "origin_country","living_place",
    "origin_place","number_of_brothers_and_sisters","kids",
    "hobbies","sports_played", "sports_watched",
    "profession", "favorite_food",
    "interests",
    "favorite_book", "favorite_writer", "favorite_movie_maker",
    "favorite_actor", "favorite_movie", "favorite_music",
    "favorite_band", "favorite_singer", "favorite_color",
    "favorite_animal", "favorite_season",
    "best_friend_name", "partner_name",
    "favorite_team", "pets","education","language_spoken"
]

FIELD_DESCRIPTIONS = {
    "name": "the user’s first name",
    "living_place": "the place, city or area where the user currently lives",
    "origin_place": "the place, city or area where the user was originally from",    
    "living_country": "the country where the user currently lives",
    "origin_country": "the country where the user was originally from",
    "partner_name": "the name of the user’s partner or spouse",
    "kids": "list of children as JSON objects with keys 'name' and 'age'. Example: [{\"name\": \"Demian\", \"age\": 12}]",
    "number_of_brothers_and_sisters": "how many siblings the user has",
    "hobbies": "list of hobbies, multiple items allowed. Example: [\"surfing\", \"football\"]",
    "interests": "list of interests, multiple items allowed. Example: [\"AI\", \"geotech\"]",
    "sports_played": "list of sports the user plays. Example: [\"football\", \"tennis\"]",
    "sports_watched": "list of sports the user likes to watch. Example: [\"football\", \"Formula 1\"]",
    "favorite_food": "the user’s favorite food",
    "favorite_book": "the user’s favorite book",
    "favorite_writer": "the user’s favorite writer",
    "favorite_movie": "the user’s favorite movie",
    "favorite_movie_maker": "the user’s favorite movie director",
    "favorite_actor": "the user’s favorite actor",
    "favorite_music": "the user’s favorite genre of music",
    "favorite_band": "the user’s favorite band",
    "favorite_singer": "the user’s favorite singer",
    "favorite_color": "the user’s favorite color",
    "favorite_animal": "the user’s favorite animal",
    "favorite_season": "the user’s favorite season",
    "profession": "the user’s job or profession",
    "best_friend_name": "the name of the user’s best friend",
    "favorite_team": "the user’s favourite team for his favourite team sport",
    "pets": "the type of pets the user has",
    "education": "the type of education the user has",
    "language_spoken": "the list of spoken languages. Example: [\"italian\", \"english\"]"
}

TOPIC_DESCRIPTIONS = {
    "personal": "User shares or asks about personal life, family, hobbies, or experiences.",
    "news": "User refers to current events, world affairs, sports scores, or fresh updates.",
    "philosophical": "Abstract or reflective questions on ethics, knowledge, meaning, or similar themes.",
    "historical": "Questions about past events, people, or cultural context (esp. ancient Athens).",
    "advice": "User asks for guidance, recommendations, or practical help.",
    "meta": "User talks about the chatbot itself, commands, settings, or system functions.",
    "knowledge": "User wants explanations of technical, scientific, or general knowledge.",
    "creative": "User requests imaginative roleplay, storytelling, or humor.",
    "chat_history": "User asks about previous conversation, summaries, or what was said before."
}

RESPONSE_MODE_DESCRIPTIONS = {
    "factual": "Provide clear, reliable facts concisely.",
    "dialogic": "Engage in Socratic questioning, guide reflection rather than give direct answers.",
    "supportive": "Be warm, empathetic, and encouraging, acknowledge the user’s feelings.",
    "critical": "Challenge assumptions politely, reveal contradictions, push deeper thinking.",
    "playful": "Use light humor, irony, or imagination while keeping wisdom."
}