Eventbuzz_Concierge/src/prompts/call2/local/index.js

32 lines
1.0 KiB
JavaScript

const tourist_places = require('./tourist_places');
const accommodation = require('./accommodation');
const { CALL2_LOCAL_MAIN_PROMPT } = require('./main');
const { CALL2_CONVERSATION_PROMPT } = require('../conversation');
const MODULES = [tourist_places, accommodation];
const PROMPTLETS = Object.fromEntries(MODULES.map((m) => [m.intent, m.promptlet]));
const PLACE_CARD_INTENTS = new Set(MODULES.filter((m) => m.usesPlaceCards).map((m) => m.intent));
const HOTEL_CARD_INTENTS = new Set(MODULES.filter((m) => m.usesHotelCards).map((m) => m.intent));
function buildLocalCall2SystemPrompt(intent) {
const promptlet = PROMPTLETS[intent];
if (!promptlet) return null;
return `${CALL2_CONVERSATION_PROMPT}\n\n${CALL2_LOCAL_MAIN_PROMPT}\n\n${promptlet}`;
}
function usesLocalPlaceCards(intent) {
return PLACE_CARD_INTENTS.has(String(intent || ''));
}
function usesLocalHotelCards(intent) {
return HOTEL_CARD_INTENTS.has(String(intent || ''));
}
module.exports = {
PROMPTLETS,
buildLocalCall2SystemPrompt,
usesLocalPlaceCards,
usesLocalHotelCards,
};