From c517bf414edcc7aeae0f22e4e8ffdcde72aa8661 Mon Sep 17 00:00:00 2001 From: Umesh Sharma <150319020+A-jmesh@users.noreply.github.com> Date: Sat, 27 Apr 2024 01:27:12 +0530 Subject: [PATCH 1/4] Issue #53 is solved --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 414a2dfb..05c92698 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ rich python-dotenv loguru openai -crewai[tool] +crewai[tools] google.generativeai mistralai tenacity From 8ac992f2dfb2b52d022b51bba6451acdf60cd693 Mon Sep 17 00:00:00 2001 From: Umesh Sharma <150319020+A-jmesh@users.noreply.github.com> Date: Sat, 27 Apr 2024 01:28:47 +0530 Subject: [PATCH 2/4] issue #53 is solved From 53e78d56fe044f2fa5d69f24ab87abb321718188 Mon Sep 17 00:00:00 2001 From: Umesh Sharma <150319020+A-jmesh@users.noreply.github.com> Date: Sat, 27 Apr 2024 18:55:15 +0530 Subject: [PATCH 3/4] requiremets.txt is updated --- .env | 7 + .../__pycache__/common_utils.cpython-312.pyc | Bin 0 -> 5366 bytes .../google_serp_search.cpython-312.pyc | Bin 0 -> 12149 bytes .../google_trends_researcher.cpython-312.pyc | Bin 0 -> 25953 bytes .../gpt_competitor_analysis.cpython-312.pyc | Bin 0 -> 1674 bytes .../gpt_online_researcher.cpython-312.pyc | Bin 0 -> 6753 bytes .../gpt_summarize_web_content.cpython-312.pyc | Bin 0 -> 1289 bytes ...or_basic_neural_web_search.cpython-312.pyc | Bin 0 -> 9226 bytes .../tavily_ai_search.cpython-312.pyc | Bin 0 -> 7416 bytes .../you_web_reseacher.cpython-312.pyc | Bin 0 -> 5273 bytes .../ai_agents_crew_writer.cpython-312.pyc | Bin 0 -> 6574 bytes .../ai_news_article_writer.cpython-312.pyc | Bin 0 -> 4209 bytes .../blog_from_google_serp.cpython-312.pyc | Bin 0 -> 2523 bytes .../combine_blog_and_keywords.cpython-312.pyc | Bin 0 -> 1532 bytes .../combine_research_and_blog.cpython-312.pyc | Bin 0 -> 2629 bytes .../keywords_to_blog.cpython-312.pyc | Bin 0 -> 5410 bytes .../long_form_ai_writer.cpython-312.pyc | Bin 0 -> 12132 bytes .../main_audio_to_blog.cpython-312.pyc | Bin 0 -> 3816 bytes ..._blogs_from_youtube_videos.cpython-312.pyc | Bin 0 -> 4550 bytes .../get_blog_category.cpython-312.pyc | Bin 0 -> 1611 bytes .../get_blog_meta_desc.cpython-312.pyc | Bin 0 -> 1575 bytes .../get_blog_metadata.cpython-312.pyc | Bin 0 -> 1470 bytes .../get_blog_title.cpython-312.pyc | Bin 0 -> 3000 bytes .../__pycache__/get_tags.cpython-312.pyc | Bin 0 -> 1464 bytes .../blog_proof_reader.cpython-312.pyc | Bin 0 -> 2690 bytes .../__pycache__/humanize_blog.cpython-312.pyc | Bin 0 -> 3020 bytes .../save_blog_to_file.cpython-312.pyc | Bin 0 -> 5412 bytes .../stt_audio_blog.cpython-312.pyc | Bin 0 -> 9953 bytes .../ai_essay_writer.cpython-312.pyc | Bin 0 -> 7280 bytes .../ai_story_writer.cpython-312.pyc | Bin 0 -> 7452 bytes .../gemini_pro_text.cpython-312.pyc | Bin 0 -> 2436 bytes .../main_text_generation.cpython-312.pyc | Bin 0 -> 4321 bytes .../openai_text_gen.cpython-312.pyc | Bin 0 -> 3908 bytes .../gen_dali3_images.cpython-312.pyc | Bin 0 -> 2530 bytes .../gen_stabl_diff_img.cpython-312.pyc | Bin 0 -> 1884 bytes ...generate_image_from_prompt.cpython-312.pyc | Bin 0 -> 3366 bytes .../__pycache__/save_image.cpython-312.pyc | Bin 0 -> 1902 bytes .../__pycache__/alwrity_utils.cpython-312.pyc | Bin 0 -> 22282 bytes .../read_main_config_params.cpython-312.pyc | Bin 0 -> 3631 bytes ...ntent-Creation-with-Advanced-Technology.md | 64 + .../web_research_report_2024-04-27_12-32-54 | 1187 +++++++++++++++++ 41 files changed, 1258 insertions(+) create mode 100644 .env create mode 100644 lib/ai_web_researcher/__pycache__/common_utils.cpython-312.pyc create mode 100644 lib/ai_web_researcher/__pycache__/google_serp_search.cpython-312.pyc create mode 100644 lib/ai_web_researcher/__pycache__/google_trends_researcher.cpython-312.pyc create mode 100644 lib/ai_web_researcher/__pycache__/gpt_competitor_analysis.cpython-312.pyc create mode 100644 lib/ai_web_researcher/__pycache__/gpt_online_researcher.cpython-312.pyc create mode 100644 lib/ai_web_researcher/__pycache__/gpt_summarize_web_content.cpython-312.pyc create mode 100644 lib/ai_web_researcher/__pycache__/metaphor_basic_neural_web_search.cpython-312.pyc create mode 100644 lib/ai_web_researcher/__pycache__/tavily_ai_search.cpython-312.pyc create mode 100644 lib/ai_web_researcher/__pycache__/you_web_reseacher.cpython-312.pyc create mode 100644 lib/ai_writers/__pycache__/ai_agents_crew_writer.cpython-312.pyc create mode 100644 lib/ai_writers/__pycache__/ai_news_article_writer.cpython-312.pyc create mode 100644 lib/ai_writers/__pycache__/blog_from_google_serp.cpython-312.pyc create mode 100644 lib/ai_writers/__pycache__/combine_blog_and_keywords.cpython-312.pyc create mode 100644 lib/ai_writers/__pycache__/combine_research_and_blog.cpython-312.pyc create mode 100644 lib/ai_writers/__pycache__/keywords_to_blog.cpython-312.pyc create mode 100644 lib/ai_writers/__pycache__/long_form_ai_writer.cpython-312.pyc create mode 100644 lib/ai_writers/speech_to_blog/__pycache__/main_audio_to_blog.cpython-312.pyc create mode 100644 lib/ai_writers/speech_to_blog/__pycache__/write_blogs_from_youtube_videos.cpython-312.pyc create mode 100644 lib/blog_metadata/__pycache__/get_blog_category.cpython-312.pyc create mode 100644 lib/blog_metadata/__pycache__/get_blog_meta_desc.cpython-312.pyc create mode 100644 lib/blog_metadata/__pycache__/get_blog_metadata.cpython-312.pyc create mode 100644 lib/blog_metadata/__pycache__/get_blog_title.cpython-312.pyc create mode 100644 lib/blog_metadata/__pycache__/get_tags.cpython-312.pyc create mode 100644 lib/blog_postprocessing/__pycache__/blog_proof_reader.cpython-312.pyc create mode 100644 lib/blog_postprocessing/__pycache__/humanize_blog.cpython-312.pyc create mode 100644 lib/blog_postprocessing/__pycache__/save_blog_to_file.cpython-312.pyc create mode 100644 lib/gpt_providers/audio_to_text_generation/__pycache__/stt_audio_blog.cpython-312.pyc create mode 100644 lib/gpt_providers/text_generation/__pycache__/ai_essay_writer.cpython-312.pyc create mode 100644 lib/gpt_providers/text_generation/__pycache__/ai_story_writer.cpython-312.pyc create mode 100644 lib/gpt_providers/text_generation/__pycache__/gemini_pro_text.cpython-312.pyc create mode 100644 lib/gpt_providers/text_generation/__pycache__/main_text_generation.cpython-312.pyc create mode 100644 lib/gpt_providers/text_generation/__pycache__/openai_text_gen.cpython-312.pyc create mode 100644 lib/gpt_providers/text_to_image_generation/__pycache__/gen_dali3_images.cpython-312.pyc create mode 100644 lib/gpt_providers/text_to_image_generation/__pycache__/gen_stabl_diff_img.cpython-312.pyc create mode 100644 lib/gpt_providers/text_to_image_generation/__pycache__/main_generate_image_from_prompt.cpython-312.pyc create mode 100644 lib/gpt_providers/text_to_image_generation/__pycache__/save_image.cpython-312.pyc create mode 100644 lib/utils/__pycache__/alwrity_utils.cpython-312.pyc create mode 100644 lib/utils/__pycache__/read_main_config_params.cpython-312.pyc create mode 100644 lib/workspace/2024-04-27-AI-Powered-Writing-Elevate-Your-Content-Creation-with-Advanced-Technology.md create mode 100644 lib/workspace/web_research_report_2024-04-27_12-32-54 diff --git a/.env b/.env new file mode 100644 index 00000000..cbde28dc --- /dev/null +++ b/.env @@ -0,0 +1,7 @@ +# Alwrity will add your environment variables here +METAPHOR_API_KEY=b487e3f0-6389-497c-8890-e899bbac4947 +TAVILY_API_KEY=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 +SERPER_API_KEY=80bb372c18fbeb463dbb3f4aa84194cc96c08f2d +GPT_PROVIDER=gemini +GEMINI_API_KEY=AIzaSyCNREEsbe3vjljgRYRi3yPlJw7VpKWndhc +GPT_PROVIDER=google diff --git a/lib/ai_web_researcher/__pycache__/common_utils.cpython-312.pyc b/lib/ai_web_researcher/__pycache__/common_utils.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..7796187031d766653d467e69985c63ef48d7f207 GIT binary patch literal 5366 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

