@sogni-ai/sogni-intelligence-client 4.4.3 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/contracts/hostedToolValidation.d.ts.map +1 -1
  2. package/dist/contracts/hostedToolValidation.js +4 -0
  3. package/dist/contracts/hostedToolValidation.js.map +1 -1
  4. package/dist/contracts/index.d.ts +3 -1
  5. package/dist/contracts/index.d.ts.map +1 -1
  6. package/dist/contracts/index.js +20 -2
  7. package/dist/contracts/index.js.map +1 -1
  8. package/dist/contracts/musicComposition.d.ts +3 -0
  9. package/dist/contracts/musicComposition.d.ts.map +1 -1
  10. package/dist/contracts/musicComposition.js +30 -3
  11. package/dist/contracts/musicComposition.js.map +1 -1
  12. package/dist/contracts/promptLimits.d.ts +74 -0
  13. package/dist/contracts/promptLimits.d.ts.map +1 -0
  14. package/dist/contracts/promptLimits.js +321 -0
  15. package/dist/contracts/promptLimits.js.map +1 -0
  16. package/dist/media/musicSettings.d.ts +1 -1
  17. package/dist/tools/definitions/animate-photo/definition.d.ts.map +1 -1
  18. package/dist/tools/definitions/animate-photo/definition.js +4 -1
  19. package/dist/tools/definitions/animate-photo/definition.js.map +1 -1
  20. package/dist/tools/definitions/generate-music/definition.d.ts.map +1 -1
  21. package/dist/tools/definitions/generate-music/definition.js +5 -2
  22. package/dist/tools/definitions/generate-music/definition.js.map +1 -1
  23. package/dist/tools/definitions/generate-video/definition.d.ts.map +1 -1
  24. package/dist/tools/definitions/generate-video/definition.js +4 -1
  25. package/dist/tools/definitions/generate-video/definition.js.map +1 -1
  26. package/dist/tools/definitions/segment-image/definition.d.ts.map +1 -1
  27. package/dist/tools/definitions/segment-image/definition.js +2 -1
  28. package/dist/tools/definitions/segment-image/definition.js.map +1 -1
  29. package/dist/tools/definitions/sound-to-video/definition.d.ts.map +1 -1
  30. package/dist/tools/definitions/sound-to-video/definition.js +4 -1
  31. package/dist/tools/definitions/sound-to-video/definition.js.map +1 -1
  32. package/dist/tools/definitions/video-to-video/definition.d.ts.map +1 -1
  33. package/dist/tools/definitions/video-to-video/definition.js +4 -1
  34. package/dist/tools/definitions/video-to-video/definition.js.map +1 -1
  35. package/dist-esm/contracts/hostedToolValidation.js +4 -0
  36. package/dist-esm/contracts/hostedToolValidation.js.map +1 -1
  37. package/dist-esm/contracts/index.js +2 -1
  38. package/dist-esm/contracts/index.js.map +1 -1
  39. package/dist-esm/contracts/musicComposition.js +28 -3
  40. package/dist-esm/contracts/musicComposition.js.map +1 -1
  41. package/dist-esm/contracts/promptLimits.js +307 -0
  42. package/dist-esm/contracts/promptLimits.js.map +1 -0
  43. package/dist-esm/tools/definitions/animate-photo/definition.js +4 -1
  44. package/dist-esm/tools/definitions/animate-photo/definition.js.map +1 -1
  45. package/dist-esm/tools/definitions/generate-music/definition.js +5 -2
  46. package/dist-esm/tools/definitions/generate-music/definition.js.map +1 -1
  47. package/dist-esm/tools/definitions/generate-video/definition.js +4 -1
  48. package/dist-esm/tools/definitions/generate-video/definition.js.map +1 -1
  49. package/dist-esm/tools/definitions/segment-image/definition.js +2 -1
  50. package/dist-esm/tools/definitions/segment-image/definition.js.map +1 -1
  51. package/dist-esm/tools/definitions/sound-to-video/definition.js +4 -1
  52. package/dist-esm/tools/definitions/sound-to-video/definition.js.map +1 -1
  53. package/dist-esm/tools/definitions/video-to-video/definition.js +4 -1
  54. package/dist-esm/tools/definitions/video-to-video/definition.js.map +1 -1
  55. package/package.json +2 -2
@@ -1,4 +1,5 @@
1
1
  import { minimaxH3AudioGuideMode } from '../media/videoSettings.js';
