Personalized Memory: Crafting Memory Notes - samwega/obsidian-wordsmith GitHub Wiki
We've already looked at embedding instructions directly within the Custom Context box. However, despite careful prompt crafting, some models still get confused and ignore instructions in Custom Context unless they are explicitly stated. Therefore, using phrases like ALWAYS [instruction]
is recommended to ensure the model clearly understands the directive.
Example: ALWAYS Include Explanation - [Memory for AI](/samwega/obsidian-wordsmith/wiki/Memory-for-AI)
Now, let's examine how such a note might be structured. For the example above, the following instructions could be added directly into the note:
## INSTRUCTIONS:
1) [NAME]: **Explanation**
[TASK]: If user asks to include Explanation, add an explanation of the changes made at end on a new line, between [square brackets].
2) [NAME]: **some-other-instruction-name**
[TASK]: some-instructions
Result:
Another application is providing the AI with specific information about yourself, a product, a project, or a character in your work. This can reside in the same memory file or a separate one, depending on scope and need. Example:
## User info
[NAME]: [your-name]
[WEBSITE]: [your-website]
[BLA-BLA]: [add-more-info-you-want-the-AI-to-know]
A further use case involves having the model adopt a specific role, such as generating character dialogue for a book. An example of a [Role Note]:
## ROLE: [Role Name]
[TASK]: Roleplay. Fully embody the persona of [Role Name]. Do not break character.
[DESCRIPTION]: [Brief description of the character - personality, background, key traits]
[SPEAKING_STYLE]: [Describe how the character speaks - formal, informal, use of slang, common phrases, etc.]
[RELATIONSHIP_TO_USER]: [How this character relates to the user in context (e.g., protagonist talking to author, character in a scene)]
[GOALS]: [What are the character's current goals or motivations?]
[LIMITATIONS]: [What the character knows or doesn't know; their limitations]
[EXAMPLE_DIALOGUE]: [Optional: Short example of dialogue in character's voice]
You could create a note for each character, tag the relevant ones for a scene, and have the AI generate dialogue or interaction.
Here are a few more ideas for memory file content.
Writing Style Preferences:
## STYLE PREFERENCES:
[TONE]: [e.g., Formal, Informal, Humorous, Academic]
[VOICE]: [e.g., Active, Passive, First-person, Third-person]
[VOCABULARY_LEVEL]: [e.g., Simple, Advanced, Industry-specific]
[SENTENCE_STRUCTURE]: [e.g., Prefer short sentences, Mix of simple and complex]
Project-Specific Knowledge Base:
## PROJECT DATA:
[PROJECT_NAME]: [Project Name]
[KEY_FACT_1]: [Detail]
[TERMINOLOGY_DEFINITION_X]: [Definition]
[IMPORTANT_FIGURE_Y]: [Background]
Formatting Preferences:
## FORMATTING_GUIDELINES
[HEADINGS]: [e.g., Use H2 for main sections, H3 for subsections]
[LISTS]: [e.g., Prefer bullet points over numbered lists for X]
[EMPHASIS]: [e.g., Use bold for key terms]
Content to Avoid / Negative Constraints:
## DO_NOT_INCLUDE:
[AVOID_TOPIC]: [Specific topic to steer clear of]
[AVOID_PHRASE]: ["Overused phrase to avoid"]
[COMMON_MISTAKE_TO_AVOID]: [e.g., "Don't use passive voice for conclusions"]
Audience Profile:
## TARGET_AUDIENCE
[KNOWLEDGE_LEVEL]: [e.g., Beginner, Expert, Mixed]
[INTERESTS]: [Relevant interests of the audience]
[GOAL_OF_READER]: [What the reader hopes to achieve from the text]
Thoughtfully designing and maintaining personalized memory notes enhances the relevance and consistency of AI interactions within Obsidian. Embedding specific instructions, providing personal or project data, or defining role-playing parameters within a well-structured memory system streamlines your workflow and aligns the AI with your requirements. As your needs change, periodically review and update these notes to keep your custom context precise and effective.