8gI{N}U$e-nrhBjj!;L8~Y=tlrbVjxEj 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 literal 0 HcmV?d00001 diff --git a/lib/ai_web_researcher/__pycache__/google_trends_researcher.cpython-312.pyc b/lib/ai_web_researcher/__pycache__/google_trends_researcher.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e649939ac1029bd0a429009fb0563cc0a749df0a GIT binary patch literal 25953 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 WUZgE-zsMuJfluujJgY9j`F{Zbbn1`* literal 0 HcmV?d00001 diff --git a/lib/ai_web_researcher/__pycache__/gpt_online_researcher.cpython-312.pyc b/lib/ai_web_researcher/__pycache__/gpt_online_researcher.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..42d0bc413516b2ba5fbf83a610fa038d06b5565e GIT binary patch literal 6753 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 J#7ANFe*+DIw^INB literal 0 HcmV?d00001 diff --git a/lib/ai_web_researcher/__pycache__/gpt_summarize_web_content.cpython-312.pyc b/lib/ai_web_researcher/__pycache__/gpt_summarize_web_content.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4f7125e92dfbe75346a91fa733dd16264d0bb81e GIT binary patch literal 1289 zcmZuwUuzpj5Z}GiollBn*Gf!CTgXBSMzmGIff5wQ5YmPkQYS@iO@u(4bR+q~-R-fr zXW6n8oD!%4g*=rOLQ0=Xi~9lk5ej`Vv=8E%hd^l|ZzfKlxG$ZRbxu+|a67ZJ^Y=G5 zzZMEPf+YTatNo!)$e-$xk}(nXzeM3{;t+>=q^7v$QD3WRlxPIBn`Y|pobOD;iG}t2 zC6$2O9A{4NhuqPf%umJ+R-%X!$8@GV)1RtMp`3NBJG5qP(o*iRdR{5f#PoQl1LBk3 z@}dXp;4N*9*t+wmIpt9w;fnx1AXi1j`Xm|MDXInl*k==noNlUC2 z_qcF-keF>Qd|N)&FdwGNd!FBrupt{A2wF;+k^)PWy}ykIf<^n}J_7YXA81)3DJsX* z*LEiIK=12S@&=JdQQjot>>wjk*vWCgI(k2IpFB8aPYs?ND)(ItRB8IHR0||lbeSd?;%of0Gwgz6< zjy+~aksC=nkQmEGbKyeU+hkGf`?dlp8t0ei=viZ2o}G_s$9W1H-mT9G|sZ+~;^hmZFRZF*t*%ARQ$#fK-)erNu6a(-xyW=;=h{&{%f z)Dxni-kQFbznkAZeQo!8^_O^e?$h6`&qmX;!|cE4ZWIrqS1|4{KS#dGUev#R^}PPG zaZy)W$3qBgx0FqE>~Fk;v4{^bGzIv49TMGkoWzWz!(*8&yo6vm-5?OQ0>A9rZg8|# z6Xke9;|_l$`&b4Mvv?d>i#~T^50=F1cvZU;UBF{cr}`Y-p4K literal 0 HcmV?d00001 diff --git a/lib/ai_web_researcher/__pycache__/metaphor_basic_neural_web_search.cpython-312.pyc b/lib/ai_web_researcher/__pycache__/metaphor_basic_neural_web_search.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..289a2d6be4abb99155a111a882629c66e37f660a GIT binary patch literal 9226 zcmds7Yit`=cD}>mki(a#7xjLOM9C5pOU}lLEz@>3vSrzpWXWsE@tSd#8F5Au}o)#6{NqbF@ zaVL$Rj7z`_v^~NDs}_$*;zZ);K1n<$N-w-lZmE4ca*xS<(~2lYUU+>fEQu-q>ryy^ zZ&UF|NDD_Jz?W-Ja<9vxs`Arf3J)g~m7+>GA?lW?s3P+kXmdzWUI+?NO^lpN*n4|- z;6I?Di9U3m_t83|h?+95SE^bx7UZWiQ3>*zCdx5Qubtz=T2SF5LR1cl=VQ@`7}3JK z^Z+j~Nbsm}S?00E;G8%a3`HZL25W69HiV*b4CY9SDus5F?o|16VlW&D;`h_bLsQd1 zRpgb>OfbePy!>DvmT%H&IUIq4KmP!qEvPW#0qJHu)DYAZF1#V}?@qsj!%;vX9 zp#q3mrt~RC3zV^aQYeX3hh{Z+1e4M76H2ogwaLQf9!EYpF=glAIxK3OHY0Mz4&g#l z80MqbPFhchT3m^!e)53X4K_d5AK}6gRpTQek&8}kEd%$^%a0wJ=s$jB>_o8t_|f3- zq0@=p%{3e>Zdi#%WYEl=gT>(|C6S9nHBJ?^HXoy#qN;AqGwJlSsOk2XcquL(Qk1Bo zxZw?bl+p?}6|XY)dnhPoCk!Wc?K} zw}?_8c`1~nW(%9T$d?2(66htfVbfElq-oY!Y&WQsIgC4GVJ~PrhMqAP>u!3#LZj1-?$)L|F zI8v+)zeBCTS-dB$TWJxTf@`VFkn?-r%U+_}zO|&EA)$Q3h}vO9jwG9O%;G(@=}Neu z6~?MH8VyO-c-y2kSeV<(9cFYn3h&-r;4>S1uv(^Zfy^7;er3AE>c$m`>sB?z=jSHCR-ZgE z!f8=%Y742~WVcU@(r%83}%xsyiZaIS3l!lBOoMAIlq8KSyjfUE?I@AQtJ?v*P?*R1qFvGlN^T`IxBmz(ZpDAP=xD;CU0G zoMGv>e1{!)h7Hr{=XBPf6K%zQMgO40aqx3KH?gV;-uAjV9GQyh^>}H5`56m>D`L12 zs%|@UJ|xDlL!>hzMlao(pCg@#f#as>3^*R(V9+om1!K2fm3K2X$T4f;c}>A4NUtLO z3}+-K&F9n|hJGvvd&{~zF9=x3vg?$nJBrh(!aORHs#77|!56D_Cof6G7ocI(dWA7R zc!Be>6cw8Zyk(3l2P+<9vcYjG&Wdsjn4g26`saWm0GidP+zZgMaAe)YGG%w!vMY{D zj&x1mt;SofboJmWdpO(BzSgiW)37h=tj*RoX6qW(t*CMTBSbegExOmsQC0g|r7u(I zTNutdTnhtPSKUKIF`bLlUDmb8Uzxr%eS^Lv-{9X8-xM=t-cQ+%bsF05*EZf5PWKMp zIkQ?Dc!(;QBh;cJTU)>ATsK*5V^p?f+ggi1)8fyTH(qyNb7ws**`{XD-MaS?GPjm3 zj)Csx?Q2atGfg|wZ2kQTPr9b-{l>p-{p;5BGyQiORx2hRBE|+{`?Jov8~tw$zB!n2 zwl9vXn`qY&>aO?u%gz<=v8#?x%egPCm~p)kkK%DRV(M-1&@a5yZ$mw~A zOu6}SUUH^u4=(pF?@W6Rud+w7tm~_F1{%M5%%Spncy}25U1#N$kxL`##>02$<#@XO z*qU=R;~f18-W*!LdR&RBn}HJ#qrB$2^O`f=`r>lcGLvo|Tq{4EDL;%kq4kM+7#8dD z_JjM;2bPwBF4Koi<%c}x5BJ*!I_Qrq^#iT+N39H|yKILlnU9{SJLFMI?6D0Z z>&Gp1hxS@O-pc^Jwc~IHHo`YM4n?o`47d;}Q;JTRQ;b&dk7tdL7KUqFf(e6+Koj?( z1h5D=7yM&`8(aW@GQpgrljbGnW?pj2@?*tQqnzCN7UKVoq4G>r=y9MC2IGbC^ zwrz$$fNU#<*P=|Ho&RT8PJ({pMYP}*EgX_W_1l2oYjIJTFNME6`jGlwq5&J6613sE z!Hxn}j>hFlQNhtk&M2zb`s2tk4DoBRC-}}mJ`Uj-fM87Hx+kMi33{KJ5doYP+y^+g zB1f@jI1-ZLf(W6i3~so}bxUCtD;|LxR%_IQh&*etFAlzOm^v*M-VJKFTn+Z*WARB4 zHv^ben6>V9fuC>R&b7~p;#qu`A$py`#5~L~zVnfJEV$kGzwZd>w0NFRv>HIpl{f-( zVQq#RfK-8>OE@{eDeeb&(ZDhAnRWN3S<=fkPPkqTQKX^;3-24m8HyZgcjwU;yafYA zdbdDBSn5RA1~+AgD#|>>{h?A{1>6W2;I@JTQh1e|NbG4CQw^|g&%rwO-3hiUyD{~B zT+|VdL+R&-@9aze@RjtbAEm2uYf3lutg^lT>Zrl6Gkj?{-O#`M^m22$Zfw9tZb135+A|N#kAl3dg*xP@Lzcrrr^sll93b6M?eG%s1^3wAIJ}!wgbEA4?J}To~1wNVQ|f}46fNtW7=;!*hYUy*B@-6KWt)v-hfTm4q{*O zQTrxr+A2q5#O6ioDNsv=U^W3ZHbre6&=_%!PP&6_R=ea%S|pi(}NPSHtv ztI&479Mn;bHKqdw3S45msxq|nsaC|Jr5tD&~A4uqN5cgm+ zdsY-Z`T(a3-h(727)mw4 zcAoC(lzTdb37<*%0kn|Qm|(yVsQyu(O~Jl`PDi413ht+~5MxbY`>Bj!W^&fa34Z}U zk_4YscVYFxeBhw!PDn69l1Mxo#3Ha96|2f0@Xe>2 zh%U~Q@+z?2za&6?NqrW`;e*bFcu1xi=g^_G!%UWeurn2i@`%2}` zh2i@(^=mafnVOy~>v>yPZd|8PZSNywsTkN_xnsrxU&$()m#-4NNPwiiTpIr63hYWJQpyD~ZU0-#;Y2I*DaQH)x z%D|?hB2d$iuX%?uGTbTrOus`xb_2mSrSsdg6Sf)N%v&Tsp%z@d%@@?-p=`RQXxP+U zu&K?Ec__GcNjNlu8T2ymVC|N7s3mK`v17EtK}(jnU62idt)II}>*ry!lMPSL;cQ32 zB_wWH$wApNzr!XiUvtagcwMl}!*>;YFL9x4qq^k;iJyHm**VI77>)8G6p#X^VH4}j z1c?=`<0Pj&uiK{}A3GnMR>A_Xm?d#aQ>JkzT=?h*)tH`v;sM@{0M6DKkrzZoCE0#p zmo<`+=OKoV=uXIDLwbHLENC-oqO~LvhD^8tta;ap04AQtO(RvXYe|ldQiCZ1op`Sh z{PbCs2~1Byp}XLNgCqv?BT|C6&Yr7-Q^iAIjNA2cl84W$4MH^fwF8v{WQ@vx2|xAc zP(bF=ReOW|q}{*b+Pg6LZ`C^%j%AOW{#8Zb*3{Kq*ZtT0H_pA4d^7p(OMmt9doO=d zxhGu_SQvuhzO(vjAY0y?t!UOOe7dLYvCZuAE*yfR$k-PzW$MevH3YIK(o}YZglfCeyAP*#9Z7qRuCYTImcSddKT&Zq?fO&wJIuGej{fJ+ z?dNOkc%~A2cvPhw|1Q_z=RIo*cB7;HYdFFVPU!m;~x91pUhQN>XK89HIhd zVWUJY!L(FBBaB(Ig+pX;Ky*=vp;G3^FF_acoplw^6MWV9cq;wwfcOLV1jtAhIAvhH9 zorb}8RcAJm4Tx@uYazq$ zQC=oBxgKA)(Bsfb^nf)k1g*Ly|M3gQHzZ$5(tx=T=4&2KZ83fc%|sy!o{wXc3()%? z;itks27r-%T!+fqR$T21gX<ax1pH=OAhUh|&Jcu%HZnqBdp1*!ky?Mg#gReyc|wf%2ng&ZZS zK5ANIv+mkO_m_7a)!4o2!%0qp49~v*z4yIo&#pCgcZS`K!ycyZiHg6|Tt4^=WZZC; ztsAmzbpu}dBQFEA&oruA^TEDvyTSphPQ#Z@-4cWFn^$#HOwdi?sDhC~x5nWA0N|si zLUxe5uo$sZyDgC=pupRoJns1TRL7nGku6YNW*{sR=SDirk@vVDf^pP{OIsP-PJ`y6%r z26caq>hB@XJ=A;;wSR`(S>#%<{ITl|*F_-hK-%B1FYdhJzvRzWc(U%mZyB1h{ML@B z)?XvXrGcwWE6$cx)cQH9`A;;IK|}Y@zI&+uH>mFm3o=ZQt{bW>FiJ1VGQ$RamUedP828*2FB A)&Kwi literal 0 HcmV?d00001 diff --git a/lib/ai_web_researcher/__pycache__/tavily_ai_search.cpython-312.pyc b/lib/ai_web_researcher/__pycache__/tavily_ai_search.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..65bf1fa5fbf431e9047ffab254fef41565d1de76 GIT binary patch literal 7416 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 LYLHS>AmaZ3r1rgl literal 0 HcmV?d00001 diff --git a/lib/ai_web_researcher/__pycache__/you_web_reseacher.cpython-312.pyc b/lib/ai_web_researcher/__pycache__/you_web_reseacher.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d1bb37614253f5cbe08d4dfec666b00d1ce4a8eb GIT binary patch literal 5273 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 PsblKQ-eN|bkuv`eYUj2} literal 0 HcmV?d00001 diff --git a/lib/ai_writers/__pycache__/ai_news_article_writer.cpython-312.pyc b/lib/ai_writers/__pycache__/ai_news_article_writer.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8c8a1399bc5bdd24d7149aa906c89dbf3888a3ee GIT binary patch literal 4209 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 KO-aMTqW=KNgN021 literal 0 HcmV?d00001 diff --git a/lib/ai_writers/__pycache__/blog_from_google_serp.cpython-312.pyc b/lib/ai_writers/__pycache__/blog_from_google_serp.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4bf5e071c5eccc1ae1ccd3d10f34360413250c9c GIT binary patch literal 2523 zcmaJ@O=ufO6rPnU)y+)Uj-Nqgv<{gG@6UC_?o+xPRm_rB3j zgM&E)5C8q6`agXL{i+u6lZqz$-@xQ+WFk|eXfYhMMJ-q-785WgXwuOabqysD(U${_ zv666n7A+%*fy1Y2MYQFi|L&SeQ~xgYEE%3?$V{7kG~;9!voOy*K#RGyR>;0q$MXfv zPg7=Dgn!YQoup)y(5dxc*ql5UE;lAEPKZ0TUbiXPEUi=9RYTo#Ytm*e$c5({c-YT`QO4~K@zZt29YelOfITobK&exaWKC8q;?~q={3z&@)B8We3!u|B&|`pU zLxXqnNoq48wODld;CIocsXvR(HIzj%P6XOW#QU4cjpQ9Piex(0a~AROP5pr0OnlNC z&D4he7(MA~(U9zqPtA0!TSIq|*|({GrMLUSv8A=pTJkPxX@yMZ(iP@Z0XQrh1Y7nh zaWQihl9&@g3|?zs!!@zhl(-7{z%}Md;!0y%M<|D*r!266?@ZsoWUWcK48Dj2af{oM z@G(4#TQ;S*$=RxH65M7UY{&+7+Bn}L)trnDVMwi!DfC^e{H*mi5w15YmEner{s)7Dix!zg7f zTqWvldEm9eMU=V%pA?EXuze62EE>$C%AV6C;DuoswkrS=2wuqvT<6R=9LoXg=VP7V zRII8>aMchH19NfyCSgs$A_&0{D>#;5-ec}Rh(asXe);43C; zLHcAn0wc-{G?b|T>V#--uP623_ZR4CXt%z#ONB5V$6f>Kw^LBI|Ps2~8` zZOaBsia2U9#XXTIS%a9N768gwl>y1U8n{=?b;~xFTL8Ma9kbJ1NEao1rgQpCSLoUy z#sFbp3?-85iF7VsBQD_pxJs(xHU+ujg0Oia6^fe+9D)FX7jU_vZ^~u5J%sw_Sh%?q%d>r`Ku(sEN6Lig3=juM<#NNclsdtx8lL-8Ezu zLJ)pB#L3UZsrHkgK&VS4Amg{wS4v9@v-4MPEZkWVZ6S#>aek>hJH8O`@DjDFONLzu zSy?QpxGRb)Dj~;K1mVqMv+chdNK}IJ14sNg7&-z!u?nwyXip!0=j`4H`e0&bbYc%_ z7w|4F?wmRY(~q-zr;iQ|+?)CHEK2o1oV!1_bL6uZ`rKY3l{)h3*r})KUykLsGP}bk zw}$_E)qngClz{!r(DuNift{06&&6}HbK>fY%=D|wz}BtpzDIq3@1;QGtx!HZ9T-R7 zXUn6>A4ba~$sb2jFfH`^2`2m`gzf9gzz@M+2#IwEzGB literal 0 HcmV?d00001 diff --git a/lib/ai_writers/__pycache__/combine_blog_and_keywords.cpython-312.pyc b/lib/ai_writers/__pycache__/combine_blog_and_keywords.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9a2b4028c05cb8136a1a6e77111cacb271453515 GIT binary patch literal 1532 zcmZWp&ube;6rR!k@Jf}fSZPS=Ce1)Yg=nfmLVHk+shc`ra2==%CPET_8>O71q!)|8bfg}eY>lb-E?4Q-pqUR-uvGB zc7B_k%^(=!&vzRo6`>d5CK=j9IQ$-jACQGC?4U}#;tGa+%1OCOMZqYAsIqM&7f;rM zi8!%{Vx4G1iQ?_-e^0`lrC91O+JO>lFtT)O#+h-AiUG254^`4VTui?V)$2tZ=nl7S zD!%BiE;_VBou%Dq87{sbZwHIEpwwI1Z7_!p%exNq!llvn>XLB}>|*_Z?7GzVO`8sj zslcdnhYQxHf!^T4HRa0`#Dj2I$8l?t?#P-=y?S_&$dmpLsT6-c-+9lDVvJhSiQ@ZLHiX zk*V)h(q)cAT7q|&MM;mh;XpQt+arb385N?t1&8^P@CLay;ODtDO_`j-k*)vF*wb>>9f{~!!p3(HhXQZ194 zaZrG1QyF%*#XX;rhTtw)Tl=g`){Cl`0SX1_m7O|;u5eF;gbg$*1Q$guP(#0gk@yUB z=!)BtfsuF%6fpHeW=707UcFJSZmzC>dTVo|>i2v}-Rsw?%d78gMx3ZRY^!RrTFel? zT92t%i?RpSO_MLRdO`mGn8Z8;%E9NGFzunSs^>3^v*?XW-*v_azjbkR@yf$8NbjV_ zIb$xncXOQAwEXk4mw(iMKU>&0M!EC*xxb&k_WEBa1?R@xgY5n6)AMUjHlD0JJ@@$^ z#>QxFen0)sSOfL3pNA;lW-p+J>1Cw+wD6Jgs|G?b6QsBwD1a||Y}%q7mrWPc4d!8Q1kY7;UGzm&WbR7CtQxhC_b&&T92YD$FlXLJZDAaMq!V`I_fR@krEJ%cJ>oqg>@k UQ?P!NL3kY>>Su6XEP#`L0l#;x^#A|> literal 0 HcmV?d00001 diff --git a/lib/ai_writers/__pycache__/combine_research_and_blog.cpython-312.pyc b/lib/ai_writers/__pycache__/combine_research_and_blog.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..02c74633b857ddc1d52ab8cd9840361459506440 GIT binary patch literal 2629 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 O!=I$69EE=Zy8jQE&Ut76 literal 0 HcmV?d00001 diff --git a/lib/ai_writers/__pycache__/long_form_ai_writer.cpython-312.pyc b/lib/ai_writers/__pycache__/long_form_ai_writer.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..57f64dab313692cea0dfd87bf49bf026f12677c9 GIT binary patch literal 12132 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 literal 0 HcmV?d00001 diff --git a/lib/ai_writers/speech_to_blog/__pycache__/main_audio_to_blog.cpython-312.pyc b/lib/ai_writers/speech_to_blog/__pycache__/main_audio_to_blog.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2fbd1937a94fbbbe9e701373ec62745fbbf176f2 GIT binary patch literal 3816 zcmb_fU2GHC6~5!~jK||7PDo4~0%5?RZ3Ho;3tMa@bRj>0V4)N$gf}bi;JI-o%y`^8 zH-rQmFA~y1Rf)Xy0U`B~Dt*W!k8HaOEA?gAq#_!ETB+MgyhVkrDtPI+GoE;xsGzFM z!`w6HeD|Dl&pr2?JAZ6$mJvMU@4Lqrf%+@^2p*wMy!a;&zeXC;I0NPUk;`%3cPJNv zF=X&&I2Y!8nUE8J#~Y$4=0r1+i`4m2P6B?|h?;Uv=1>S>d2(}LtTE2l$vPt0kOUMC zO>PP3#;6IJ_`AqF?{mPWq(zMuGoFhBEo(8O)ojbPd32Mp$!yQHdvvqWVJ313k8UwG zo1M8%pyM}CE;+;XwLWL+PW5rFs9_D4XkW+;(_d(&D^jACikL|Zt60S3-0blI17F6* zp{w3d9oXxCRtAa$E~?4z)xsazGzuR1Lti_%J5Q2VFCo37%D%l z(}_I6Yusj!YhtQuDpdj2W~-O6r;%x9z809p;AsYeS$Z)V_OgMia#2Lr5R;(**ci1? z1>He+L-TbMhiH&fsDc9S7|g7Os{C8EiNOre6A!G^_<&m#Xj{Oo2mzNvZ`CU`u(UnU zP!npQ`TCl?l_mm7g$wXw5Q(Z-jZ~#-6s&YM5H+zDsY$gcUCZ8i(U*en-2qN(s)=`y z)?ACiyQL<25Uep&EPh9#mp?P=#B!3vb@FcD8F;$KAEa za%e_KAzEJnLcNF_tcJg1S88|~P#Rweud^BpWRpz+)flyKup$m!K$=huUklH1zl!

