
    c              	       H   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Zedk    r ej	        dej
                    ej        dd                    ej                             ej                            ej        d                   Z eej                  d	k     r4 e e            d
          e            z              ej        d           ej                            ej        d                   Zej                            ej        d                   Zej        ej        cZZ eej                  d	k    rJ eej        d	                   Z e ej         ee                    Z e ej         ee                    Zej!        "                    dee          Z#ej!        "                    dee          Z$d e%d e$j&        D                       z   ee$          ez  z  Z' ej        d ee          e#j(                   dddddddde#j)        f	D ]gZ*e*e#_*         e            Z+e#D ]Z, e            e+z
  Z- ej.        d ee          z  e*z            Z/ ej        de*e- ee          e-z  e/e-z             hde#_0         ej        d           dddddddde#j)        f	D ]nZ*e*e#_*         e            Z+d e#D             Z1 e            e+z
  Z- ej.        d ee          z  e*z            Z/ ej        de*e- ee          e-z  e/e-z             ode#_0         ej        d ee          e$j(        e'           dddd dd!d"e$j)        fD ]gZ*e*e$_*         e            Z+e$D ]Z, e            e+z
  Z- ej.        d ee          z  e*z            Z/ ej        de*e- ee          e-z  e/e-z             hde$_0         ej        d#           dddd dd!d"e$j)        fD ]gZ*e*e$_*         e            Z+e$D ]Z, e            e+z
  Z- ej.        d ee          z  e*z            Z/ ej        de*e- ee          e-z  e/e-z             hde$_0         e ej         ed"                    Z2 ej        d$ ee2           ee#          e#j(                   d%D ]Z* e            Z+e*dk    r)g Z1ej3        4                    e2e*          D ]
Z5e#e5         Z6ne2D ]
Z7e#e7         Z6 e            e+z
  Z- ej.        d ee2          z  e*z            Z/ ej        de*e- ee2          e-z  e/e-z              e ej         ed"                    Z2 ej        d& ee2           ee          e$j(        e'           d'D ]Z* e            Z+e*dk    r)g Z1ej3        4                    e2e*          D ]
Z5e$e5         Z6ne2D ]
Z7e$e7         Z6 e            e+z
  Z- ej.        d ee2          z  e*z            Z/ ej        de*e- ee2          e-z  e/e-z              ej        d(e           dS dS ))at  
USAGE: %(program)s CORPUS_DENSE.mm CORPUS_SPARSE.mm [NUMDOCS]
    Run speed test of similarity queries. Only use the first NUMDOCS documents of each corpus for testing (or use all if no NUMDOCS is given).
    The two sample corpora can be downloaded from http://nlp.fi.muni.cz/projekty/gensim/wikismall.tgz

Example: ./simspeed2.py wikismall.dense.mm wikismall.sparse.mm
    N)time__main__z)%(asctime)s : %(levelname)s : %(message)s)formatlevelz
running %s    __doc__      z/tmp/tstdensez/tmp/tstsparseg      Y@c              #   $   K   | ]}|j         V  d S )N)num_nnz).0shards     5lib/python3.11/site-packages/gensim/test/simspeed2.py	<genexpr>r   0   s$      IIE%-IIIIII    zKtest 1 (dense): similarity of all vs. all (%i documents, %i dense features)       @               g      ?z6chunksize=%i, time=%.4fs (%.2f docs/s, %.2f queries/s)
   zTtest 2 (dense): as above, but only ask for the top-10 most similar for each documentc                     g | ]}|S  r   )r   sims     r   
<listcomp>r   G   s    ++++++r   zVtest 3 (sparse): similarity of all vs. all (%i documents, %i features, %.2f%% density)   d       zUtest 4 (sparse): as above, but only ask for the top-10 most similar for each documentzStest 5 (dense): dense corpus of %i docs vs. index (%i documents, %i dense features))r
   r   r   r   r   r   r   r   zftest 6 (sparse): sparse corpus of %i docs vs. sparse index (%i documents, %i features, %.2f%% density))r
   r   r   r    r!   r"   zfinished running %s)8r	   loggingsys	itertoolsosmathr   gensim__name__basicConfigINFOinfojoinargvpathbasenameprogramlenprintglobalslocalsexitcorporaMmCorpuscorpus_densecorpus_sparse	num_termsdense_featuressparse_featuresintNUMDOCSlistislicesimilarities
Similarityindex_denseindex_sparsesumshardsdensitynum_features	shardsize	chunksizestartr   takenceilqueriesnum_bestsimsqueryutilschunkize_serialchunk_vecr   r   r   <module>rX      sg     



     				         z E1GJRYR^____GLsxx11222 gsx{++G
s38}}q ggii	"VVXX-...>**38A;77LN++CHQK88M&2&<m>U#NO
s38}}q G#chqk""t,I,\7CCDD-Y-mWEEFF %00,P^__K&112BMSbccLccII\5HIIIIIISSQ]M^M^apMpqGGLUL;3   BCc49NO 

 

	 ) 	 	C$)C##l"3"33i?@@Ducc,//%75	
 	
 	
 	

 KGLghhhBCc49NO 	
 	
	 )++{+++$)C##l"3"33i?@@Ducc,//%75	
 	
 	
 	
  KGL`ML5w  
 BS#t\5KL 

 

	!* 	 	C$)C##m"4"44y@AADucc-0058'E/	
 	
 	
 	

 LGLhiiiBS#t\5KL 

 

	!* 	 	C$)C##m"4"44y@AADucc-0058'E/	
 	
 	
 	
 !L D!!,5566EGL]E

CC$$k&>   9 
 
	q= 	%D55eYGG ' '&'  % %$$)C##e**,y899Ducc%jj50'E/	
 	
 	
 	
 D!!,5566EGLpE

CC&&(A7   0 
 
	q= 	&D55eYGG ( ( '(  & & %$)C##e**,y899Ducc%jj50'E/	
 	
 	
 	

 GL&00000KE1 E1r   