
    D.f                         d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ  e            Ze                    de	          d
edededededefd            ZdS )    )	APIRouter)Dict)TfidfVectorizer)AgglomerativeClusteringdetermine_cluster_keyword)get_data_from_webmaster)SIMILARITY_THRESHOLDz/clusterize)response_modeluserhostsaccess_tokenquery_indicatororder_byreturnc                   K   t          | ||||          }g }|D ]}|                    |d                    t          |           t                      }|                    |          }	t
          }
t          d dd|
          }|                    |	                                          }i }t          ||          D ])\  }}||vrg ||<   ||                             |           *d |
                                D             }|S )N	processedcosineaverage)
n_clustersaffinitylinkagedistance_thresholdc                 .    i | ]}t          |          |S  r   ).0valuess     8D:\eodhd\seo\seo_app\app\api\routes\public\v1\cluster.py
<dictcomp>z!make_clusters.<locals>.<dictcomp>.   s#    ^^^F'//^^^    )r	   appendprintr   fit_transformr
   r   fit_predicttoarrayzipr   )r   r   r   r   r   datakey_stringsrow
vectorizertfidf_matrix	threshold
clusteringcluster_labelsclustered_data
cluster_id
data_pointresults                    r   make_clustersr3      s3      #4oxXXDK - -3{+,,,,	+ !""J++K88L %I(D8U^s|}}}J++L,@,@,B,BCCNN #&nd";"; 6 6
J^++)+N:&z"))*5555^^nF[F[F]F]^^^FMr    N)fastapir   typingr   sklearn.feature_extraction.textr   sklearn.clusterr   1app.core.internal_funcs.determine_cluster_keywordr   /app.core.internal_funcs.get_data_from_webmasterr	   app.core.enumr
   routergetstrr3   r   r    r   <module>r>      s                ; ; ; ; ; ; 3 3 3 3 3 3 W W W W W W S S S S S S . . . . . .	M$//!
!! ! 	!
 ! 
! ! ! 0/! ! !r    