ó
    /ë”h  ã                   ó<   • S r SSKJr   " S S5      r " S S5      rg)aÏ  
Interfaces for labeling tokens with category labels (or "class labels").

``ClassifierI`` is a standard interface for "single-category
classification", in which the set of categories is known, the number
of categories is finite, and each text belongs to exactly one
category.

``MultiClassifierI`` is a standard interface for "multi-category
classification", which is like single-category classification except
that each text belongs to zero or more categories.
é    )Ú
overriddenc                   ó6   • \ rS rSrSrS rS rS rS rS r	Sr
g	)
ÚClassifierIé   aª  
A processing interface for labeling tokens with a single category
label (or "class").  Labels are typically strs or
ints, but can be any immutable type.  The set of labels
that the classifier chooses from must be fixed and finite.

Subclasses must define:
  - ``labels()``
  - either ``classify()`` or ``classify_many()`` (or both)

Subclasses may define:
  - either ``prob_classify()`` or ``prob_classify_many()`` (or both)
c                 ó   • [        5       e©z[
:return: the list of category labels used by this classifier.
:rtype: list of (immutable)
©ÚNotImplementedError©Úselfs    ÚI/var/www/auris/envauris/lib/python3.13/site-packages/nltk/classify/api.pyÚlabelsÚClassifierI.labels+   ó   € ô
 "Ó#Ð#ó    c                 ót   • [        U R                  5      (       a  U R                  U/5      S   $ [        5       e)zM
:return: the most appropriate label for the given featureset.
:rtype: label
r   ©r   Úclassify_manyr
   ©r   Ú
featuresets     r   ÚclassifyÚClassifierI.classify2   ó6   € ô
 d×(Ñ(×)Ñ)Ø×%Ñ% z lÓ3°AÑ6Ð6ä%Ó'Ð'r   c                 ót   • [        U R                  5      (       a  U R                  U/5      S   $ [        5       e)za
:return: a probability distribution over labels for the given
    featureset.
:rtype: ProbDistI
r   ©r   Úprob_classify_manyr
   r   s     r   Úprob_classifyÚClassifierI.prob_classify<   ó6   € ô d×-Ñ-×.Ñ.Ø×*Ñ*¨J¨<Ó8¸Ñ;Ð;ä%Ó'Ð'r   c                 óN   • U Vs/ s H  o R                  U5      PM     sn$ s  snf )z‘
Apply ``self.classify()`` to each element of ``featuresets``.  I.e.:

    return [self.classify(fs) for fs in featuresets]

:rtype: list(label)
©r   ©r   ÚfeaturesetsÚfss      r   r   ÚClassifierI.classify_manyG   ó#   € ñ -8Ó8ªK b—‘˜bÖ!©KÑ8Ð8ùÒ8ó   …"c                 óN   • U Vs/ s H  o R                  U5      PM     sn$ s  snf ©zŸ
Apply ``self.prob_classify()`` to each element of ``featuresets``.  I.e.:

    return [self.prob_classify(fs) for fs in featuresets]

:rtype: list(ProbDistI)
©r   r"   s      r   r   ÚClassifierI.prob_classify_manyQ   ó%   € ñ 2=Ó=²¨2×"Ñ" 2Ö&±Ñ=Ð=ùÒ=r'   © N©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r   r   r   Ú__static_attributes__r-   r   r   r   r      ó    † ñò$ò(ò	(ò9õ>r   r   c                   ó6   • \ rS rSrSrS rS rS rS rS r	Sr
g	)
ÚMultiClassifierIé\   a¶  
A processing interface for labeling tokens with zero or more
category labels (or "labels").  Labels are typically strs
or ints, but can be any immutable type.  The set of labels
that the multi-classifier chooses from must be fixed and finite.

Subclasses must define:
  - ``labels()``
  - either ``classify()`` or ``classify_many()`` (or both)

Subclasses may define:
  - either ``prob_classify()`` or ``prob_classify_many()`` (or both)
c                 ó   • [        5       er   r	   r   s    r   r   ÚMultiClassifierI.labelsk   r   r   c                 ót   • [        U R                  5      (       a  U R                  U/5      S   $ [        5       e)zZ
:return: the most appropriate set of labels for the given featureset.
:rtype: set(label)
r   r   r   s     r   r   ÚMultiClassifierI.classifyr   r   r   c                 ót   • [        U R                  5      (       a  U R                  U/5      S   $ [        5       e)zi
:return: a probability distribution over sets of labels for the
    given featureset.
:rtype: ProbDistI
r   r   r   s     r   r   ÚMultiClassifierI.prob_classify|   r   r   c                 óN   • U Vs/ s H  o R                  U5      PM     sn$ s  snf )z–
Apply ``self.classify()`` to each element of ``featuresets``.  I.e.:

    return [self.classify(fs) for fs in featuresets]

:rtype: list(set(label))
r!   r"   s      r   r   ÚMultiClassifierI.classify_many‡   r&   r'   c                 óN   • U Vs/ s H  o R                  U5      PM     sn$ s  snf r)   r*   r"   s      r   r   Ú#MultiClassifierI.prob_classify_many‘   r,   r'   r-   Nr.   r-   r   r   r7   r7   \   r5   r   r7   N)r3   Únltk.internalsr   r   r7   r-   r   r   Ú<module>rD      s$   ðñõ &÷=>ñ =>÷@=>ò =>r   