1
0

buildPrompt.ts 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. import { Message } from "@/features/chat/messages";
  2. export function buildPrompt(config: {name: string, system_prompt: string}, messages: Message[]) {
  3. let prompt = "";
  4. for (let m of messages) {
  5. switch(m.role) {
  6. case 'system':
  7. prompt += config.system_prompt+"\n\n";
  8. break;
  9. case 'user':
  10. prompt += `User: ${m.content}\n`;
  11. break;
  12. case 'assistant':
  13. prompt += `${config.name}: ${m.content}\n`;
  14. break;
  15. }
  16. }
  17. prompt += `${config.name}:`;
  18. return prompt;
  19. }
  20. export function buildVisionPrompt(config: {name: string, vision_system_prompt: string},messages: Message[]) {
  21. let prompt = "";
  22. for (let m of messages) {
  23. switch(m.role) {
  24. case 'system':
  25. prompt += config.vision_system_prompt+"\n\n";
  26. break;
  27. case 'user':
  28. prompt += `User: ${m.content}\n`;
  29. break;
  30. case 'assistant':
  31. prompt += `${config.name}: ${m.content}\n`;
  32. break;
  33. }
  34. }
  35. prompt += `${config.name}:`;
  36. return prompt;
  37. }