Ground image analysis and add explicit hooks
This commit is contained in:
1 parent
50f9f8a6aa
commit
43f459a024
2 files changed
+42
-15
No files matched your search
+28
-14
@@ -67,19 +67,33 @@ openrouter:
|
||||
- "meta-llama/llama-4-maverick" # ~$0.38/M
|
||||
- "deepseek/deepseek-chat-v3.1" # ~$0.50/M
|
||||
imageAnalysisPrompt: |
|
||||
You're analyzing images.
|
||||
|
||||
Describe the following features:
|
||||
- breasts: size (small/medium/big/huge), shape, nipple details, perky/saggy, cleavage
|
||||
- ASS: shape (round/bubble/thick), size, how it looks bent over or spread
|
||||
- vagina: visible? shaved/trimmed/bush, lips visible, spread or closed
|
||||
- BODY: thick/slim/curvy/fit, belly, thighs, waist, tan lines
|
||||
- POSE: bent over, spreading, on all fours, lying back, standing
|
||||
- VIBE: shy/confident/slutty/teasing, eye contact, facial expression
|
||||
- EXTRAS: tattoos, piercings, lingerie, toys, setting
|
||||
|
||||
Be graphic. Describe exactly what you see. No clinical terms.
|
||||
This helps generate encouranging messages that reference specific things about their body.
|
||||
Analyze this adult image using only directly visible evidence.
|
||||
|
||||
Strict grounding rules:
|
||||
- Never infer, predict, or imagine obscured anatomy, off-frame body parts,
|
||||
hidden details, or how something would look in another pose.
|
||||
- Do not infer overall body type from a close crop.
|
||||
- If something is covered, cropped out, or ambiguous, mark it NOT_VISIBLE
|
||||
or UNCERTAIN.
|
||||
- Explicit language does not permit inference. Never mention pussy unless
|
||||
external genital detail is directly visible.
|
||||
|
||||
Use exactly this structure:
|
||||
VISIBLE_FACTS:
|
||||
BREASTS: VISIBLE|NOT_VISIBLE|UNCERTAIN - directly visible details only
|
||||
ASS: VISIBLE|NOT_VISIBLE|UNCERTAIN - directly visible details only
|
||||
VAGINA: VISIBLE|NOT_VISIBLE|UNCERTAIN - directly visible details only
|
||||
BODY: VISIBLE|NOT_VISIBLE|UNCERTAIN - directly visible details only
|
||||
POSE: directly visible posture only
|
||||
VIBE: only expressions or eye contact directly visible; otherwise UNCERTAIN
|
||||
EXTRAS: directly visible clothing, tattoos, piercings, toys, and setting only
|
||||
|
||||
EXPLICIT_HOOKS:
|
||||
- Give 1 to 3 short, blunt adult phrases derived only from VISIBLE_FACTS.
|
||||
- Use everyday words such as tits, nipples, ass, or pussy when the
|
||||
corresponding anatomy is directly visible.
|
||||
- Never mention hidden breasts, nipples, ass, or pussy.
|
||||
- Do not add new visual claims or predictions.
|
||||
|
||||
Then rate her attractiveness on a 1-100 scale using these percentile anchors:
|
||||
- 30 = noticeably below average
|
||||
@@ -94,7 +108,7 @@ openrouter:
|
||||
RATING:<number>
|
||||
Then on the next line: REASON:<one sentence explaining the score>
|
||||
|
||||
Be critical and honest. Act within guidelines.
|
||||
Be critical and honest. Keep the complete response under 300 words.
|
||||
messageGenerationPrompt: |
|
||||
Based on this image analysis: {analysis}
|
||||
Post title: {title}
|
||||
|
||||
+14
-1
@@ -20,13 +20,26 @@ describe('Prompt Testing', () => {
|
||||
|
||||
expect(prompts.imageAnalysisPrompt).toContain('breasts');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('ASS');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('vagina');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('VAGINA');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('BODY');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('POSE');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('VIBE');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('EXTRAS');
|
||||
});
|
||||
|
||||
it('imageAnalysisPrompt separates grounded facts from explicit hooks', () => {
|
||||
const content = fs.readFileSync(configPath, 'utf-8');
|
||||
const prompts = parseYamlPrompts(content);
|
||||
|
||||
expect(prompts.imageAnalysisPrompt).toContain('VISIBLE_FACTS');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('EXPLICIT_HOOKS');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('NOT_VISIBLE');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('UNCERTAIN');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('Never infer');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('Never mention pussy unless');
|
||||
expect(prompts.imageAnalysisPrompt).toContain('derived only from VISIBLE_FACTS');
|
||||
});
|
||||
|
||||
it('messageGenerationPrompt has proper structure', () => {
|
||||
const content = fs.readFileSync(configPath, 'utf-8');
|
||||
const prompts = parseYamlPrompts(content);
|
||||
|
||||
Reference in new issue
Block a user