8&%5T{hxg!7PzIf4=ugMVY0%!;7zefA* z+GB6fUR|%fFEM-aoO%h{imDj8O%-cgsTVipvaVqZ1SL%=;u0n*1sE$?3RFV{tAz>0 zDq%K*PGB=FEAY5zcKcbX5~`Pq3bmAJqEqZovP#O&e|9pf%x)PW1Qh6{z*0~~vkHkq zI-Z){v!;TTOt8Z0wGvcL&pfD7s7?)>p53;l56Z8PU8}NS?)Xm$E~|t&r23u|tP+Jj zqKp&ERMaU=w-mcT^fL9*8lioG(f zmsG~w+f{__h3%~J(QMbp8vs--dZONq zq7R`ZDH`^J0{t?gBIqLJo`iNHnr|iM)i_zPe43a60qQ8~4b@{%5C+ykdh?| zHw}u3&6XDIJsV%08On~GKYnWX^!c-65CMwK_kJ{X_;~+$cF4$>pp6qozQ(hMXM6(>UP43)sP@`tVk`l zW4B_?<^v0t7Cv@5hL)t^m94w)omkv@@Uhf&GcuQ4mBj|GoG^_T9tX>Ft>8}lymx%#lz}j>CjDi?$mFN z->a=kVPTm2M(T35?7o+~-}6#K9#g^NwaT zc{Vr}QV6-{7F&D5N&MuA^ugEC2d`IoCVl-fKn^#M1NYC~A8`^#o=8JqOG6%Vn0sYk zh6K6sy`c=6-#t8tKJVNy%AwCQtw#m)d%5H2e)NY-bU4d@5$Yd4z<+T-VDw;g*l}e z7J%;SazmEwN^oh$R5vkUx#~(3U!l`PE&Hciw92@o>ICkGh_EX!{4)U7`%{=AQ+|;V z2{x_E*yUACb48nKaIJT@dk4rn?{=QGhh z!{38f2fgF`Tl4~AfXENv^-3BrEp5uche#Ga*-g~G058Y^j(dutPf`3SlAodOr>ObQ zXxmd1`y1+7M$Mm!pEX}^z7bzWGLZ6h`R04Kv$wL#ZHeW0?puN9#BXK94L(CBpP|ub QXaL?X#J!xskql`6H*ZO{g8%>k literal 0 HcmV?d00001 diff --git a/lib/ai_writers/speech_to_blog/__pycache__/write_blogs_from_youtube_videos.cpython-312.pyc b/lib/ai_writers/speech_to_blog/__pycache__/write_blogs_from_youtube_videos.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c883ceed2f70c8f769ede15b953cd0c42abd7c80 GIT binary patch literal 4550 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 literal 0 HcmV?d00001 diff --git a/lib/blog_metadata/__pycache__/get_blog_category.cpython-312.pyc b/lib/blog_metadata/__pycache__/get_blog_category.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5c1d917b6bdc81eefcc0081df5d6b720e5daf123 GIT binary patch literal 1611 zcmZux&1)M+6ra&**DFQ-NF9@Y96BTcqc&ArhhBtnD;m3)xHeP<6Cp5b?P$GbcSp>O zEUzpT8v=1ofnItDhFn|sQ0QOKTc8)07HT%Rg%)xXbpyq{^v$jm*RBV4=FPmfzxUqn zy_uhehqDL<|Kr{Id>WzWYBLymUpW2>gs+i}Z0w;*vf>JceacJuT1CSsg{Zb+4t_jc z5Bg%?BKCEvRT4!Txw9u~XKQx)JN-aQG#J^2J>(7fX2k^AyoV~85a%;5lzK6bBg12k zL-}%he%hm()SKCkm+tiY$+k1?a7u%j?YisHZgJal1GUtfK~1_W0J}urA=^F`!g6Rg zpNh;H^B8yAG&1Up`<8r>0)OBx=Xw6Bq+4>;p+OBNLB_M9Oa*=XJxo9u?x06N)4tZl z@|E3&f;l&A?Vzv6D1+pHdep&#^KPn>Dx>R28iQYNAbzc@{Rj7g0@&$}_6Y5#1}GTa zMYi76zSKfJSzEY;wzRvbh4V&xE=yp{^?4zZ5y+5oOH#519FrPI4sb#R0ZNGDZqlHy zVS%K9EW`j-0LhdDu>wN38k9>?o?U{SO=^i5X>nIlev{0Tmg{+>!P%y3QxdW!9LV(x zFjZh`l$%g$Aqfk-kWBqAtk$|)TPGH$#Ajf|DRh7pNR>+8iG2qAW*l$=O~_hEAdEn| z_0SC*BG&=Nas&9g;noVIGB9 z`C)-9sT??Mz#L~?W4><@K^vB$+$Nir*QBCA&cH20P)RZRT)Lu2Cfh@k*J87F;j^S< zDuIiNrjj}>T%r9DB(SOsS5K>3oU`Dj*hvE@7DWTHrlii9PZkzFFOtQ)&Q+&JX*YmY z7*b+pcB@7k>PAI6<(%<+I?Bb!7ME_#gNp<;@EbBR2Z)gdh5}w5q)Kpd`_p1|Wq$GY z(n`51LLsStYpPnBe{Usjm#XKkRbxD#O3SvSRXrbjSZIXN`1w=lSAH3MjKC)xn08Rl zOuu%$XQCS)JTCMQ{!s5_^bvDs?ynruFWtYhd*^WMlV8)NUMj6G<7eYcW%qli9CqYf7HrjvBR+-+!o~P0%05Mz-_aXK yXn4oCKfF79Z}bRdLCo%E_ijBbJ}4eto;Vtwj?yo~vqfblPr?Y<5G literal 0 HcmV?d00001 diff --git a/lib/blog_metadata/__pycache__/get_blog_meta_desc.cpython-312.pyc b/lib/blog_metadata/__pycache__/get_blog_meta_desc.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4fac3bda19d43d66cb07c261ae12522a7fd6947e GIT binary patch literal 1575 zcmZuxO=ufO6rSCc)+MJ zuPb&fVyq*rl7Osa{(GW!j^QMJNbVUOjYb^P8Sn=Jt6-sQ-6e(8x|U15ROP3jX9~yfi01=xiGkt^i<@n-$N8W`5K6m|7||R+b)TXxGs<=w<+6XuHtN z>5*0DJ{R5wL}rDHz?Ls{#6!4@?*}CbYqI15D{Gw~<5^Lrf3H$*JqD0$rH7O?g#%0W#vyC8S*0 zl!aH7oW-{{KD-VLge^Vh($AE^Es!?7*0n;WDH2KLGQ=KP>}1@oAPZ9=wHbxADhL@P z*{q9E7oG%hflgyoJOpafGD_fM4P6>2|Gg+)?;p*X1ST)geulQQ3_@MU)KpeW5K3AV zHa0^U!f|>7ph`W7=dzA%Loa`H>Eh*&FVXU{t&BjRP2U;Pwdy%4F4y;hDn`gFaf)5s zv5>CXehm~DhJgrFfbA$JeIH*!Sml^--IL3dGk+bY*v~qziB5P>LFy!umRY=g}CHbdq)J04tIgy{|ec{+Bejcw3b8-IdMSwUhf3L2xXVA<)-o44}wxuj4% z93?!4m;*{o&8(FHYtLDf1R=P{C8CUKfl@ci$gIX~6Infnk%5LGz9~fY)#1!^zPLCy zf9>|-LNQzqB?MQm6sP7cF2?08`rcA8_NOZ9*wQY#AWQv|lB)4|bv+uzKTdTRbacl` zFGdh*5WldD(-!&5BFPi?ZfxJ!KRNp>alNf4M&4*!Wc0mn?>zpZok|Rz-?|o>Cl=8xKs0CQoM~@^|XYO zIJFH;)1H&`bCUXv|4$tiN1{)Fuhg(YH%Ddbjgd&!}6W>&j$N+ApT=9~B4ym{|^ zZ+_0@48T9~$Hms08UVkEP4Z>N;B?5r1AqX6E~o>fAk~GQQdgkBnyY$RU6VNDW<0&F zORT$7Ubdd)7@#S4+B50~1PZ{$_Cj*OWZfUbvBzr@OM)=iem%jH6=l)%kH)?lYxrHW zXyzWQ&vl`ddnS~%XOK$^vh!{1V`5Xhx#b4!O@zZHaqdtj@VPP9#x&MbyB%`HE2*N% zkF*2g;IaB_5b97Db8nqTY-4h(S1r5vE_PRT{nC!>_+n{w z{H92N`^EOi-0^T2+HKso6qaoUF2A^kncfPBXVd1mOj)cTN9<4k;oxJvC`yat=*Fw&`JNBb(Z0@4~Iyc%n1U zOo8cyC6hs;_jW}b5p!Vjw(}q{R%ZJz|&D)!w)9R8tL>Wox60W z%W^OH5b=r&{13n4VgP=hfA4W)c=gHp!Te`~Pmhb2_M(Ggc~CpnjQi`m>!Wj*hZjbd zuRT#lh1ElC?YQvP_wGUA;-H#3EDx*0k4J^8huXE{1#9nvgM|+VH&W~3UNBl*`DtrZ zxPGWrew`_P_vPd6aA{;zMq1^RrvNOaRk>Lm@5Qu)j~q!Y8M6YK?dF;i`Xm>yCTbg1mf4}iSNZz4r5o@dKmfI2Q-A@A_5 zczt1oi$7He;V-~=3O+gk@1B4wCt&F*IDZ6k1O0w(H+L_81Pl(1UE}NJZ%f~lj^>L; S`TE}(73zP@8gLcLJN^X#_Jt$> literal 0 HcmV?d00001 diff --git a/lib/blog_metadata/__pycache__/get_blog_title.cpython-312.pyc b/lib/blog_metadata/__pycache__/get_blog_title.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..641479772b8679d157ccc221b28bdc27c19d367c GIT binary patch literal 3000 zcmd5;OKcNI7@pm=*Y?JCUJ%;y$RN_DF2PhFwUrg63MHTvFjb*Kq;8|dJ8>5FVa<-? z#IY-=kO(J0szfRji7TRq9=Ya*)Jvpta2F0pRV#6GOQ|Y)=|8hJu~S;LoEXWo|2+QZ z_jzW%OC&S|jsCoQrW>Rm`JmOpP2urZAY4ZVG9(L41z%}Og0XDLwlbwiNJd0C8*M4B ze{VO%<__U&eU(c@Ivekt;UhyaLf?dME5V9{4AqEO5j#2+1vzF!FG^Ff1u3OH;v2Fl z$yY76P$2YVWpdOabHo~36rbAY-e6cAEl@(7vBeqFBDKt-Wjg#bQ*!dmbRF0itXJ`( zO*~I8kXlOiqj}eIsaYYuI^$AXXOCp?2kzpQWlu9Q&!!8+$%le4MIVEnhy6G%iK0oh z5CbV_XSw=@X2`dj>k_I;UUyaY5{6P$ZXhEh`fwG2tgb|AA!n#6(Y~rodyI%!i;6y0 zm0*Wfm7(uiiNU@eu#z<5Vl^T9q}bE75}AjHYM~fnEqGBi)QX@Mu7*#bU5KfzAcqhg ztf_4oJO^Z>yQ3*%&m`MtOZ=T*2ID* z>A1X>mhR~M&*7yzQpl15OwSQ~ge(Z#8T^SeXA(fIFoH`Ck8gGa7u_ln07&ip~8;l5^0@0Ee{o z4VB#g=8{gCncv9f=kuoW?LU&{Wrg+nO9ktAP-_m_&O|VQ3xr`Rjy5=LW~gi9 zqeqWra5fdD3fyRZ$aLUZiEuGC0cRwf?5^X738gMgMf^Dbe@-`H^rNk_!A~~-hSR~p z;A>6^ZhyfVUxi!7E;2vb^6M*L&f`ABwSw`}@eeY&Q z_$5PgmU$*89NUEHhR*aHq%kdKgpYJ_!S8R~kZtpHGx$it&-)#^^QaL;$)59v9)z?@ zM=l&$>v{8DDD^{E|JT`u92yveRs7bn)j;y@frkV5YHn@kvAfpY&(}WvtdUUrbm_AC zOA={)*PMnd4eYA#+H-THfkJ!R6}La!{`&HV4I~ZksP7nA+r9_Hbga=E>x+Z-CY0O; zx`QoU1$5PCPPaYWHnf}pg*Rf2L}Y8cfg-W^l6rNZ(Gw2$J?J02sea!-ycDf>Z&~X8 z<3ZP^Uy%&+(d3o*<@nl`_wMxH39oG)yBB@Gp6p$U{n-e^@>A~>NPRUKAK!{rx5f@A z%IeT-<73L|SQzA#lFdHiZ>yB%%dY1uP<-)FEYVWH2bB`rog==Y8-}lX%z(#-zpqea z)6KU7_0p|Z9)F+!Thcb1&(EHI%}GHifyXWM7#t$H3A(4zQQI|278#=$hCC8)47!FQ zNz#23yN|S=(5rQnIImtxTu5B(t|JXZ?Si(n|4Qa^rrx``-aYjstVrq;4M|z)H+5L* Iqk~}LFVy>J@c;k- literal 0 HcmV?d00001 diff --git a/lib/blog_metadata/__pycache__/get_tags.cpython-312.pyc b/lib/blog_metadata/__pycache__/get_tags.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..74f0493fcbc8df53503cd5d30fd9b2724d24d832 GIT binary patch literal 1464 zcmaJ>OK2NM7@pbHu2!;SH+Ed(9_lG=C?bst&ZVfXQnj&z^RPo4Y9a(;qa7)0_SKn@ zY|B!xOCZiEv=;|LAlKp^dTTB{bt;$2T+k zOFErIu-Ko+tBDvwze}ONv>vnf9WYzSLKb#VvAg3U23c_wS1qa-DTt~|MnCXy-|n$J zkEqt6RdN(9rC!%a$x^M@58AfcwP0lFR@{lZM$rJ?xPgj^Rh&sYljgY$4t2+`)hN5% zoSkxLgF5-OXlqY>+!b3>HAbnIU#r>5s`K66d+Oo4h(F6B6GSH>Nni36xVKy0ENdnNC` z!L7AochS9rEEu(7-(X8`$F9eg@iJObub^d|i8l*L(pxh)=NlOYw~6Vww?Y?wN8@pAd%rTMRBPfuTJ{#4+^^ax!EC=+C1dLAUJ8@0@A zLD@$K*?rGhC6k0vI8)OTks}Xi#je_wZiK9V(BS_xk|pyp7o!2tWm{Z>4qewIoCYQ{ z1+_@Sbn296$zirHUKu1u$Ue?CPn@A11%KPCk;wdC^9Mc`+2(sQCfq(t0#>5}s`J42 zI3-o)yX5@&3pp~EiHC~M!#MRCHuF6uuTmJZJ-{?B*~Iipg$DA}|+82p|6%$U1tFM5AL{XTLpr z=lY|g+4T#%iZVR@+xW3NgZIr{O&L7CKJ!9H+Q7|o8|QZ3I`ugA`L3dA!%s&h?(4sf ze7I?JhQ>CB{(3ra^f^*MZw%f}-Ae6@eez)BfwnW6e{7uU3?A7`{0+&p;e9>|Rewx< zhJH>Ij;RmzcM3#(NHpLx$xwya*Z??0zlu7mccIl8b^QhnRnxLUoeRsai*WKa2($fn z9-XxBWnI(u4jz9`8J$iv|MzGQsvstt**B(K->N$_&n7^WFPGBfWH-e5t8ef0;yh4)5thc$mElDgFVb&xKn6 literal 0 HcmV?d00001 diff --git a/lib/blog_postprocessing/__pycache__/blog_proof_reader.cpython-312.pyc b/lib/blog_postprocessing/__pycache__/blog_proof_reader.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..54ca758837b340516ed583bff0f5270594987e27 GIT binary patch literal 2690 zcmai0OK2NM7@pNivLwrP9M^VgFqu4EJB~=4wzk#M)UPDYn>dfgaSmPdG-mU`I7gPcSme5(+U=0$-~>VHidDK0OJhiztkkw}P@B zfmIDc*}$4fReX&Hgth*8jR)tn?qN=vxN@n=UKZfvTk^Yxo_1bf4W4VZ(UWT9QdOMy z&H1v;HN7Xz39|T|f2kTdB(&}`U$)&_t&MU>4trMDkQ@QD|F^1NV-%d~%YixZ8oKWDJOp$e$-#N?Q}IjH z9cP3YG%KD*Gr~HYt$@?v;bc2KsW!?RUWHu@?ZxAGM%6SWEgZg8}kWGHz_A<_jnL)e?usPqBoSu-Ui^O{5pPLd8%N!KNc$Bc|*q=*hVjN?(2 zk`&VlkQmA(uqQFAl*IusgH_2#n@aEKf6JA>vCk>g!WMN9Mm?Q=RHe!+)f<5Q2vw# z8$rh<-H>z81d#n)hU<1>2C-NwkJ+jbc^8OG0HUU*c|Dy|5`RgPB01*Pl9HSzLHeN< z)TutWky$)rQrU{(GZw)XMdI=_`(dwR(nTJ9h@=mj=Wi$K6e~&$MiR zPGT9mPD)yi;Ln<>Vb{qjH6)$bp+q7LmrEjHM}ZOCMvy~`P&+!}%uc#9KW|k#JT}X7 z1NpQAIjS1W78SxMe&P_~N1&a}VU*FWw`0jJgtv02p$th=>oM|z@NfFC}(5pIr zgC;m}LSwmt-RxRATK6iXTVSUUe68)!w3kpN7z`W|R@yc#Dp!?7^Q!rE@|JQ_xuxCI zzVEx+f2aTM{yY2c50v*E{YfsJ{-`vmly_#zZR$e(N^|GK=AH-5J>}-!h2Y~*<5%^U z>#rR7rfZ@8w@_at6xg_>5qfKA9_k-7fK&z%khh)L9K#(y3qc(ecKh|#z>{J zv2oX>0~PEK46d|nz7Z_9bS;E_Z)#s?`uEu`6m9(*2|Tb+Lutc@_gd}+N{t5|h7LXm z9ehy{`O1rDy;ZBh72qDd94)o)y}j*rYpJ#WVQAn%XuvTXd~WT5Y<)glH`0cd!_kpA zT5b!E^oz@z8%O%Y<-P!yHPI0La}z8U;67gbGsr3b*@|982&k4&D*e zih2Lj2z3s2%y~DiQ#xJd6zp5{6fh9Q@bf(MzHZ8SjeJ0N!W62AtTy<8ums@|3O_=T SN2ujbbnIzxvoJ_^z|wyXtLmQs literal 0 HcmV?d00001 diff --git a/lib/blog_postprocessing/__pycache__/humanize_blog.cpython-312.pyc b/lib/blog_postprocessing/__pycache__/humanize_blog.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2679bd2c8e0f563bd17786f37123f5d20216f348 GIT binary patch literal 3020 zcmZuz&1)pb74M$b%#Oy=%H9tg+c7T7hCzu|0sCUaTEXjGV}X&wT4AxQAZog6W=h-L z)v2nU(acIg4hG97Lm(u<-jGWUVe<#<|KN)uIf$`O8xrtMcrlpGCBIkQJzALzO!uo- z@2h_A)qDNL{Cvy9Pygqq-RD64ix$@V%NR zg574Nc>2CqlBI<6b-GKG@OS6Va%dF=(ahiL_kv=__o7C0En-vmQ{=IIGn_&~A+5n~-O2 zVYx&Fi-NnT70Cg?PPQTu4+<`fArFElhzK0A zxEPI6o)q9{)hQ2WEFUqOr$sPGJ5GaIA)v{kArrWIM3YK+K$w>%ZCi(tiwT?*g+`b$ zUU3SU1R0J;$bZESl}?cwt5Q+1I$B1(>1xvrFBW-o$Bh*0$u7e*-Hx{%|qv;AWK2gyz;o<*o*ImR#|)8YEL)EFTR_JluLF) zYfM%r`3pDLQ7|;vSJ}qWjK*m9CbQEsYx**o)CK7*%}nO#dtj#obN6q7fr;irC|N4nb-+DFho992B`(*CRr(e5&@qYcw%WMB^{`~m- zQ%AG^J*i{+ks&8XbCev?&VRIU?6p9)K5QMm`swN?tH)1WK3>@R Wt{(V}?^>R};XiC#@-OITVB&uQ=Gy@P literal 0 HcmV?d00001 diff --git a/lib/blog_postprocessing/__pycache__/save_blog_to_file.cpython-312.pyc b/lib/blog_postprocessing/__pycache__/save_blog_to_file.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c00fa45ac7d2ba7501369dae650b4a7abd682c71 GIT binary patch literal 5412 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 literal 0 HcmV?d00001 diff --git a/lib/gpt_providers/text_generation/__pycache__/ai_essay_writer.cpython-312.pyc b/lib/gpt_providers/text_generation/__pycache__/ai_essay_writer.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a4f9c03d97233d0ee69c1311ea616d8918651b30 GIT binary patch literal 7280 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 m2vcU~b_dQRM3}_WiksKCK-G!v6*NnbaTv literal 0 HcmV?d00001 diff --git a/lib/gpt_providers/text_generation/__pycache__/ai_story_writer.cpython-312.pyc b/lib/gpt_providers/text_generation/__pycache__/ai_story_writer.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..44764c0de1d9ccdb4fd83167e01dd1e3b293d2c8 GIT binary patch literal 7452 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 literal 0 HcmV?d00001 diff --git a/lib/gpt_providers/text_generation/__pycache__/gemini_pro_text.cpython-312.pyc b/lib/gpt_providers/text_generation/__pycache__/gemini_pro_text.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..623c4e862785dc3f1c4a30cce3f040da74d43ac4 GIT binary patch literal 2436 zcmah~U2GIp6uz_bv$KEQE!#q?h*Jv4N?Q^M29^ebZ6ytMAy94D6gOk%c9}9io4d26 zU1k-Gi8djjK0%@;nwW^84?Gf|P<$ZqWgBW(u9BFbCVeYVqrn%?-Pvh3{=~`dIp>~x z?sv~UKlgqYi-i$<v1m2!8l+9Og_tVo=z~u ztW=kIBWTK5nL`1DW%%=&a2+t%=kvOqXoSpgHe9z0Pi^!pn(6h%pkdL`Jm<-nn|kJ- zT20b|3-Wc|o2l;=GFr@dHf|=e39~iZT1Sk7Z>?Hbi!4O12RvKQB(#|CyBj|k!mMQ2`8+10<>7tPSn043KiLPtyMjWWTF?W!i*n@qL%(mK~fm-`55k}CiWx&ffF%YTGEk=GGi&JDP{D`=sQg^JYV zVPYM}m$a}eEkyj3SArqr2B(t#>^gUm7F~#~*~zX9X*vO?^6bB)3hzcFLp<9Y$cB!h2SF8 zXb~%u#5O?#m8mNQVk@I~#_3aN%aNgx;mmOE@bTf?(Va4+J)mFi9Jdtt)v7RVXcFS z>Hq*0Sx*%_c9yn6ljQ7@Qz$t(rw&mLdrtO(lh8R~)7G$&vs4q));zWt3^a4j^JtV^ z3q^-u)husYclVzM_uVc>`jiu_xpgbwmx@vmAXS}))(%Jmc9BW|0Cx@z4b4p80^5(U z&Z8nG#3oeGtx224k2JiQ#v{x}nrOI(nRBq-p<;pPzyt?koeEP4js$lIVbx98T}?R) z4hRwOj!t>NC+sq&V*S`u_R~kji8CeZY>{0U%G&qz#6Ws{Y&bJ`Z0zKCakdC?-t*G< z;o;sfqQj*%Zs>1~=L=2__MO%>Op4>oliYe3$GuoHgB+XcE6mcihOTbv?@xBa#?0m7 z7U;bTXhr7513${K%kjDR=YcOmpM|O~rtc~TzL)z~B_u}PKYH=#{En;7UX6Wv`bPRj z&&@NpO1JWNUay`Ut)6(jns{SL7+aB0M|Z7tW36>V?YS2og~U#&DzvY*pxB0c(XPd4 z*R}EL$eT;i+=Zc)Kt#-NKP5ZvB~y#Z)U_Qq+p5Xb-Q>X!S_z{>$K}dgr7CY;@Y2tqjS;f zradpB!n+S3$Nw&aR z%0n(`umF!DWRS22f+q8}oi}iwpSx)cWgBfCk347$&1zdaw2!w~@ z9-`0>DEt6*{DQh4pe^@NWNvW&`Mc4sCA9Sc>a3yI1?m0R#n^lC8VZ9Lz8L;s&*k)7 zy4KoWi)Vimc~1IW7P!D8#7GMY1Q(;-*SKqBDf-gl{-bve-`$^C;*LEEZ00iD6CMSQ LbDm5NfDeBG+9Yax literal 0 HcmV?d00001 diff --git a/lib/gpt_providers/text_generation/__pycache__/main_text_generation.cpython-312.pyc b/lib/gpt_providers/text_generation/__pycache__/main_text_generation.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..04901241686dbf0592f20babccc03d3b2328ad9f GIT binary patch literal 4321 zcmb_fTWl2989uYunZ5abS)0qGfh>!SaUn_Dl}l@kaa_Q5frPSg*$$qw>#=8NR%d2? zS#~Qxkpk*N%o9ivk{?si2djPIkw71i`Z8uM*%^$Ks27Ph3y4$^sp@}bcD!qZa8mV1 zGv}Z4pY#3y`Oo<;^S5v~fS{3ob)~-vBlLIr;WTfBc>WBCn@B_=Bcr6we zg_)^VhpzUbPxSwZz2mk=Ko%zkPbtJmoH0FPf<6g-P*w#oC8|1BW(xkEo`XF=z_?FVGZ{?I7KZy|JcH#U zm#nVTchLSU_GJjh%8^THNyeqbC0SBvm(D8_x}+*F&*m5TOIfUGLI#)OE|Z;5WtB(; zZ2HnF$qM>YYDW+kQFB-kq}0Tupl5PAj5KF(R#K#tj_33g!CFpLH2jpB0GJ&FgVqG= zd7`8yR3$BCQW~}-PgG8ZZWM9w&?V0gx#)RwNZ;g&jB|G5euPR)$yIWfJSA_*SMuu> zOCwa=oCOwj6`3jL22u1%b53;zkr+q-G`mf)4pr?%wHa$v-EHaf-nWq+a%S#9WOs?H*(u=RS{SnIDYG{STTc zy~l#;CmAhaQ54wb@cT5K#1s5kdlAg#b(PO-5t;@J8{xEd?Q1|_abiPf8j9>R!Bl%2`sEs#pHjrKmozsqQ&zSA37A50m)lgoqIW%lT`&;q{o@fZ7- z@ZDeEbG={@*Sv6Yg?($oheFK@#nra>a$CII*0mh$+Hm>89qaY2H-k5V#*ULK^{3W5 z4=(xc2Je0Nu>WD9+?iZp*V=Y3)NQaR(t2yhYP4%P+EtDoSPmc9vUb;@rT3O%#?MBK z9iuDtW9yyqFWy<&d$;r6lyUl;aXx8`UnqB`954<=dj9>wkD7NrLoQo^(2bC>d*I%{ zz4wfr!z=Z_T5F9iaNlisf&JZ!`tLoHMWGhJ1cR`V&qCKjM%(*K+7dQe`c~MVud!i@ z=#9M8egpQq+B~C;Kgta-?)yLLINImF-{%GT0pkYl0}nUQ z?S2sM7>Kza#JrU5w#E-~$6DPFei}X2;Qnia7w9cXiw0pUY5f_9n>8tG3X<5Xt(wM4 zOc9Y^6w#Yf)SJ`E^iQB{+Eo+cUzfmKMFi=@U1Z?xx$Uh9^-KvB(HRu?3NvuatPnRa zi6^FcDQ$&AEr%zhv;<*eXzZ*L90?Cqz{DihtSL}?NJLe#Skd_zfk?td8PnORvD2d; z4Idjk-EF}NnkHowUQk3H&*fAC;SwTe?L1g5=dm4+D9^4Dcv`Gbb+Qs5D47ZxzyM#D zlsxVUSOT^N=~@r04b`vTPzB<&AZfTJNPk2X8l=%B!4IeTi>f~PCaYL`+s+!iK(MnH zJ2#l2S}PQ|0joAj@Ugp|68&hNta0prb7wMiYSLVgCUFeghclJ5!sbA)RkGr?eAY z)B9lGt<}PC%Hzzb_SNF9#3=i=LG)ONE!!Y&`WI-(XmwTJgwl}up}$(zU1fBdwyZW~ z{Q@~(b}zDY#g^iX0dM7mPRCn^AeB>R=^q>BAzj+(8NT0m&;K8;^4fxi7DGQslWjas zQ8(cv4fd7?x3>zAH|&sR=@C)~1~el>gQtc^hEt$Y>crrAQg028jt!3VZw?j?jZ}qv z9|_=?WDfup8tn?HcE53-?QDC2Pu`)@0@WB|xgcqRQOEuKl_ICs>jej=fEvx*_R-rJeiC0XmS{voaU$yOs})sLE0 zH(C{w6`(Bh{SjHpTcPYF+Xn?;UdBgAAIP9lLz{rthMQrS$B2830*_JC6V(0$?fMD@ zuOC~8{$X?l?f55(uA%T{->2a#;ZN$;PyoolmB6*bpCzs*)*4#Y>XP4j-Hh+s0AjkI bpdUX$L(hC~Gm&Q}nFgl)`TlmM$x`CK0&7*< literal 0 HcmV?d00001 diff --git a/lib/gpt_providers/text_generation/__pycache__/openai_text_gen.cpython-312.pyc b/lib/gpt_providers/text_generation/__pycache__/openai_text_gen.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ea34ba75c1bda84a1feee64a308f8387858a5c22 GIT binary patch literal 3908 zcmb^!TWk~A^^Tw8XJVTWNE0#v3^62WlA_fnP*64wY`P>tK$UJ9P zIlHD@4ul;!Q>rDXIs+Coy!uIw`_6lgDwabgZ}?RjgfM@Pt74~opvR^7^MR>AJ~$Q3 zho(X%UjTSRl3ViJ_geA*6O^_%@B1vgdeXKXco`S|zaouZyLL)oYdJbLN?Lt13 zMT* zxXNAglp1b2uK8RL&BX>OkZZTjVb67(kROZ_cswqUwAf(Tu;?%O&jE%rv2)v?eaNsn z2g(VyTnpNd$o|DfW3RQ&#VyF5rBJEyXXqE(GSN6-?UovUW5WNMXp5VxH&ZMd>_qmiHP_d+O1!J zZ<2_G0wzMHs6x-vQ~|n{Fj2tj(C9&37@iT0Q)kW#X)Rw+Fx&6(n`}cQs}GtG6H*|s zZwQ^bK@x+)`57$8YN2Qd2A+pO6S7#vL^SX=IZRK_mH=q0STXs#1g*gIhzdv=GtnU6 zA{L4|mdwK$Ab#6ak6kVvcV-;F@k8oO>1Mkd=N)hWqUc7__f^}%qI$LTWNW#$1p+U>KA*Xxl zPSe}dZ!3rPoiembSk;A2S*_PRCeF+GVqQ>-`HP@U%YZE=2di$2mj@Ya_1*tJsl zj}}StEGD{aEYwTs?HRBSsQ&A@#<$L6JKXfM70`NdeYNB`i^0X}w)}v+sHTO*Csk9! zmTGZ|GC0;wtaA%G1Z`wqHU@>!j3BDQ(3w#I6QYqWNCH*G)ugRqAa%_&Q{=pCRLKM_ zoh}l+YUVRHloerj);JAMoEaG(8cl(~)O#cECphXA3v%ibUZ5_>HNvi0$OcTkpvQn) z`Fz4l-DaXvzINT~)NhBCaw>J3p`acx7>jut$q@WO5v%Ei6jYR`7z>0wbEtW#V^yN= zj8fERE=Q{cXBs!cj2jd#cbpVu1yUYTpk^ooZ9*V9e3sQz&Di-g#uCs&3EM=Fte{^9 z?_Cbpu%@d9g+wzvOGGt`sf#^zs9RSsE>Mrg4k}Ymm6|#@J&KmiVnW^KiKyR> zHH`uhRAVi=Rq`-1_B0D@b?qAgi_KP%h*D3r0}*y{)4;YmC+xx|?1m=n{-%yhfpRI@ znAQ{patBMP^h{B`q|>O4*$QqnQ&f}`!3AX@RZ9Y}Sdk$aC~vg^>NX|NkU6Dl%#_Ph z4pS%Crbj_B>yq`~%d^9S)03m)$%)Bx)4G}G-|C+p8ttAWGIW$_MZP!<-7E!`&B_u~ z?=_*>DzV{q)?ww2A z1|Pic|ImM<@1xMB6EK^egj@LH8*OEN*LqufnQvKd>wxjkk>*=%H`{(qK3@3cLb-3~ z@xgaiBg0Fc_1NxPM{gcoiyf-O4z0!dDzU!xX!Ck|{I>@xI|s^5gX_&5>){55i#4zB z5jGppj{XpBk@aBfT5w+_xNmu6HF#*fwd3yCow1dUN^93z zYk#G+f30<}(mJ>_wjSKG7K~Sd@#Xw#@W@6mawC4L`)2ntSBdUji*{C`oomtFO0@TZ z<6-hiaCFnh#BYYtp<_?l#+HX3eDJ%)pNi$SF|Y|nF!Ao>oyl_F@RN9QW$0JpAL7Z! zZ6nO=1~9wh>*sE?XPo<*#*=^l%7cQ@>nA=u@f{7}E6eHS@0Obmuku}6G@EWX+e`fi5b%$O_au*_M{aNOi0e_v#l}d4VfOlx1N@`I zJcEz;*?2tmuHX4dq0_MIa?43bWs|(DC%+=iWyMUH9CHBg8HDJoUYbBpGvX6 zR;d)}Wvo2(88Hpl6fqk$dqNWShBx#0H|Pa`h$LZn$seo!6FW{OV9EaH=sFCL#T@q( z`JSS{QxtxRLQhd_(}TDjSG{W}Rzb1b2k&;>=_-Fy`y(oR;cHoHUh}n7d@Z-%e(c+S z)$=!pi*tO5*bqhzFC^p&w?bBf{gr|DJ|B8KFuux7eCasB2``+;afUNNG7ftG2|?=V AivR!s literal 0 HcmV?d00001 diff --git a/lib/gpt_providers/text_to_image_generation/__pycache__/gen_dali3_images.cpython-312.pyc b/lib/gpt_providers/text_to_image_generation/__pycache__/gen_dali3_images.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4c5d148acdad29124e6a5279d8774dfe3402bb1e GIT binary patch literal 2530 zcma)8%Wo4$7@zgp>-8gqkc5ERsH22JEU;ThC8*VcoCgpU!XrosV`Oc-6KA9Ku9+PZ zJ94TD^#CUhJ#auh^i(SN12_Ubv{EmQh?;0hrK&}hatowYE4cKV^=@nmeXQ)+Z|0l% zeUJIgH~U>jM-;(Bf89Hi3M2H3==hJ~2^&{IxQTS6OC~BwSxFLdzzme+tnA9N8O#P@ zENF&GN>(X_v*D7ORY4ch6*E$bW}^}cAfmuug|YBm^-iFP4kKYbaz|?R?neD_J+8+- zmF{>hWMefs(Xl3a35hGG%EZb{2+6dIMM5VNG7nM0XpL`km|f0mGmOx@#uzD;8Sk6d z43?*wrQ4-Esg`YvSj^DOHDMJ{dK~Qv$rp)5sK$t%H%eNOtW||Fz~z!*L8DdIL_T03 zDA0IN*eQfy$bTSxNQVE$&j5Q9MG*6XLTJtl)}Jcgy5t8fA-0L*2fP@nhvxhZXj?WH zY3q2R9;l;wpf1;gcjY@C(xSp*{>-{km;AIYhU?)eG>BN-*UoM6rPg~FqLYhioBvx| zI$zR*b#-o=-)p^Z!KQ=eH7jnR&x36-_xfw*w);}+tt+jW7myxaR6ka0;pTf@Vmthq z;OW8t^i-{@U^~!4WdCk^la3O4)%HB9$`{bQl!$7VU|XXYo?{+$9PCoZ!4=1_ikQt3 zJeE0eA~}wSamm(+iKjJ(=-9TfhKt4(Vqr$A440`5JWWMiuna9aX;%`^MyZ%@s_~G+ zXd;czwN_weW1qIJHP?KqZ7~ozuN%}~J7!Q)U^cDc`B_4VyT%95o6h5T!vsGG7KcJ_ zVL8SEabfmhyUYyR(oAq>N{rewuLE*Yc#O5#9(b=Rnt>MR<%(t+toADI z8Bg*5pl9_qObZVg7JJFd$x3OOP~oSyKW%w?*~|UjCY&X#LanxafZV6?X^qW_Sj5J< z>1pEmYc#_lZA+$V4%DCVs=?BDVg_p#CY0LXMxjulKo!eNxVHh2QVd$a1@1Icw6Mox zmSEGEW|~Qo9QIbtz+Bm#UM?CDMnoHKgJ^|H2YP0V; zn8wG?ojZ-En8qp&UWn|&c-1&*gu~X-#a^M6IXZS!aGm$(` z4YmYFC8R}7s{CnpL=p4rXIs?Ays4CjFj#&A>Rq{=nE-Oq>6n8a7nJ>Y|= z|IYW&e1g_@^@fg1kJT+VV%KAho)4GR!;icAKHG6k`DtM2%j6fym4QP`1BX_(y}8=m zzuMKi+VjThmd^DU8hn2PDTC35`qpn-QO{6g=*az@kGem)rmlAOUF-bwNvvxn*1r_% ze})2~QP)8Hdc4s$dO!2c$pw;{BvnRuoXJ?QKn zP00@iGQp9(^25Dx=sY}_98JhyCqf{@M?_?^Nb$g|PE}Z%h|`_$^7sXZtwJjx*MA3>IZO8D<(Ni-+`|9Sa2qw zS(hbA`VsAf-w!DIM=&S_o+4;|k0UAhR6&98Qhe~XblX{u4=<%pe0%0m`qZ*?`dMJN SbX?kyQQ(a9)Rk!p(Eb9btD+A8 literal 0 HcmV?d00001 diff --git a/lib/gpt_providers/text_to_image_generation/__pycache__/gen_stabl_diff_img.cpython-312.pyc b/lib/gpt_providers/text_to_image_generation/__pycache__/gen_stabl_diff_img.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9eaf319ff3e9a91d0e1ceb9e068a27e970dc8251 GIT binary patch literal 1884 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 ZOZ2@Qth2SeAAykoPz^{#Jr zHwk39+?`H3=P8Z)5NNN0K9wr>;71<%5UFY#sV|EhDb_S6QB|sRZ&7KbDt+n9+G{w1 z+petn|C#@rZ~yt{pMS@H^839Me&FBUO8?eJQGX>J`*Bs3-JfISF(ps}Em89oNzc<( z-!bpN(jhr>4f72&u{kAI&OPs@DF+4I*?>*9C!bW+Dxzi2VrziTw%Yoh6dDBA*X}3I z$_Rc};}_JtcZrUBz9mDmaT+yT<+VjD-I9{Y0C;10azp~Rfpq4cC00h>u5^u&3irW(eD zF`+{--WtYTmxrlg8td}-Y8X#l9)AtfWH^lm!)3UQM#Ez?r5mqPLcod&k7pkim4MJ( zo9(TOX{lkDx|m=Mdb5t!nK*rbup0| zrUhdT+q*WQy@m{zlTI*suYnV`7Otgk+Gn$PSBWSc5A)_trzD_Om^if)yon1#M z7^Nw#-R@^QY;8{pUH9o=G* zTI;sC{x7CjeWp9qUFRHihmQC1f5F9tg@6}02s9naTuPDCVun+JRn@#Key(9NJI%`( z9TzorMiGF-9-p3`iL-eg@;RUZsIqCOOL|}&r2Y|jfU|08hdOVZYxI9#D zivoZHY>upFfYm@Q53tiZ1bB?U%W29-KvuCq$#eMuRvy4h1Rv`_PAzeHAoG&86tAxA z8ZW9~pF0zH(X)y+q3E)35kdtf*vWLAC9$H)%8JIO33%v0cyN4G0EfQA0Rfr9%Pb(w zWMQhk(8EGcV*M?t+la~Gm{j+7*`;gg!BhCN=fMk71k8ZEl9a2O5kqt(Pqt7+zWo71 zE-PS&*%vV6-3u6USph?|jDl|j47J_DUs*1-i1Q|e(?(P^F{Pp=YgAKYfLbh7068TC z`TU}ovW-i5fc%zGs%9c;wYrL~<#mm#d|i?64!DI=Sp_^yEn?4s!bwWX%0<*%8RcpO zjI8GfSeG;vc{MQyIEcvsY8K^`qzix(6cRKQF{+poB_47*l$K-T)*0EK;(J?|V3*&v z_RBg|WM>YfpLI|wJ7t}Y1UtJN8mVi7QN6r(+ zp+@YrBHae45$`{cvHQLXWhG;fuj1lWD}PV}IpD~d0UGk)CM_wvhTK>aWeo-2$X0S0 zp^(eUFXXZogPJbhO#v$(;t>?6yvr^Uh^h9;;YIFB2a;O^Bv&~|zJ-un*&zAGLvl@n z(miq@}*a2UUuEJq!| z=jv1HRri1^@G=tp>eSEV7mym_p^JolW~VcJ*EY%}q4M{M1@=G_=A4wX8_3f<*k`{U@N=<3Yo zd!^uTAzW_nd3^uT{f(7kuGD^^&{d9fKh8bMZOjx$N|AGgD8ctW>fPumHkN{?Fy0?} zxbR?Mb#$|@?k z`!+t=_P@JR@yF~tz4d;n>5J`zy3N>7v1x16oJyLZr0GlU_`6o|I|p~V zj;trv5*u<+E_GcjOqXLv*RyNc&6s(5sua6ixKfU?>w{~9n}IEVDLPTOT<+{$kFG^G zW{cCM&auMOp%ePo`Zs=3Tqs4y3zv67y&Jv7x3-p_oi&pgGn6rXnO7kyF!Zl~L?~a+ z-zf*)QM^OG2R^g?-Qq{Z1v5PU+;gGq@xNr+Uobt}%mL8EQ}rn@!_&__GZ^&mmrUD1 zl2q|SGyMK@&j_)a0BcnsTa*Ev$mr`6OoV*|) zx2g%aTv`eI8)_F%r66(PwPyqubzK5y;3)2r{~PK#+`MwqG`;JgXz!mX{0n_Ub$mm0 vmMQ Date: Sat, 27 Apr 2024 19:22:22 +0530 Subject: [PATCH 4/4] Update .env --- .env | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/.env b/.env index cbde28dc..fb70ba90 100644 --- a/.env +++ b/.env @@ -1,7 +1,6 @@ # Alwrity will add your environment variables here -METAPHOR_API_KEY=b487e3f0-6389-497c-8890-e899bbac4947 -TAVILY_API_KEY=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 -SERPER_API_KEY=80bb372c18fbeb463dbb3f4aa84194cc96c08f2d -GPT_PROVIDER=gemini -GEMINI_API_KEY=AIzaSyCNREEsbe3vjljgRYRi3yPlJw7VpKWndhc -GPT_PROVIDER=google +METAPHOR_API_KEY= +TAVILY_API_KEY= +SERPER_API_KEY= +GPT_PROVIDER= +GEMINI_API_KEY=