Ë
    EàÆjÏ  ã                   ó\  — d Z ddlZddlZddlZddlZddlZddlmZ ddlmZ  ee	«      j                  «       j                  j                  Zej                  j                  d e ee	«      j                  «       j                  «      «       ddlmZ edz  dz  ZdZd	„ Zed
k(  r e«        yy)a¨  
Regenera UNA imagen con un prompt literal, sin pasar por los bloques ni por el
ensamblador. Para cuando tu revisas 'REVISAR PROMPT' y corriges un prompt a mano.

    python Engine/regen_literal.py --out "explicit/REVISAR PROMPT/02_b09_Raiden_shogun_explicit_v1.png" --prompt-file prompts.txt
    python Engine/regen_literal.py --out ... --prompt "texto aqui"

El negative sale de Config/master_prompt.yaml (el de siempre).
é    N)Údatetime)ÚPath)ÚPromptBuilderÚOutputÚtest_blockszhttp://127.0.0.1:7860c                  óÊ  — t        j                  d¬«      } | j                  ddd¬«       | j                  dd¬	«       | j                  d
d¬	«       | j                  dt        d¬«       | j                  dt        d¬«       | j                  dt        d¬«       | j                  dt        d¬«       | j	                  «       }|j
                  r|j
                  }nK|j                  r4t        |j                  «      j                  d¬«      j                  «       }nt        d«      ‚t        t        t        «      «      }|j                  }t        |j                   z  }|j"                  j%                  dd¬«       dd l}|||j(                  |j*                  |j,                  dddd|j.                  ddœ}t1        d«       	 |j3                  t4        › d �d!¬"«      }t1        d#|j7                  «       j3                  d$d%«      › �«       t;        j:                  «       }
|j=                  t4        › d(�|d)¬*«      }|j?                  «        |j7                  «       }|jA                  tC        jD                  |d+   d   «      «       	 t7        jF                  |j3                  d,d-«      «      j3                  d.d%«      }tI        jJ                  «       jM                  d/«      }|jO                  d0|› d1�«      }|jQ                  t7        jR                  |jT                  t        |jW                  t        «      «      ||j,                  ddd|j(                  › d2|j*                  › �||d3œ
d4d¬5«      d¬«       t1        d6t;        j:                  «       |
z
  d7›d8|› d9|› �«       t1        d6|jT                  › d:�«       y # t8        $ r}	t1        d&|	› d'�«       Y d }	~	�ŒÆd }	~	ww xY w# t8        $ r d%}Y �Œ-w xY w);NzGenera con un prompt literal)Údescriptionz--outTz#ruta relativa a Output/test_blocks/)ÚrequiredÚhelpz--promptzel prompt tal cual)r   z--prompt-filezlee el prompt de un .txtz--seedéÿÿÿÿ)ÚtypeÚdefaultz--stepsé   z--widthi@  z--heightiÀ  zutf-8)Úencodingz"[!] falta --prompt o --prompt-file)ÚparentsÚexist_okr   g      @zDPM++ 2M Karrasé   é   )ÚpromptÚnegative_promptÚwidthÚheightÚstepsÚ	cfg_scaleÚsampler_nameÚ
batch_sizeÚn_iterÚseedÚ	clip_skipz[-] Forge ...z/sdapi/v1/optionsé   )Útimeoutz[-] checkpoint: Úsd_model_checkpointÚ?z[!] Forge NO responde (Ú)z/sdapi/v1/txt2imgi,  )Újsonr!   ÚimagesÚinfoz{}r   z%Y%m%d_%H%M%SÚregen_z.jsonÚx)
ÚfileÚpathr   r   r   Úsamplerr   Úsizer   r   F)Úensure_asciiÚindentz[OK] z.0fzs seed=z -> z (prompt exacto + parametros)),ÚargparseÚArgumentParserÚadd_argumentÚintÚ
parse_argsr   Úprompt_filer   Ú	read_textÚstripÚ
SystemExitr   ÚstrÚBASE_DIRr   ÚTEST_BLOCKSÚoutÚparentÚmkdirÚrequestsr   r   r   r   ÚprintÚgetÚFORGEr%   Ú	ExceptionÚtimeÚpostÚraise_for_statusÚwrite_bytesÚbase64Ú	b64decodeÚloadsr   ÚnowÚstrftimeÚ	with_nameÚ
write_textÚdumpsÚnameÚrelative_to)ÚpÚargsÚposÚBÚnegr<   r?   ÚpayloadÚrÚeÚt0ÚrespÚdatar   ÚstampÚmans                   ú6C:\Users\Usuario\Downloads\NEW\Engine\regen_literal.pyÚmainr`      sK  € Ü×ÑÐ,JÔK€AØ‡N�N�7 TÐ0U€NÔVØ‡N�N�:Ð$8€NÔ9Ø‡N�N�?Ð)C€NÔDØ‡N�N�8¤#¨r€NÔ2Ø‡N�N�9¤3°€NÔ3Ø‡N�N�9¤3°€NÔ4Ø‡N�N�:¤C°€NÔ6Ø�<‰<‹>€Dà‡{‚{Ø�k‰k‰Ø	×	Ò	Ü�4×#Ñ#Ó$×.Ñ.¸Ð.Ó@×FÑFÓH‰äÐ=Ó>Ð>ä”cœ(“mÓ$€AØ
×
Ñ
€Cä
˜Ÿ™Ñ
 €CØ‡J�J×Ñ˜T¨DÐÔ1ãà¨#Ø—‘ t§{¡{¸T¿Z¹ZØÐ*;Ø 1¨d¯i©iÀañ	€Gô 
ˆMÔð.Ø�L‰LœE˜7Ð"3Ð4¸bˆLÓAˆÜÐ  §¡£§¡Ð.CÀCÓ!HÐ IÐJÔKô 
�‰‹€BØ�=‰=œE˜7Ð"3Ð4¸7ÈCˆ=ÓP€DØ×ÑÔØ�9‰9‹;€DØ‡O�O”F×$Ñ$ T¨(¡^°AÑ%6Ó7Ô8ðÜ�z‰z˜$Ÿ(™( 6¨4Ó0Ó1×5Ñ5°f¸cÓBˆô
 �L‰L‹N×#Ñ# OÓ4€EØ
�-‰-˜&   uÐ-Ó
.€CØ‡N�N”4—:‘:Ø—‘¤# c§o¡o´hÓ&?Ó"@Ø˜tŸz™z¸Ø$°1Ø—:‘:�,˜a §¡˜}Ð-Ø¨#ñð  !ô%ð 07ð ô 8ô 
ˆE”$—)‘)“+˜b‘. Ð% W¨T¨F°$°s°eÐ
<Ô=Ü	ˆE�#—(‘(�Ð8Ð
9Õ:øô3 ò .ÜÐ'¨ s¨!Ð,×-Ò-ûð.ûô ò Ø‹ðús+   Æ?AN- É?5O Î-	OÎ6OÏOÏO"Ï!O"Ú__main__)Ú__doc__r0   rH   r%   ÚsysrD   r   Úpathlibr   Ú__file__Úresolver=   r:   r+   Úinsertr9   Úprompt_builderr   r;   rB   r`   Ú__name__© ó    r_   Ú<module>rl      sš   ðñó Û Û Û 
Û Ý Ý á�‹>×!Ñ!Ó#×*Ñ*×1Ñ1€Ø ‡�‡��‘3‘t˜H“~×-Ñ-Ó/×6Ñ6Ó7Ô 8Ý (à˜Ñ! MÑ1€Ø€ò<;ð~ ˆzÒÙ…Fð rk   