# Temas avanzados

## inference/linker.`py`

### class EntityLinker

Crea una canalización de un transformador de reconocimiento de entidades y un transformador de oraciones para embedir texto.

#### Parámetros de inicialización

entity\_model : str, por defecto='tabiya/roberta-base-job-ner' Ruta a un `AutoModelForTokenClassification` modelo o un `AutoModelCrfForNer` modelo. Este modelo se utiliza para el reconocimiento de entidades dentro del texto de entrada.

similarity\_model : str, por defecto='all-MiniLM-L6-v2' Ruta o nombre de un modelo de transformador de oraciones usado para embedir texto. El transformador de oraciones se utiliza para calcular embeddings para las entidades extraídas y los conjuntos de referencia. El modelo 'all-mpnet-base-v2' está disponible pero no en caché, por lo que debe usarse con el parámetro `from_cache=False` al menos la primera vez.

crf : bool, por defecto=False Indicador para indicar si usar un `AutoModelCrfForNer` modelo en lugar de un `AutoModelForTokenClassification`. `CRF` (Campo Aleatorio Condicional) los modelos CRF se usan cuando la tarea requiere predicciones secuenciales con dependencias entre las salidas.

evaluation\_mode : bool, por defecto=False Si se establece en `True`, el vinculador devolverá las puntuaciones de similitud del coseno entre los embeddings. Este modo es útil para evaluar la calidad de las vinculaciones.

k : int, por defecto=32 Especifica la cantidad de ítems a recuperar de los conjuntos de referencia. Este parámetro limita el número de coincidencias principales a considerar al vincular entidades.

from\_cache : bool, por defecto=True Si se establece en `True`, los embeddings precomputados se cargan desde la caché para ahorrar tiempo. Si se establece en `False`, los embeddings se calculan en tiempo real, lo que requiere acceso a GPU para eficiencia y puede consumir mucho tiempo.

output\_format : str, por defecto='occupation' Especifica el formato de la salida para ocupaciones, ya sea `ocupación`, `preffered_label`, `esco_code`, `uuid` o `all` para obtener todas las columnas. El `uuid` también está disponible para las habilidades.

#### Parámetros al llamar

text : str Una cadena arbitraria relacionada con ofertas de trabajo.

linking : bool, por defecto=True Especifica si el modelo realiza el enlace de entidades con la taxonomía.

### class FrenchEntityLinker

Versión francesa del vinculador de entidades. Para usarlo, necesitamos reescribir las bases de datos de referencia a la versión francesa de ESCO.

## `inference/evaluator.py`

## class Evaluator(EntityLinker)

Clase Evaluator que hereda del Entity Linker. Calcula las consultas, el corpus, el corpus invertido y los documentos relevantes para el [InformationRetrievalEvaluator](https://github.com/UKPLab/sentence-transformers/blob/master/sentence_transformers/evaluation/InformationRetrievalEvaluator.py), realiza el enlace de entidades y calcula las métricas de Recuperación de Información.

### Parámetros de inicialización

entity\_type: str Ocupación, Habilidad o Cualificación para determinar el conjunto de evaluación exacto que se utilizará.

## `util/transformersCRF.py`

### class CRF(nn.Module)

Implementado a partir de [aquí](https://github.com/lonePatient/BERT-NER-Pytorch/tree/master).

Una clase que crea un modelo lineal de Campo Aleatorio Condicional.

### class AutoModelForCrfPretrainedConfig(PretrainedConfig)

Clase de configuración que hereda de [PretrainedConfig ](https://huggingface.co/docs/transformers/en/main_classes/configuration#transformers.PretrainedConfig)clase de HuggingFace.

### class AutoModelCrfForNer(PreTrainedModel)

Una clase general que hereda de [PreTrainedModel HuggingFace](https://huggingface.co/docs/transformers/en/main_classes/model#transformers.PreTrainedModel) clase. El model\_type se detecta automáticamente.

model\_type: str Opciones posibles incluyen `BertCrfForNer`, `RobertaCrfForNer` y `DebertaCrfForNer.`

### class BERT\_CRF\_Config(PretrainedConfig)

Clase personalizada usada para configurar BERT para CRF.

### class BertCrfForNer(PreTrainedModel)

Modelo CRF basado en BERT que hereda de [PreTrainedModel HuggingFace](https://huggingface.co/docs/transformers/en/main_classes/model#transformers.PreTrainedModel) clase.

Igual que [PreTrainedModel HuggingFace](https://huggingface.co/docs/transformers/en/main_classes/model#transformers.PreTrainedModel).

#### Parámetros de Forward

Igual que [PreTrainedModel HuggingFace](https://huggingface.co/docs/transformers/en/main_classes/model#transformers.PreTrainedModel) excepto por

`special_tokens_mask` por defecto: None. Usamos esta opción de HuggingFace como un pequeño truco para implementar el special\_mask necesario para CRF.

### class ROBERTA\_CRF\_Config(PretrainedConfig)

Clase personalizada usada para configurar RoBERTa para CRF.

### class RobertaCrfForNer(PreTrainedModel)

Modelo CRF basado en RoBERTa que hereda de [PreTrainedModel HuggingFace](https://huggingface.co/docs/transformers/en/main_classes/model#transformers.PreTrainedModel) clase.

Igual que [PreTrainedModel HuggingFace](https://huggingface.co/docs/transformers/en/main_classes/model#transformers.PreTrainedModel).

#### Parámetros de Forward

Igual que [PreTrainedModel HuggingFace](https://huggingface.co/docs/transformers/en/main_classes/model#transformers.PreTrainedModel) excepto por

`special_tokens_mask` por defecto: None. Usamos esta opción de HuggingFace como un pequeño truco para implementar el special\_mask necesario para CRF.

### class DEBERTA\_CRF\_Config(PretrainedConfig)

Clase personalizada usada para configurar RoBERTa para CRF.

### class DebertaCrfForNer(PreTrainedModel)

Modelo CRF basado en RoBERTa que hereda de [PreTrainedModel HuggingFace](https://huggingface.co/docs/transformers/en/main_classes/model#transformers.PreTrainedModel) clase.

Igual que [PreTrainedModel HuggingFace](https://huggingface.co/docs/transformers/en/main_classes/model#transformers.PreTrainedModel).

#### Parámetros de Forward

Igual que [PreTrainedModel HuggingFace](https://huggingface.co/docs/transformers/en/main_classes/model#transformers.PreTrainedModel) excepto por

`special_tokens_mask` por defecto: None. Usamos esta opción de HuggingFace como un pequeño truco para implementar el special\_mask necesario para CRF.

## `util/utilfunctions.py`

### class Config

Clase de configuración para los [hiperparámetros de entrenamiento](https://docs.tabiya.org/tabiya-documentation/es/nuestra-pila-tecnologica/training#train-an-entity-extraction-model).

### class CPU\_Unpickler

Una clase que carga los tensores en la CPU.
