Files
8460s-image-rd/scripts/__pycache__/round_pipeline.cpython-313.pyc

66 lines
11 KiB
Plaintext
Raw Normal View History

<EFBFBD>
<00>] j<><00><00><><00>SrSSKrSSKrSSKrSSKrSSKJr SSKJ r \"S5r
Sr SSSS .r 1S
kr S rS rS rSrSrSSjrSr\S:Xa \"S5 gg)u<>
meeting-103 v2.1 라운드 파이프라인
- 결과 회수 (HTTP /view)
- 썸네일 생성 (1MB 미만)
- 자동 평가 (black/pastel/aspect)
- 자산 라이브러리 7종 누적
<EFBFBD>N)<01>Path)<01>Imagez%/mnt/ssd1/dev/projects/8460s-image-rdzhttp://100.123.6.62:8188<38>g@)<03>byeolyi<79>hanja<6A>hanok> <00> illustrious<75>pony-v6<76>flux-dev<65> flux-fill<6C>
flux-redux<75>
pulid-flux<75> flux-kontext<78> flux-schnell<6C>qwen-edit-2511<31>qwen-image-2.0<EFBFBD>qwen-image-2512<31>qwen-image-layered<65>lightning-lora-qwenc<00><><00>[SUS3n[RRUSS9nUR 5sSSS5 $!,(df  g=f)u9ComfyUI HTTP /view 으로 PNG 다운로드 (bytes 반환)z/view?filename=z &type=output<75><00><01>timeoutN)<05>COMFY<46>urllib<69>request<73>urlopen<65>read)<03>filename<6D>url<72>rs <20>?/mnt/ssd1/dev/projects/8460s-image-rd/scripts/round_pipeline.py<70> http_viewr#sB<00><00> <12>G<EFBFBD>?<3F>8<EFBFBD>*<2A>L<EFBFBD>
9<EFBFBD>C<EFBFBD> <0F><1E><1E> <1F> <1F><03>R<EFBFBD> <1F> 0<>A<EFBFBD><10>v<EFBFBD>v<EFBFBD>x<EFBFBD>
1<EFBFBD> 0<> 0<>s <00>A<03>
Ac <00><><00>[SU3n[RRUSS9n[R
"U5nSSS5 W(d/$[ UR55SnURS05nUR5VVVs/sH#upgURS/5Ho<>SPM M% snnn$!,(df  N<>=fs snnnf) u%prompt_id → 출력 파일명 목록z /history/<2F>
rNr<00>outputs<74>imagesr)
rrrr<00>json<6F>load<61>list<73>values<65>get<65>items) <09> prompt_idr r!<00>data<74>info<66>outs<74>n<>i<>fs r"<00>history_outputsr5 s<><00><00> <12>G<EFBFBD>9<EFBFBD>Y<EFBFBD>K<EFBFBD>
(<28>C<EFBFBD> <0F><1E><1E> <1F> <1F><03>R<EFBFBD> <1F> 0<>A<EFBFBD><13>y<EFBFBD>y<EFBFBD><11>|<7C><04>
1<EFBFBD> <0F><11> <09> <0F><04> <0B> <0B> <0A> <1E>q<EFBFBD> !<21>D<EFBFBD> <0F>8<EFBFBD>8<EFBFBD>I<EFBFBD>r<EFBFBD> "<22>D<EFBFBD>&*<2A>j<EFBFBD>j<EFBFBD>l<EFBFBD> P<>l<EFBFBD>d<EFBFBD>a<EFBFBD>A<EFBFBD>E<EFBFBD>E<EFBFBD>(<28>B<EFBFBD><O<>q<EFBFBD>j<EFBFBD>M<EFBFBD><O<>M<EFBFBD>l<EFBFBD> P<>P<>
1<EFBFBD> 0<><30> Qs<00>C<03>*C<08>
Cc<00><><00>[S- S- SU3- nURSSS9 /nUGH<>nURS5(a[US5O/nU(aUSOURS5nU(dUR 0UES S
0E5 Mg[ U5nX$S S 3- nUR U5 [U5n [R"U5RS 5n
U
R5n U RS5 X$S S3- n U RU SSS9 U R5RS:dS5eU
R up<>[#U
R%55n[U5n['SU55n['SU55nUR 0UEU S:<3A>aSOSX<>U[)X<>- S5[)UU- S-S5[)UU- S-S5U R5RS-S.E5 GM<> U$![*aFnUR 0UES[-U5R.3[1U5S S!S".E5 S nAGM3S nAff=f)#zHcombos = [{"id": "1-1", "prompt_id": "...", "expected_filename": "..."}]<5D>results<74> meeting-103<30>roundT)<02>parents<74>exist_okr.r<00>expected_filename<6D>status<75> no_filename<6D>idz.png<6E>RGB)iiz
_thumb.png<6E>PNG)<01>optimizei@Bzthumbnail >1MBc3<00>Z# <00>UH!upo1S:dM US:dMUS:dMSv<00> M# g7f)<03><00>N<><00><04>.0r!<00>g<>bs r"<00> <genexpr><3E>&fetch_round_results.<locals>.<genexpr>Gs+<00><00><00>U<>f<EFBFBD>7<EFBFBD>1<EFBFBD><11>B<EFBFBD><06>Q<EFBFBD>1<EFBFBD>r<EFBFBD>6<EFBFBD>Q<EFBFBD>a<EFBFBD>RT<52>f<EFBFBD>Q<EFBFBD>Q<EFBFBD>f<EFBFBD>s<00> +<01>+<01>+<01> +c3<00>r# <00>UH-upo1S:<3A>aUS:<3A>dUS:<3A>dMUS:<3A>dM!US:<3A>dM)Sv<00> M/ g7f)<04><><00><>rENrFrGs r"rKrLHs=<00><00><00>o<>&<26>w<EFBFBD>q<EFBFBD>Q<EFBFBD><13>W<EFBFBD><11>S<EFBFBD><17>a<EFBFBD>RU<52>g<EFBFBD><11>Z[<5B>^a<>Za<5A><11>fg<66>jm<6A>fm<66><11><11>&<26>s<00>7<01>7<01>7<01> 7iP<69><00>OK<4F> FAILED_SMALL<4C><00>d<00>rEi)r=<00>
size_bytes<EFBFBD>width<74>height<68>aspect<63> black_pct<63>
pastel_pct<EFBFBD> thumb_size_kbzERROR:N<>x)r=<00>error)<19> REPO_ROOT<4F>mkdirr,r5<00>appendr#<00> write_bytes<65>lenr<00>open<65>convert<72>copy<70> thumbnail<69>save<76>stat<61>st_size<7A>sizer*<00>getdata<74>sumr9<00> Exception<6F>type<70>__name__<5F>str)<14>round_n<5F>combos<6F> round_dirr7<00>c<>fns<6E>fnr/<00>out_pngrj<00>img<6D>thumb<6D>
thumb_path<EFBFBD>w<>h<>pixels<6C>total<61>
near_black<EFBFBD>pastel<65>es r"<00>fetch_round_resultsr<73>,sR<00><00><19>I<EFBFBD>%<25> <0A>5<>%<25><07>y<EFBFBD>8I<38>I<>I<EFBFBD> <0A>O<EFBFBD>O<EFBFBD>D<EFBFBD>4<EFBFBD>O<EFBFBD>0<><10>G<EFBFBD> <13><01>12<31><15><15>{<7B>1C<31>1C<31>o<EFBFBD>a<EFBFBD> <0B>n<EFBFBD>-<2D><12><03><1A>S<EFBFBD><11>V<EFBFBD><01><05><05>&9<> :<3A><02><11> <13>N<EFBFBD>N<EFBFBD>9<>a<EFBFBD>9<><18>=<3D>9<> :<3A> <14> `<01><1C>R<EFBFBD>=<3D>D<EFBFBD><1F>t<EFBFBD>W<EFBFBD>I<EFBFBD>T<EFBFBD>"2<>2<>G<EFBFBD> <13> <1F> <1F><04> %<25><16>t<EFBFBD>9<EFBFBD>D<EFBFBD><17>*<2A>*<2A>W<EFBFBD>%<25>-<2D>-<2D>e<EFBFBD>4<>C<EFBFBD><17>H<EFBFBD>H<EFBFBD>J<EFBFBD>E<EFBFBD> <11>O<EFBFBD>O<EFBFBD>J<EFBFBD> '<27>"<22>$<24><07>y<EFBFBD>
<EFBFBD>%;<3B>;<3B>J<EFBFBD> <11>J<EFBFBD>J<EFBFBD>z<EFBFBD>5<EFBFBD>4<EFBFBD>J<EFBFBD> 8<><1D>?<3F>?<3F>$<24>,<2C>,<2C>y<EFBFBD>8<> J<>:J<> J<>8<><16>8<EFBFBD>8<EFBFBD>D<EFBFBD>A<EFBFBD><19>#<23>+<2B>+<2B>-<2D>(<28>F<EFBFBD><17><06>K<EFBFBD>E<EFBFBD><1C>U<>f<EFBFBD>U<>U<>J<EFBFBD><18>o<>&<26>o<>o<>F<EFBFBD> <13>N<EFBFBD>N<EFBFBD><0E><13><0E>'+<2B>e<EFBFBD>|<7C>t<EFBFBD><1E>"<22>!<21><1F><01><05>q<EFBFBD>/<2F>"<22>:<3A><05>#5<><03>#;<3B>Q<EFBFBD>?<3F>#<23>F<EFBFBD>U<EFBFBD>N<EFBFBD>S<EFBFBD>$8<>!<21><<3C>!+<2B><1F><1F>!2<>!:<3A>!:<3A>d<EFBFBD>!B<> <0E> <0F>1<14>D <13>N<EFBFBD><4E><19> `<01> <13>N<EFBFBD>N<EFBFBD>^<5E>a<EFBFBD>^<5E>V<EFBFBD>D<EFBFBD><11>G<EFBFBD>4D<34>4D<34>3E<33>+F<>QT<51>UV<55>QW<51>X\<5C>Y\<5C>Q]<5D>^<5E> _<> _<><5F> `<01>s<00>E9H<02>
I<05>:I<05>Ic <00><><00>[S- S- n[R"UR55nUGHnUR S5S:waMUR S/5H<>nUSR USUSVs0sHof/_M sn0/S S
.5n[ US U5US 'UR S 05nUR5H+upiU cM
XgS ;dMUS URU 5 M- US R5H5upjU
(dM[[U
5[U
5- S5USU'M7 M<> GM UR[R"USSS95 U$s snf)u;자산 라이브러리 1 — 모델 차원별 점수 누적<EB8884>assets-libraryzmodels-performance.jsonr=rP<00> models_used<65>modelsr<00> _dimensions<6E>)<05> rounds_used<65>
dimensions<EFBFBD>
avg_scores<EFBFBD>best_combinations<6E>verdictr<74><00>scoresr<73>rTr<>F<><02>indent<6E> ensure_ascii)r^r(<00>loads<64> read_textr,<00>
setdefault<EFBFBD>maxr-r`r9rlrb<00>
write_text<EFBFBD>dumps) rq<00> combo_results<74>pathr/rt<00>model<65>dim<69>mdatar<61><00>score<72>arrs r"<00>update_models_performancer<65>Vsf<00><00> <14>'<27> '<27>*C<> C<>D<EFBFBD> <0F>:<3A>:<3A>d<EFBFBD>n<EFBFBD>n<EFBFBD>&<26> '<27>D<EFBFBD> <1A><01> <0C>5<EFBFBD>5<EFBFBD><18>?<3F>d<EFBFBD> "<22> <14><16>U<EFBFBD>U<EFBFBD>=<3D>"<22>-<2D>E<EFBFBD><18><18>N<EFBFBD>-<2D>-<2D>e<EFBFBD> <20>26<32>}<7D>2E<32>F<>2E<32>3<EFBFBD>B<EFBFBD>w<EFBFBD>2E<32>F<> <20>r<EFBFBD>b<EFBFBD>6<0E><0F>E<EFBFBD>
$'<27>u<EFBFBD>]<5D>';<3B>W<EFBFBD>#E<>E<EFBFBD>-<2D> <20><16>U<EFBFBD>U<EFBFBD>8<EFBFBD>R<EFBFBD>(<28>F<EFBFBD>$<24>l<EFBFBD>l<EFBFBD>n<EFBFBD>
<EFBFBD><03><18>$<24><13>l<EFBFBD>0C<30>)C<><19>,<2C>'<27><03>,<2C>3<>3<>E<EFBFBD>:<3A>-<2D>"<22>,<2C>/<2F>5<>5<>7<><08><03><16>3<EFBFBD>/4<>S<EFBFBD><13>X<EFBFBD><03>C<EFBFBD><08>5H<35>!<21>/L<>E<EFBFBD>,<2C>'<27><03>,<2C>8<>.<2E><1B>" <09>O<EFBFBD>O<EFBFBD>D<EFBFBD>J<EFBFBD>J<EFBFBD>t<EFBFBD>A<EFBFBD>E<EFBFBD>B<>C<> <0F>K<EFBFBD><4B>Gs<00>: E1c<00>>^ <0B>URS05m T (dg[U 4Sj[R555(aSnO![ T R 55S:<3A>aSnOg[ T T RS9nURS5=(d S /S
nUS US US S US3n[ S- S- U- nUR[R"USSS95 [ S- S- S- n[R"UR55n XcUT X%S.n
U RU/5RU
5 [U RS/55[U RS/55-U S'UR[R"U SSS95 U$)u?자산 라이브러리 2 — winner/partial 워크플로 보존r<ECA1B4>Nc3<00>R># <00>UHupTRUS5U:<3A>v<00> M g7f)rN<>r,)rH<00>d<>tr<74>s <20>r"rK<00>+save_workflow_to_library.<locals>.<genexpr>ts%<00><><00><00>
@<40>-?<3F>T<EFBFBD>Q<EFBFBD>6<EFBFBD>:<3A>:<3A>a<EFBFBD><11> <1B>q<EFBFBD> <20>-?<3F>s<00>$'<01>winner<65><00>partial)<01>keyr<79><00>unknownrz-R<>-r?z.jsonr<6E><00> workflowsrTFr<46>z _index.json)<06>name<6D>category<72>best_dimensionr<6E>r9r<><00>count)r,<00>all<6C>
THRESHOLDSr-r<>r+r^r<>r(r<>r<>r<>r<>r`rb) <0C>combo<62> workflow_jsonrqr<><00>best_dimr<6D>r<>r<><00>idx_path<74>idx<64>entryr<79>s @r"<00>save_workflow_to_libraryr<79>osr<00><><00> <12>Y<EFBFBD>Y<EFBFBD>x<EFBFBD><12> $<24>F<EFBFBD> <11><13>
<EFBFBD>
@<40>Z<EFBFBD>-=<3D>-=<3D>-?<3F>
@<40>@<40>@<40><1B><08> <0C>V<EFBFBD>]<5D>]<5D>_<EFBFBD> <1D><11> "<22><1C><08><13><12>6<EFBFBD>v<EFBFBD>z<EFBFBD>z<EFBFBD>*<2A>H<EFBFBD> <12>Y<EFBFBD>Y<EFBFBD>}<7D> %<25> 4<>)<29><1B>a<EFBFBD> 8<>E<EFBFBD><16>Z<EFBFBD>r<EFBFBD>'<27><19>!<21>E<EFBFBD>$<24>K<EFBFBD>=<3D><01>%<25><17><05> ><3E>D<EFBFBD> <14>'<27> '<27>+<2B> 5<><04> <<3C>D<EFBFBD><08>O<EFBFBD>O<EFBFBD>D<EFBFBD>J<EFBFBD>J<EFBFBD>}<7D>Q<EFBFBD>U<EFBFBD>K<>L<><18>+<2B>+<2B>k<EFBFBD>9<>M<EFBFBD>I<>H<EFBFBD>
<0E>*<2A>*<2A>X<EFBFBD>'<27>'<27>)<29>
*<2A>C<EFBFBD><19>8<EFBFBD><1D><07> A<01>E<EFBFBD><07>N<EFBFBD>N<EFBFBD>8<EFBFBD>R<EFBFBD> <20>'<27>'<27><05>.<2E><16>s<EFBFBD>w<EFBFBD>w<EFBFBD>x<EFBFBD><12>,<2C>-<2D><03>C<EFBFBD>G<EFBFBD>G<EFBFBD>I<EFBFBD>r<EFBFBD>4J<34>0K<30>K<>C<EFBFBD><07>L<EFBFBD> <0C><17><17><04>
<EFBFBD>
<EFBFBD>3<EFBFBD>q<EFBFBD>u<EFBFBD>E<>F<> <0F>K<EFBFBD>c<00><><00>[S- S- SU3- S- nU[S5RR5R 5UU=(d 0S.nUR [ R"USSS 95 U$)
u/라운드 메타 JSON 저장 (그리드 보조)r7r8r9z meta.json<6F>datetime)r9<00> captured_atrr<00>learningrTFr<46>)r^<00>
__import__r<EFBFBD><00>now<6F> isoformatr<74>r(r<>)rqr7r<>r<><00>payloads r"<00>save_results_metar<61><00>sv<00><00> <14>y<EFBFBD> <20>=<3D> 0<>U<EFBFBD>7<EFBFBD>)<29>3D<33> D<>{<7B> R<>D<EFBFBD><18>!<21>*<2A>-<2D>6<>6<>:<3A>:<3A><<3C>F<>F<>H<><19><1C>N<EFBFBD><02> <06>G<EFBFBD>  <09>O<EFBFBD>O<EFBFBD>D<EFBFBD>J<EFBFBD>J<EFBFBD>w<EFBFBD>q<EFBFBD>u<EFBFBD>E<>F<> <0F>Kr<4B>c<00>.<00>/n/nUH<>nURS5S:wa(URUSURS5S.5 M@URSS5S:<3A>aURUSSUSS .5 MsURUSURS
5URS 5S .5 M<> [UVs/sHo3RS5S:XdMUPM snS SS9n[U5[U5U(a USSSS.$SSS.$s snf)u#라운드 학습 추출 (RAG-style)r=rPr?)r?<00>reasonrYrr<>u
검정 5%+)r?r<>rYrZrU)r?rZrjc<00>&<00>URSS5$)NrZrr<>)<01>xs r"<00><lambda><3E>"extract_learning.<locals>.<lambda><3E>s<00><00><01><05><05>l<EFBFBD>A<EFBFBD> 6r<36>T)r<><00>reverseNz&auto-determine based on round learning)<04> passed_count<6E> failed_count<6E> best_pastel<65>next_round_hint)r,r`<00>sortedrb)r7<00>passed<65>failedr!<00>bests r"<00>extract_learningr<67><00>s<00><00> <0F>F<EFBFBD> <0F>F<EFBFBD> <14><01> <0C>5<EFBFBD>5<EFBFBD><18>?<3F>d<EFBFBD> "<22> <12>M<EFBFBD>M<EFBFBD><11>4<EFBFBD><17>A<EFBFBD>E<EFBFBD>E<EFBFBD>(<28>O<EFBFBD>D<> E<> <14> <0C>5<EFBFBD>5<EFBFBD><1B>a<EFBFBD> <20>1<EFBFBD> $<24> <12>M<EFBFBD>M<EFBFBD><11>4<EFBFBD><17>L<EFBFBD>q<EFBFBD>Q\<5C>~<7E>^<5E> _<> <12>M<EFBFBD>M<EFBFBD><11>4<EFBFBD><17><01><05><05>l<EFBFBD>8K<38>UV<55>UZ<55>UZ<55>[g<>Uh<55>i<> j<><15> <12>g<EFBFBD>A<>g<EFBFBD><11><15><15>x<EFBFBD><1F>D<EFBFBD>)@<40>1<EFBFBD>g<EFBFBD>A<>6<><04> F<01>D<EFBFBD><1C>F<EFBFBD> <0B><1B>F<EFBFBD> <0B>(,<2C>t<EFBFBD>A<EFBFBD>w<EFBFBD>t<EFBFBD>}<7D>C<>  <06><06>37<33>C<>  <06><06><>Bs <00>=D<08>D<08>__main__u8round_pipeline.py — 라이브러리, import 후 사용)N)<17>__doc__r(<00>os<6F>sys<79>urllib.requestr<00>pathlibr<00>PILrr^rr<><00> PROTECTEDr#r5r<>r<>r<>r<>r<>ro<00>printrFr<>r"<00><module>r<>s<00><01><04> <0C> <09>
<EFBFBD><15><18><15> <10>8<> 9<> <09>"<22><05><1A>S<EFBFBD>3<EFBFBD> 7<>
<EFBFBD> L<01> <09>
<18> Q<01>'<13>T<10>2<10>6
<10><06>, <0C>z<EFBFBD><19> <09>
D<EFBFBD>E<>r<>