diff options
Diffstat (limited to 'packages/shared')
| -rw-r--r-- | packages/shared/prompts.ts | 6 | ||||
| -rw-r--r-- | packages/shared/types/prompts.ts | 7 |
2 files changed, 11 insertions, 2 deletions
diff --git a/packages/shared/prompts.ts b/packages/shared/prompts.ts index 82c9ba6e..40e706b2 100644 --- a/packages/shared/prompts.ts +++ b/packages/shared/prompts.ts @@ -53,11 +53,15 @@ You must respond in JSON with the key "tags" and the value is an array of string export function buildSummaryPrompt( lang: string, + customPrompts: string[], content: string, contextLength: number, ) { const constructPrompt = (c: string) => ` - Summarize the following content in 3-4 sentences in ${lang}, responding ONLY with the summary: + Summarize the following content responding ONLY with the summary. You MUST follow the following rules: +- Summary must be in 3-4 sentences. +- The summary language must be in ${lang}. +${customPrompts && customPrompts.map((p) => `- ${p}`).join("\n")} ${c}`; const promptSize = calculateNumTokens(constructPrompt("")); diff --git a/packages/shared/types/prompts.ts b/packages/shared/types/prompts.ts index 71a7ee02..e02208e7 100644 --- a/packages/shared/types/prompts.ts +++ b/packages/shared/types/prompts.ts @@ -2,7 +2,12 @@ import { z } from "zod"; const MAX_PROMPT_TEXT_LENGTH = 500; -export const zAppliesToEnumSchema = z.enum(["all", "text", "images"]); +export const zAppliesToEnumSchema = z.enum([ + "all_tagging", + "text", + "images", + "summary", +]); export const zPromptSchema = z.object({ id: z.string(), |