2
+ import { checkToolArgumentPromptLimits } from './promptLimits.js';
2
3
  function matchesType(value, type) {
3
4
  switch (type) {
4
5
  case 'array':
@@ -352,6 +353,9 @@ export function validateAndNormalizeHostedToolArguments(tools, toolName, args, o
352
353
  context.errors.push(`videoModel "${String(cleanedRecord.videoModel)}" has no negative-prompt input; remove "negativePrompt"`);
353
354
  }
354
355
  }
356
+ for (const violation of checkToolArgumentPromptLimits(toolName, cleanedRecord)) {
357
+ context.errors.push(`Argument "${violation.argument}" is too long for videoModel/model "${violation.modelId}": ${violation.message.replace(/ Shorten (?:it|them) and submit again\.$/, '')} Rewrite it shorter, keeping the user's intent and every exact quoted span, and call the tool again; never cut it off mid-sentence.`);
358
+ }
355
359
  return {
356
360
  ok: context.errors.length === 0,
357
361
  errors: context.errors,
@@ -1 +1 @@
1
- {"version":3,"file":"hostedToolValidation.js","sourceRoot":"","sources":["../../src/contracts/hostedToolValidation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hostedToolValidation.js","sourceRoot":"","sources":["../../src/contracts/hostedToolValidation.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,8 @@ export { SOGNI_ADULT_REQUESTER_DIRECTIVE, withAdultRequesterDirective, } from '.
18
18
  export { RANDOM_THEMES, RANDOM_LYRICS_THEMES, getRandomTheme, getRandomLyricsTheme, } from './randomThemes.js';
19
19
  export { ID_LORA_MAX_TOKENS, ID_LORA_COMPOSITION_TOOL, buildIdLoRaConversionMessages, parseToolCallIdLoRaParts, formatIdLoRaPrompt, } from './idLoraPrompt.js';
20
20
  export { IMAGE_PROMPT_MAX_TOKENS, IMAGE_PROMPT_TOOL, buildImagePromptMessages, buildImagePromptAuthoringMessages, resolveImagePromptAuthoringProfile, assertImagePromptAuthoringOutput, parseToolCallPrompt, } from './imagePrompt.js';
21
- export { LYRICS_MAX_TOKENS, LYRICS_COMPOSITION_TOOL, INSTRUMENTAL_COMPOSITION_TOOL, buildLyricsMessages, buildInstrumentalMessages, parseToolCallResult, } from './musicComposition.js';
21
+ export { PROMPT_TOO_LONG_ERROR_CODE, PromptTooLongError, resolvePromptLimitFamily, resolveGenerationPromptLimits, promptLimitInstruction, promptTokenLowerBound, measurePromptField, checkGenerationPromptLimits, assertGenerationPromptWithinLimits, promptLimitRepairInstruction, promptLengthAdvisory, checkToolArgumentPromptLimits, VIDEO_PROMPT_LENGTH_LIMITS_GUIDANCE, MUSIC_TEXT_LENGTH_LIMITS_GUIDANCE, SAM3_TEXT_LENGTH_GUIDANCE, } from './promptLimits.js';
22
+ export { LYRICS_MAX_TOKENS, LYRICS_COMPOSITION_TOOL, INSTRUMENTAL_COMPOSITION_TOOL, buildLyricsMessages, buildInstrumentalMessages, parseToolCallResult, checkMusicCompositionLimits, buildMusicCompositionLengthRepairMessage, } from './musicComposition.js';
22
23
  export { SCRIPT_MAX_TOKENS, SCRIPT_COMPOSITION_TOOL, CHARACTER_REFERENCE_VIDEO_COMPOSITION_SYSTEM_PROMPT, buildLtxScriptMessages, buildWanScriptMessages, parseToolCallScript, buildCharacterReferenceVideoCompositionMessages, parseCompositionToolScriptFromResult, } from './videoComposition.js';
23
24
  export { HOSTED_COMPOSITION_ROUTER_MAX_TOKENS, buildEnhancePromptToolArgs, buildLyricsCompositionToolArgs, buildInstrumentalCompositionToolArgs, buildScriptCompositionToolArgs, buildComposeWorkflowToolArgs, buildComposeWorkflowTemplateToolArgs, buildWanScriptCompositionToolArgs, buildHostedCompositionToolMessages, } from './hostedComposition.js';
24
25
  export { SEEDANCE_STORYBOARD_REFERENCE_PROMPT, } from './storyboard.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,14 @@
1
1
  import { LANGUAGE_LABELS, MUSIC_BPM, MUSIC_DURATION, MUSIC_KEY_SCALES, MUSIC_TIME_SIGNATURES, } from '../media/musicSettings.js';
2
2
  import { getRandomLyricsTheme } from './randomThemes.js';
3
3
  import { withAdultRequesterDirective } from './adultRequesterDirective.js';
4
+ import { checkGenerationPromptLimits, promptLimitInstruction, promptLimitRepairInstruction, } from './promptLimits.js';
4
5
  export const LYRICS_MAX_TOKENS = 2048;
6
+ const MUSIC_LIMIT_MODEL = {
7
+ ace: 'ace-step',
8
+ music3: 'minimax-music3',
9
+ };
10
+ const ACE_LENGTH_LIMIT = promptLimitInstruction(MUSIC_LIMIT_MODEL.ace);
11
+ const MUSIC3_LENGTH_LIMIT = promptLimitInstruction(MUSIC_LIMIT_MODEL.music3);
5
12
  const LYRICS_SYSTEM_PROMPT = `You are an expert songwriter. Generate song lyrics using the ACE-Step structured format and return them via the compose_lyrics tool.
6
13
 
7
14
  Section headers — each section tag can optionally include a vocal/performance modifier after a hyphen, e.g. [Section - modifier]. Choose modifiers that fit the song's mood and vary them across sections.
@@ -16,7 +23,9 @@ Rules:
16
23
  - Use parentheses for background vocals: "We rise together (together)"
17
24
  - The lyrics should be suitable for a song, not a poem
18
25
 
19
- Suggest a duration that fits the lyrics naturally at the chosen tempo.`;
26
+ Suggest a duration that fits the lyrics naturally at the chosen tempo.
27
+
28
+ ${ACE_LENGTH_LIMIT}`;
20
29
  const INSTRUMENTAL_SYSTEM_PROMPT = `You are an expert music composer and arranger. Design an instrumental music structure using the ACE-Step structured format and return it via the compose_instrumental tool.
21
30
 
22
31
  Output ONLY section tags in brackets — one per line, nothing else between them. The AI music model interprets any text outside brackets as lyrics to sing, so do NOT include descriptions, directions, or any other text between section tags.
@@ -57,7 +66,9 @@ Caption rules — also fill the caption field with a three-section structured de
57
66
  - Arrangement: primary and secondary instruments, groove, bass, percussion, textures, spatial effects, and how sections evolve.
58
67
  Write it as one paragraph: "Global Metadata: ... Vocal Details: ... Arrangement: ..."
59
68
 
60
- Also return bpm, keyscale, timesignature, and the duration your lyric sheet fills — bake the BPM and key into the caption text too, since Music 3 has no separate tempo or key controls.`;
69
+ Also return bpm, keyscale, timesignature, and the duration your lyric sheet fills — bake the BPM and key into the caption text too, since Music 3 has no separate tempo or key controls.
70
+
71
+ ${MUSIC3_LENGTH_LIMIT}`;
61
72
  const MUSIC3_INSTRUMENTAL_SYSTEM_PROMPT = `You are an expert composer and arranger writing for MiniMax Music 3 and must return your work via the compose_instrumental tool.
62
73
 
63
74
  MiniMax Music 3 reads two inputs: a structured CAPTION and a structure sheet. For instrumentals the structure sheet must contain ONLY plain bracketed section tags, one per line, nothing else — any text outside brackets gets sung.
@@ -84,7 +95,7 @@ export const LYRICS_COMPOSITION_TOOL = {
84
95
  properties: {
85
96
  lyrics: {
86
97
  type: 'string',
87
- description: 'Song lyrics with enriched section headers (e.g. [Verse 1 - soft vocal]). Use \\n for newlines.',
98
+ description: 'Song lyrics with enriched section headers (e.g. [Verse 1 - soft vocal]). Use \\n for newlines. ACE-Step accepts at most 4,096 characters of lyrics, tags included; MiniMax Music 3 reads at most 5,000 tokens of caption and lyrics together.',
88
99
  },
89
100
  bpm: { type: 'number', description: 'Tempo in beats per minute, e.g. 120 for a pop song' },
90
101
  keyscale: {
@@ -236,4 +247,18 @@ export function parseToolCallResult(args) {
236
247
  caption: caption || null,
237
248
  };
238
249
  }
250
+ export function checkMusicCompositionLimits(result, options) {
251
+ const target = options?.model === 'music3' ? 'music3' : 'ace';
252
+ return checkGenerationPromptLimits(MUSIC_LIMIT_MODEL[target], {
253
+ prompt: target === 'music3' ? result.caption ?? '' : '',
254
+ lyrics: result.lyrics,
255
+ });
256
+ }
257
+ export function buildMusicCompositionLengthRepairMessage(violations, options) {
258
+ const target = options?.model === 'music3' ? 'music3' : 'ace';
259
+ return {
260
+ role: 'user',
261
+ content: `${promptLimitRepairInstruction(MUSIC_LIMIT_MODEL[target], violations)} Return the complete result through the same tool.`,
262
+ };
263
+ }
239
264
  //# sourceMappingURL=musicComposition.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"musicComposition.js","sourceRoot":"","sources":["../../src/contracts/musicComposition.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,qBAAqB,GAEtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAsB3E,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAEtC,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;uEAc0C,CAAC;AAExE,MAAM,0BAA0B,GAAG;;;;;;;;;;;;;;;;;;;;;;0EAsBuC,CAAC;AAE3E,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;yLAiBqJ,CAAC;AAE1L,MAAM,iCAAiC,GAAG;;;;;;;;;;;;;;;iIAeuF,CAAC;AAElI,MAAM,CAAC,MAAM,uBAAuB,GAAmB;IACrD,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,wDAAwD;QACrE,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,gGAAgG;iBACnG;gBACD,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oDAAoD,EAAE;gBAC1F,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8DAA8D;iBAC5E;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;oBAClC,WAAW,EAAE,qDAAqD;iBACnE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,6EAA6E;iBAC3F;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,4IAA4I;iBAC/I;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,CAAC;SACrE;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAmB;IAC3D,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,yEAAyE;QACtF,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,gNAAgN;iBACnN;gBACD,GAAG,EAAE;oBACH,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,yDAAyD;iBACvE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8DAA8D;iBAC5E;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;oBAClC,WAAW,EAAE,qDAAqD;iBACnE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iFAAiF;iBAC/F;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,6LAA6L;iBAChM;aACF;YACD,QAAQ,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,CAAC;SACxE;KACF;CACF,CAAC;AAEF,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,QAAgB,EAChB,WAAmB,EACnB,WAAoB,EACpB,OAAiC;IAEjC,MAAM,MAAM,GAAG,OAAO,EAAE,KAAK,KAAK,QAAQ,CAAC;IAC3C,MAAM,QAAQ,GAAuB;QACnC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,2BAA2B,CAAC,MAAM,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAAE;KACtH,CAAC;IACF,IAAI,WAAmB,CAAC;IACxB,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QAClB,WAAW,GAAG,MAAM,CAAC;IACvB,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,WAAW,IAAI,oBAAoB,EAAE,CAAC;QACpD,WAAW,GAAG,+CAA+C,KAAK,+BAA+B,CAAC;IACpG,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,WAAW,IAAI,4BAA4B,WAAW,EAAE,CAAC;IAC3D,CAAC;IACD,IAAI,QAAQ,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QACvC,WAAW,IAAI,4BAA4B,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;IACzE,CAAC;IACD,IAAI,MAAM,IAAI,OAAO,EAAE,qBAAqB,EAAE,CAAC;QAC7C,WAAW,IAAI,iCAAiC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,8CAA8C,CAAC;IAC1I,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IACtD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,MAAc,EACd,WAAmB,EACnB,WAAoB,EACpB,OAAiC;IAEjC,MAAM,MAAM,GAAG,OAAO,EAAE,KAAK,KAAK,QAAQ,CAAC;IAC3C,MAAM,QAAQ,GAAuB;QACnC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,2BAA2B,CAAC,MAAM,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,0BAA0B,CAAC,EAAE;KAClI,CAAC;IACF,IAAI,WAAmB,CAAC;IACxB,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QAClB,WAAW,GAAG,MAAM,CAAC;IACvB,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,WAAW,IAAI,oBAAoB,EAAE,CAAC;QACpD,WAAW,GAAG,mEAAmE,KAAK,+BAA+B,CAAC;IACxH,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,WAAW,IAAI,4BAA4B,WAAW,EAAE,CAAC;IAC3D,CAAC;IACD,IAAI,MAAM,IAAI,OAAO,EAAE,qBAAqB,EAAE,CAAC;QAC7C,WAAW,IAAI,kCAAkC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,sEAAsE,CAAC;IACnK,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IACtD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAChC,MAAM,GAAG,GAAkC,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;IAC9F,IAAI,GAAG,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACtD,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,GAAoB,CAAC;IAC1D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,SAAS,CAAC,GAAG,IAAI,GAAG,IAAI,SAAS,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,cAAc,CAAC,GAAG,IAAI,GAAG,IAAI,cAAc,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClG,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1B,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IAClF,OAAO,KAAK,IAAI,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAA6B;IAC/D,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAClD,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE;QACrB,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;QAC3B,GAAG,EAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC;QACjC,aAAa,EAAE,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC;QACrD,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC;QACtC,OAAO,EAAE,OAAO,IAAI,IAAI;KACzB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"musicComposition.js","sourceRoot":"","sources":["../../src/contracts/musicComposition.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,307 @@
1
+ export const PROMPT_TOO_LONG_ERROR_CODE = 4102;
2
+ export class PromptTooLongError extends Error {
3
+ constructor(modelId, violations) {
4
+ super(`This prompt is too long for the model. ${violations.map(v => v.message).join(' ')}`);
5
+ this.modelId = modelId;
6
+ this.violations = violations;
7
+ this.code = PROMPT_TOO_LONG_ERROR_CODE;
8
+ this.name = 'PromptTooLongError';
9
+ }
10
+ }
11
+ const fmt = (value) => Math.round(value).toLocaleString('en-US');
12
+ const ENGLISH_CHARS_PER_TOKEN = 4;
13
+ const WAN22_INSTRUCTION = 'LENGTH LIMIT: Wan 2.2 reads at most 4,096 text tokens (about 3,000 English words or 4,000 Chinese characters), for the prompt and for the negative prompt; keep each under 2,000 English words or 3,000 Chinese characters. Never cut a prompt to fit; rewrite it shorter.';
14
+ const T5_INSTRUCTION = (name) => `LENGTH LIMIT: ${name} reads at most 4,096 text tokens (about 3,000 English words); keep the prompt under 2,000 words. Never cut a prompt to fit; rewrite it shorter.`;
15
+ const LIMITS = {
16
+ 'wan2.2': {
17
+ modelName: 'Wan 2.2',
18
+ prompt: { unit: 'tokens', max: 4096, tokenizer: 'umt5', addedTokens: 1 },
19
+ negativePrompt: { unit: 'tokens', max: 4096, tokenizer: 'umt5', addedTokens: 1 },
20
+ instruction: WAN22_INSTRUCTION,
21
+ },
22
+ 'flux-schnell': {
23
+ modelName: 'Flux.1 Schnell',
24
+ prompt: { unit: 'tokens', max: 4096, tokenizer: 't5xxl', addedTokens: 1 },
25
+ negativePrompt: { unit: 'tokens', max: 4096, tokenizer: 't5xxl', addedTokens: 1 },
26
+ instruction: T5_INSTRUCTION('Flux.1 Schnell'),
27
+ },
28
+ chroma: {
29
+ modelName: 'Chroma',
30
+ prompt: { unit: 'tokens', max: 4096, tokenizer: 't5xxl', addedTokens: 1 },
31
+ negativePrompt: { unit: 'tokens', max: 4096, tokenizer: 't5xxl', addedTokens: 1 },
32
+ instruction: T5_INSTRUCTION('Chroma'),
33
+ },
34
+ 'minimax-h3': {
35
+ modelName: 'MiniMax H3',
36
+ prompt: { unit: 'characters', max: 7000 },
37
+ instruction: 'LENGTH LIMIT: MiniMax H3 accepts at most 7,000 characters; keep the whole prompt under 6,000 characters. Never cut a prompt to fit; rewrite it shorter.',
38
+ },
39
+ wan3: {
40
+ modelName: 'Wan 3',
41
+ prompt: { unit: 'characters', max: 20000 },
42
+ instruction: 'LENGTH LIMIT: Wan 3 accepts at most 20,000 characters; keep the prompt under 17,000 characters. Never cut a prompt to fit; rewrite it shorter.',
43
+ },
44
+ 'gpt-image': {
45
+ modelName: 'GPT Image',
46
+ prompt: { unit: 'characters', max: 32000 },
47
+ instruction: 'LENGTH LIMIT: GPT Image accepts at most 32,000 characters; keep the prompt under 27,000 characters. Never cut a prompt to fit; rewrite it shorter.',
48
+ },
49
+ happyhorse: {
50
+ modelName: 'HappyHorse',
51
+ prompt: { unit: 'characters', max: 5000, cjkWeight: 2 },
52
+ instruction: 'LENGTH LIMIT: HappyHorse accepts at most 5,000 characters, and each Chinese, Japanese, or Korean character counts as 2; keep the prompt under 4,200 characters (2,100 CJK characters). Never cut a prompt to fit; rewrite it shorter.',
53
+ },
54
+ seedance: {
55
+ modelName: 'Seedance',
56
+ advisory: { englishWords: 1000, chineseCharacters: 500 },
57
+ instruction: 'LENGTH: Seedance keeps the most detail with English prompts under 1,000 words or Chinese prompts under 500 characters; longer prompts are accepted but may lose detail.',
58
+ },
59
+ 'ace-step': {
60
+ modelName: 'ACE-Step',
61
+ prompt: { unit: 'characters', max: 4096 },
62
+ lyrics: { unit: 'characters', max: 4096 },
63
+ instruction: 'LENGTH LIMIT: ACE-Step accepts at most 4,096 characters of caption/tags and at most 4,096 characters of lyrics, section tags and line breaks included; keep the lyrics under 3,500 characters. Never cut lyrics to fit; write fewer or shorter sections.',
64
+ },
65
+ 'minimax-music3': {
66
+ modelName: 'MiniMax Music 3',
67
+ promptWithLyrics: { unit: 'tokens', max: 5000, tokenizer: 'minimax-music3', addedTokens: 8 },
68
+ instruction: 'LENGTH LIMIT: MiniMax Music 3 reads at most 5,000 tokens of caption and lyrics together; keep them under 2,500 English words (or 3,000 Chinese characters) combined. Never cut lyrics to fit; write fewer or shorter sections.',
69
+ },
70
+ sam3: {
71
+ modelName: 'SAM 3',
72
+ prompt: { unit: 'tokens', max: 32, tokenizer: 'clip', addedTokens: 2 },
73
+ instruction: 'LENGTH LIMIT: SAM 3 reads at most 32 tokens, its start and end tokens included; name the object in a short noun phrase of at most 20 words.',
74
+ },
75
+ };
76
+ function normalizeModelId(modelId) {
77
+ return modelId
78
+ .trim()
79
+ .toLowerCase()
80
+ .replace(/[\s_.]+/g, '-')
81
+ .replace(/-+/g, '-');
82
+ }
83
+ const FAMILY_PATTERNS = [
84
+ ['wan3', /^wan3(?:-0)?(?:-|$)/],
85
+ ['wan2.2', /^(?:wan22|wan-2-2|wan-v2-2)(?:-|$)|^wan-s2v$/],
86
+ ['minimax-h3', /^minimax-h3(?:-|$)/],
87
+ ['minimax-music3', /^(?:minimax-music-?3|music3)(?:-|$)/],
88
+ ['happyhorse', /^happyhorse(?:-|$)/],
89
+ ['seedance', /^(?:dreamina-)?seedance/],
90
+ ['gpt-image', /^gpt-image-2(?:-|$)/],
91
+ ['flux-schnell', /^flux-?1?-schnell(?:-|$)/],
92
+ ['chroma', /^chroma/],
93
+ ['ace-step', /^ace-step(?:-|$)/],
94
+ ['sam3', /^sam3(?:-|$)/],
95
+ ];
96
+ export function resolvePromptLimitFamily(modelId) {
97
+ if (typeof modelId !== 'string' || !modelId.trim())
98
+ return null;
99
+ const normalized = normalizeModelId(modelId);
100
+ for (const [family, pattern] of FAMILY_PATTERNS) {
101
+ if (pattern.test(normalized))
102
+ return family;
103
+ }
104
+ return null;
105
+ }
106
+ export function resolveGenerationPromptLimits(modelId) {
107
+ const family = resolvePromptLimitFamily(modelId);
108
+ return family ? { family, ...LIMITS[family] } : null;
109
+ }
110
+ export function promptLimitInstruction(modelId) {
111
+ return resolveGenerationPromptLimits(modelId)?.instruction ?? null;
112
+ }
113
+ const CJK_CERTAIN = /[\u4e00-\u9fff]/g;
114
+ const CJK_POSSIBLE = /[\u3000-\u303f\u3040-\u30ff\u3100-\u312f\u3130-\u318f\u31f0-\u31ff\u3400-\u4dbf\uac00-\ud7af\uf900-\ufaff\uff00-\uffef]|[\ud840-\ud87f][\udc00-\udfff]/;
115
+ function countWords(text) {
116
+ return text.split(/\s+/).filter(Boolean).length;
117
+ }
118
+ const VISIBLE = /[\p{L}\p{N}\p{P}\p{S}]/u;
119
+ function countVisibleWords(text) {
120
+ return text.split(/\s+/).filter(word => VISIBLE.test(word)).length;
121
+ }
122
+ const CLIP_PIECES = /'s|'t|'re|'ve|'m|'ll|'d|\p{L}+|\p{N}|[^\s\p{L}\p{N}]+/gu;
123
+ const LETTER_RUNS_AND_DIGITS = /\p{L}+|\p{N}/gu;
124
+ function countMatches(text, pattern) {
125
+ return text.match(pattern)?.length ?? 0;
126
+ }
127
+ export function promptTokenLowerBound(limit, text) {
128
+ if (!text)
129
+ return 0;
130
+ let pieces;
131
+ switch (limit.tokenizer) {
132
+ case 'clip':
133
+ pieces = countMatches(text.toLowerCase().replace(/\s+/g, ' ').trim(), CLIP_PIECES);
134
+ break;
135
+ case 'minimax-music3':
136
+ pieces = countMatches(text, LETTER_RUNS_AND_DIGITS);
137
+ break;
138
+ default:
139
+ pieces = countVisibleWords(text);
140
+ }
141
+ return pieces + limit.addedTokens;
142
+ }
143
+ export function measurePromptField(limit, text) {
144
+ const characters = text.length;
145
+ if (limit.unit === 'characters') {
146
+ const weight = limit.cjkWeight ?? 1;
147
+ if (weight === 1)
148
+ return { measured: characters, exact: true, characters };
149
+ const certain = text.match(CJK_CERTAIN)?.length ?? 0;
150
+ const measured = characters + certain * (weight - 1);
151
+ const stripped = text.replace(CJK_CERTAIN, '');
152
+ return { measured, exact: !CJK_POSSIBLE.test(stripped), characters };
153
+ }
154
+ return { measured: promptTokenLowerBound(limit, text), exact: false, characters };
155
+ }
156
+ const FIELD_LABELS = {
157
+ prompt: 'prompt',
158
+ negativePrompt: 'negative prompt',
159
+ lyrics: 'lyrics',
160
+ promptWithLyrics: 'prompt and lyrics together',
161
+ };
162
+ function violationMessage(field, limit, measurement, modelName) {
163
+ const label = FIELD_LABELS[field];
164
+ const verb = field === 'lyrics' || field === 'promptWithLyrics' ? 'are' : 'is';
165
+ const subject = `Your ${label}`;
166
+ if (field === 'promptWithLyrics') {
167
+ return `Your lyrics alone are at least ${fmt(measurement.measured)} tokens (${fmt(measurement.characters)} characters) with the model's template; ${modelName} reads at most ${fmt(limit.max)} tokens of caption and lyrics together. Shorten them and submit again.`;
168
+ }
169
+ if (limit.unit === 'characters') {
170
+ const weighted = limit.cjkWeight && limit.cjkWeight !== 1
171
+ ? ` (each Chinese, Japanese, or Korean character counts as ${limit.cjkWeight})`
172
+ : '';
173
+ return `${subject} ${verb} ${fmt(measurement.measured)} characters${weighted}; ${modelName} accepts at most ${fmt(limit.max)}. Shorten it and submit again.`;
174
+ }
175
+ return `${subject} ${verb} at least ${fmt(measurement.measured)} tokens (${fmt(measurement.characters)} characters); ${modelName} reads at most ${fmt(limit.max)} tokens, roughly ${fmt(limit.max * ENGLISH_CHARS_PER_TOKEN)} characters of English. Shorten it and submit again.`;
176
+ }
177
+ function encodedPositivePrompt(prompt, stylePrompt) {
178
+ const style = typeof stylePrompt === 'string' ? stylePrompt.trim() : '';
179
+ return style ? `${prompt}, ${style}` : prompt;
180
+ }
181
+ export function checkGenerationPromptLimits(modelId, text) {
182
+ const limits = resolveGenerationPromptLimits(modelId);
183
+ if (!limits)
184
+ return [];
185
+ const prompt = typeof text.prompt === 'string' ? text.prompt : '';
186
+ const lyrics = typeof text.lyrics === 'string' ? text.lyrics : '';
187
+ const negativePrompt = typeof text.negativePrompt === 'string' ? text.negativePrompt : '';
188
+ const fields = [
189
+ [
190
+ 'prompt',
191
+ limits.prompt,
192
+ limits.prompt?.unit === 'tokens' ? encodedPositivePrompt(prompt, text.stylePrompt) : prompt,
193
+ ],
194
+ ['negativePrompt', limits.negativePrompt, negativePrompt],
195
+ ['lyrics', limits.lyrics, lyrics],
196
+ ['promptWithLyrics', limits.promptWithLyrics, lyrics],
197
+ ];
198
+ const violations = [];
199
+ for (const [field, limit, value] of fields) {
200
+ if (!limit || !value)
201
+ continue;
202
+ const measurement = measurePromptField(limit, value);
203
+ if (measurement.measured <= limit.max)
204
+ continue;
205
+ violations.push({
206
+ field,
207
+ unit: limit.unit,
208
+ max: limit.max,
209
+ measured: measurement.measured,
210
+ exact: measurement.exact,
211
+ characters: measurement.characters,
212
+ message: violationMessage(field, limit, measurement, limits.modelName),
213
+ });
214
+ }
215
+ return violations;
216
+ }
217
+ export function assertGenerationPromptWithinLimits(modelId, text) {
218
+ const violations = checkGenerationPromptLimits(modelId, text);
219
+ if (violations.length > 0)
220
+ throw new PromptTooLongError(String(modelId), violations);
221
+ }
222
+ export function promptLimitRepairInstruction(modelId, violations) {
223
+ const modelName = resolveGenerationPromptLimits(modelId)?.modelName ?? 'The model';
224
+ const details = violations.map(v => {
225
+ const label = FIELD_LABELS[v.field];
226
+ const target = Math.floor((v.max * 0.8) / 10) * 10;
227
+ return v.unit === 'characters'
228
+ ? `the ${label} came to ${fmt(v.measured)} characters; ${modelName} accepts at most ${fmt(v.max)}, so aim under ${fmt(target)}`
229
+ : `the ${label} came to at least ${fmt(v.measured)} tokens; ${modelName} reads at most ${fmt(v.max)} tokens, so aim under ${fmt(target)}`;
230
+ });
231
+ return `LENGTH REPAIR REQUIRED: ${details.join('; ')}. Rewrite the whole result shorter while keeping its required structure, every exact quoted span, and the user's intent. Do not cut it off mid-sentence or drop required sections; condense wording instead.`;
232
+ }
233
+ export function promptLengthAdvisory(modelId, prompt) {
234
+ const limits = resolveGenerationPromptLimits(modelId);
235
+ if (!limits?.advisory || typeof prompt !== 'string' || !prompt)
236
+ return null;
237
+ const chinese = prompt.match(CJK_CERTAIN)?.length ?? 0;
238
+ const words = countWords(prompt.replace(CJK_CERTAIN, ' '));
239
+ if (chinese > limits.advisory.chineseCharacters) {
240
+ return `This ${limits.modelName} prompt has ${fmt(chinese)} Chinese characters; ${limits.modelName} keeps the most detail under ${fmt(limits.advisory.chineseCharacters)}.`;
241
+ }
242
+ if (words > limits.advisory.englishWords) {
243
+ return `This ${limits.modelName} prompt has ${fmt(words)} words; ${limits.modelName} keeps the most detail under ${fmt(limits.advisory.englishWords)}.`;
244
+ }
245
+ return null;
246
+ }
247
+ export const VIDEO_PROMPT_LENGTH_LIMITS_GUIDANCE = 'PROMPT LENGTH LIMITS (an over-limit request is refused, never cut): MiniMax H3 at most 7,000 characters; HappyHorse at most 5,000 (each Chinese, Japanese, or Korean character counts as 2); Wan 3 at most 20,000; Wan 2.2 at most 4,096 tokens (about 3,000 English words) for the prompt and for negativePrompt. Seedance keeps the most detail under 1,000 English words or 500 Chinese characters. Stay well under these; condense wording instead of dropping required content.';
248
+ export const MUSIC_TEXT_LENGTH_LIMITS_GUIDANCE = 'LENGTH LIMITS (an over-limit request is refused, never cut): ACE-Step accepts at most 4,096 characters of prompt and at most 4,096 characters of lyrics, tags and line breaks included; MiniMax Music 3 (music3) reads at most 5,000 tokens of prompt and lyrics together (about 3,500 English words). Keep ACE-Step lyrics under 3,500 characters.';
249
+ export const SAM3_TEXT_LENGTH_GUIDANCE = 'SAM 3 reads at most 32 tokens, its start and end tokens included: use a short noun phrase of at most 20 words.';
250
+ const PROMPT_LIMITED_TOOLS = new Set([
251
+ 'generate_video',
252
+ 'animate_photo',
253
+ 'sound_to_video',
254
+ 'video_to_video',
255
+ 'extend_video',
256
+ 'replace_video_segment',
257
+ 'generate_image',
258
+ 'edit_image',
259
+ 'generate_music',
260
+ 'segment_image',
261
+ ]);
262
+ function toolCallPromptLimitModel(toolName, args) {
263
+ if (!PROMPT_LIMITED_TOOLS.has(toolName))
264
+ return null;
265
+ const text = (value) => (typeof value === 'string' && value.trim() ? value : null);
266
+ switch (toolName) {
267
+ case 'segment_image':
268
+ return 'sam3';
269
+ case 'generate_music': {
270
+ const model = text(args.model);
271
+ if (!model)
272
+ return null;
273
+ return model === 'turbo' || model === 'sft' ? 'ace-step' : model;
274
+ }
275
+ default:
276
+ return text(args.videoModel) ?? text(args.model);
277
+ }
278
+ }
279
+ export function checkToolArgumentPromptLimits(toolName, args) {
280
+ const modelId = toolCallPromptLimitModel(toolName, args);
281
+ if (!modelId || !resolveGenerationPromptLimits(modelId))
282
+ return [];
283
+ const str = (value) => (typeof value === 'string' ? value : undefined);
284
+ const violations = [];
285
+ const add = (argument, found) => {
286
+ for (const violation of found) {
287
+ const name = violation.field === 'prompt' ? argument
288
+ : violation.field === 'promptWithLyrics' ? 'lyrics'
289
+ : violation.field;
290
+ violations.push({ ...violation, argument: name, modelId });
291
+ }
292
+ };
293
+ const promptArgument = toolName === 'segment_image' ? 'text' : 'prompt';
294
+ add(promptArgument, checkGenerationPromptLimits(modelId, {
295
+ prompt: str(args[promptArgument]),
296
+ negativePrompt: str(args.negativePrompt),
297
+ lyrics: str(args.lyrics),
298
+ }));
299
+ if (Array.isArray(args.prompts)) {
300
+ args.prompts.forEach((entry, index) => {
301
+ if (typeof entry === 'string')
302
+ add(`prompts[${index}]`, checkGenerationPromptLimits(modelId, { prompt: entry }));
303
+ });
304
+ }
305
+ return violations;
306
+ }
307
+ //# sourceMappingURL=promptLimits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promptLimits.js","sourceRoot":"","sources":["../../src/contracts/promptLimits.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { ANIMATE_PHOTO_SKIP_PROMPT_PROCESSING_DESCRIPTION, LITERAL_VIDEO_PROMPT_OVERRIDE, } from '../../../contracts/toolPromptMarkers.js';
2
2
  import { ASPECT_RATIO_DESCRIPTION } from '../../../media/index.js';
3
3
  import { H3_VIDEO_LORA_CATALOG_REFERENCE, H3_VIDEO_LORA_STRENGTHS_GUIDANCE, LORA_STACKING_GUIDANCE, h3LoraModelSentence, } from '../../shared/loraGuidance.js';
4
+ import { VIDEO_PROMPT_LENGTH_LIMITS_GUIDANCE } from '../../../contracts/promptLimits.js';
4
5
  const H3_LORA_SELECTORS = [
5
6
  "minimax-h3-i2v",
6
7
  "minimax-h3-i2v-turbo",
@@ -52,7 +53,9 @@ POSITIVE CONSTRAINT TRANSLATION: For LTX 2.3 and WAN 2.2, the prompt field is a
52
53
 
53
54
  WAN 2.2 ("wan22"): 30-150 words, subtle natural movements. Motion-only visual prompt; omit soundtrack, ambience, room tone, music, hums, sighs, spoken words, voice, and SFX cues because WAN does not generate audio.
54
55
 
55
- BATCH VARIATIONS: When numberOfVariations > 1, use Dynamic Prompt syntax to vary motion, camera, or atmosphere while preserving the user's specified elements. This is one Sogni project with multiple jobs, so prefer it when all outputs share the same source/end frames and generation parameters and only prompt text varies. Example: "{gentle sway with drifting embers|slow paw wave with a tiny head tilt|small hop with soft fur motion}".`,
56
+ BATCH VARIATIONS: When numberOfVariations > 1, use Dynamic Prompt syntax to vary motion, camera, or atmosphere while preserving the user's specified elements. This is one Sogni project with multiple jobs, so prefer it when all outputs share the same source/end frames and generation parameters and only prompt text varies. Example: "{gentle sway with drifting embers|slow paw wave with a tiny head tilt|small hop with soft fur motion}".
57
+
58
+ ${VIDEO_PROMPT_LENGTH_LIMITS_GUIDANCE}`,
56
59
  },
57
60
  expandPrompt: {
58
61
  type: "boolean",
@@ -1 +1 @@
1
- {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../../src/tools/definitions/animate-photo/definition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../../src/tools/definitions/animate-photo/definition.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { LITERAL_PROMPT_OVERRIDE } from '../../../contracts/promptOverrideMarker.js';
2
+ import { MUSIC_TEXT_LENGTH_LIMITS_GUIDANCE } from '../../../contracts/promptLimits.js';
2
3
  export const definition = {
3
4
  type: 'function',
4
5
  function: {
@@ -28,7 +29,9 @@ Include:
28
29
 
29
30
  MODEL "music3": MiniMax Music 3 wants a structured caption instead of a tag list — write the prompt as one paragraph in three labeled parts: "Global Metadata: genre, BPM, key, emotional progression across the song, production profile. Vocal Details: gender, timbre, delivery, harmonies (or: none, purely instrumental). Arrangement: primary and secondary instruments, groove, bass, percussion, textures, how sections evolve." The more specific, the closer the result. Fold tempo and key into this caption — music3 ignores the bpm/keyscale/timesig args.
30
31
 
31
- BATCH VARIATIONS: When numberOfVariations > 1, use Dynamic Prompt syntax to vary ONE dimension across separate tracks. This is one Sogni project with multiple jobs, so prefer it when all tracks share the same duration, BPM, key, lyrics, model, and generation parameters and only prompt text varies. Lock in any genre/mood/instruments the user specified, vary the rest. Example: "{lo-fi hip hop beat with muted keys|jazz piano trio with brushed drums|ambient electronic with soft pads} with warm reverb and vinyl texture".`,
32
+ BATCH VARIATIONS: When numberOfVariations > 1, use Dynamic Prompt syntax to vary ONE dimension across separate tracks. This is one Sogni project with multiple jobs, so prefer it when all tracks share the same duration, BPM, key, lyrics, model, and generation parameters and only prompt text varies. Lock in any genre/mood/instruments the user specified, vary the rest. Example: "{lo-fi hip hop beat with muted keys|jazz piano trio with brushed drums|ambient electronic with soft pads} with warm reverb and vinyl texture".
33
+
34
+ ${MUSIC_TEXT_LENGTH_LIMITS_GUIDANCE}`,
32
35
  },
33
36
  duration: {
34
37
  type: 'number',
@@ -48,7 +51,7 @@ BATCH VARIATIONS: When numberOfVariations > 1, use Dynamic Prompt syntax to vary
48
51
  },
49
52
  lyrics: {
50
53
  type: 'string',
51
- description: 'Song lyrics. Optional — omit for instrumental music. Format: write lyrics naturally with line breaks. The model will attempt to sing these lyrics with the generated music. Works best with clear, rhythmic phrasing that matches the BPM. For model "music3", structure lyrics with plain section tags on their own lines ([Intro], [Verse], [Pre-Chorus], [Chorus], [Post-Chorus], [Bridge], [Solo], [Outro]) — no modifiers inside brackets, and write enough sections to fill the requested duration since the composer ends the song when the lyric sheet runs out. For instrumental music3 tracks, pass ONLY a skeleton of those tags one per line (e.g. [Intro] [Verse] [Chorus] [Verse] [Solo] [Chorus] [Outro]) — bare instrumental pieces end early without it.',
54
+ description: 'Song lyrics. Optional — omit for instrumental music. Format: write lyrics naturally with line breaks. The model will attempt to sing these lyrics with the generated music. Works best with clear, rhythmic phrasing that matches the BPM. For model "music3", structure lyrics with plain section tags on their own lines ([Intro], [Verse], [Pre-Chorus], [Chorus], [Post-Chorus], [Bridge], [Solo], [Outro]) — no modifiers inside brackets, and write enough sections to fill the requested duration since the composer ends the song when the lyric sheet runs out. For instrumental music3 tracks, pass ONLY a skeleton of those tags one per line (e.g. [Intro] [Verse] [Chorus] [Verse] [Solo] [Chorus] [Outro]) — bare instrumental pieces end early without it. Length: ACE-Step (turbo, sft) accepts at most 4,096 characters of lyrics, tags and line breaks included; music3 reads at most 5,000 tokens of prompt and lyrics together. Over-limit lyrics are refused, never cut.',
52
55
  },
53
56
  model: {
54
57
  type: 'string',