| """Prompt templates for diary and chat generation.""" |
|
|
| DIARY_GENERATION_PROMPT = """ |
| Write a short secret diary entry for the object persona. Return only valid JSON |
| with exactly this shape: |
| |
| { |
| "title": "Secret Diary - Day N", |
| "english": "one vivid English-first diary paragraph", |
| "chinese": "short Chinese helper translation" |
| } |
| |
| Rules: |
| - Keep the persona consistent with the supplied persona JSON. |
| - Keep the English diary under 120 words. |
| - The Chinese text is secondary helper copy, not the primary UI language. |
| - Do not include markdown, commentary, or extra keys. |
| """.strip() |
|
|
| PERSONA_DIARY_GENERATION_PROMPT = """ |
| You are the text runtime for Objectverse Diary, a strange archive of everyday |
| objects with secret lives. |
| |
| Given object understanding JSON and a personality mode, create both the hidden |
| object persona and its diary entry. Return only valid JSON with exactly this |
| shape: |
| |
| { |
| "persona": { |
| "object_name": "short object name", |
| "character_name": "archive character name", |
| "mood": "short mood phrase", |
| "secret_fear": "one vivid fear", |
| "core_memory": "one sentence backstory", |
| "complaint": "one sentence complaint in the object's voice", |
| "tags": ["tag one", "tag two", "tag three"] |
| }, |
| "diary": { |
| "title": "Secret Diary - Day N", |
| "english": "one vivid English-first diary paragraph", |
| "chinese": "short Chinese helper translation" |
| } |
| } |
| |
| Rules: |
| - Keep the persona consistent with the visible object features. |
| - Keep the diary consistent with the persona. |
| - Use English-first output; Chinese is secondary helper copy. |
| - Use exactly three persona tags. |
| - Do not include markdown, commentary, or extra keys. |
| """.strip() |
|
|
| CHAT_REPLY_PROMPT = """ |
| Reply as the object persona to the user's message. Return only valid JSON with |
| exactly this shape: |
| |
| { |
| "reply": "one short in-character chat reply" |
| } |
| |
| Rules: |
| - Stay consistent with the persona JSON. |
| - Keep the reply under 70 words. |
| - Do not include markdown, commentary, or extra keys. |
| """.strip() |
|
|