File size: 1,230 Bytes
d911efa | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | """Prompt-Oberfläche für alle drei Modelle: das SFT3-Nutzer-Template (prompt_lib2.USER_INST_TEMPLATE, byte-gleich),
Instruction = Hausformat-Prompt der Leiter (GENERAL + SCRIPT), Text = SCRIPT-Teil, Tokens = Frames, Referenz = <|audio|> oder None."""
AUDIO_PLACEHOLDER = "<|audio|>"
USER_INST_TEMPLATE = """<user_inst>
- Reference(s):
{reference}
- Instruction:
{instruction}
- Tokens:
{tokens}
- Quality:
{quality}
- Sound Event:
{sound_event}
- Ambient Sound:
{ambient_sound}
- Language:
{language}
- Text:
{text}
</user_inst>"""
def lang_name(lang):
return "German" if str(lang or "en").lower().startswith("de") else "English"
def split_prompt(prompt):
if 'SCRIPT:\n' in prompt:
return prompt, prompt.split('SCRIPT:\n', 1)[1].strip()
return prompt, prompt.strip()
def user_content(meta, use_ref, frames=None):
instruction, script = split_prompt(meta['prompt'])
return USER_INST_TEMPLATE.format(
reference=AUDIO_PLACEHOLDER if use_ref else "None", instruction=instruction.strip() or "None",
tokens=int(frames if frames is not None else meta['frames']), quality="None", sound_event="None",
ambient_sound="None", language=lang_name(meta['lang']), text=script or "None")
|