mirror of
				https://github.com/explosion/spaCy.git
				synced 2025-11-04 01:48:04 +03:00 
			
		
		
		
	* Use isort with Black profile * isort all the things * Fix import cycles as a result of import sorting * Add DOCBIN_ALL_ATTRS type definition * Add isort to requirements * Remove isort from build dependencies check * Typo
		
			
				
	
	
		
			54 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
from typing import Callable, Optional
 | 
						|
 | 
						|
from thinc.api import Model
 | 
						|
 | 
						|
from ...language import BaseDefaults, Language
 | 
						|
from .lemmatizer import CatalanLemmatizer
 | 
						|
from .lex_attrs import LEX_ATTRS
 | 
						|
from .punctuation import TOKENIZER_INFIXES, TOKENIZER_PREFIXES, TOKENIZER_SUFFIXES
 | 
						|
from .stop_words import STOP_WORDS
 | 
						|
from .syntax_iterators import SYNTAX_ITERATORS
 | 
						|
from .tokenizer_exceptions import TOKENIZER_EXCEPTIONS
 | 
						|
 | 
						|
 | 
						|
class CatalanDefaults(BaseDefaults):
 | 
						|
    tokenizer_exceptions = TOKENIZER_EXCEPTIONS
 | 
						|
    infixes = TOKENIZER_INFIXES
 | 
						|
    suffixes = TOKENIZER_SUFFIXES
 | 
						|
    prefixes = TOKENIZER_PREFIXES
 | 
						|
    stop_words = STOP_WORDS
 | 
						|
    lex_attr_getters = LEX_ATTRS
 | 
						|
    syntax_iterators = SYNTAX_ITERATORS
 | 
						|
 | 
						|
 | 
						|
class Catalan(Language):
 | 
						|
    lang = "ca"
 | 
						|
    Defaults = CatalanDefaults
 | 
						|
 | 
						|
 | 
						|
@Catalan.factory(
 | 
						|
    "lemmatizer",
 | 
						|
    assigns=["token.lemma"],
 | 
						|
    default_config={
 | 
						|
        "model": None,
 | 
						|
        "mode": "rule",
 | 
						|
        "overwrite": False,
 | 
						|
        "scorer": {"@scorers": "spacy.lemmatizer_scorer.v1"},
 | 
						|
    },
 | 
						|
    default_score_weights={"lemma_acc": 1.0},
 | 
						|
)
 | 
						|
def make_lemmatizer(
 | 
						|
    nlp: Language,
 | 
						|
    model: Optional[Model],
 | 
						|
    name: str,
 | 
						|
    mode: str,
 | 
						|
    overwrite: bool,
 | 
						|
    scorer: Optional[Callable],
 | 
						|
):
 | 
						|
    return CatalanLemmatizer(
 | 
						|
        nlp.vocab, model, name, mode=mode, overwrite=overwrite, scorer=scorer
 | 
						|
    )
 | 
						|
 | 
						|
 | 
						|
__all__ = ["Catalan"]
 |