Cross encoder

Description

Ths model helps cross encode sentences

Predicted Entities

Download Copy S3 URI

How to use

import sparknlp
from sparknlp.base import *
from sparknlp.annotator import *
from pyspark.ml import Pipeline

document = MultiDocumentAssembler() \
    .setInputCols(["query", "passage"]) \
    .setOutputCols(["document1", "document2"])

crossEncoder = CrossEncoder.pretrained() \
    .setInputCols(["document1", "document2"]) \
    .setOutputCol("score")

pipeline = Pipeline().setStages([document, crossEncoder])

data = spark.createDataFrame([
    ["How many people live in Berlin?", "Berlin is well known for its museums."]
]).toDF("query", "passage")

result = pipeline.fit(data).transform(data)
result.select("score.result").show(truncate=False)
import spark.implicits._
import com.johnsnowlabs.nlp.base._
import com.johnsnowlabs.nlp.annotator._
import org.apache.spark.ml.Pipeline

val document = new MultiDocumentAssembler()
  .setInputCols("query", "passage")
  .setOutputCols("document1", "document2")

val crossEncoder = CrossEncoder.pretrained()
  .setInputCols("document1", "document2")
  .setOutputCol("score")

val pipeline = new Pipeline().setStages(Array(document, crossEncoder))

val data = Seq(
  ("How many people live in Berlin?", "Berlin is well known for its museums."))
  .toDF("query", "passage")
val result = pipeline.fit(data).transform(data)

result.select("score.result").show(false)

Model Information

Model Name: cross_encoder_ms_marco_minilm_l6_v2
Compatibility: Spark NLP 6.4.2+
License: Open Source
Edition: Official
Input Labels: [document1, document2]
Output Labels: [score]
Language: en
Size: 84.2 MB