Поделиться через


Использование ai.similarity с PySpark

Функция ai.similarity использует генерированный ИИ для сравнения двух строковых выражений, а затем вычисления семантической оценки сходства. Он использует только одну строку кода. Текстовые значения из одного столбца кадра данных можно сравнить с одним общим текстовым значением или с парными текстовыми значениями в другом столбце.

Замечание

Обзор

Функция ai.similarity доступна для кадров данных Spark. Необходимо указать имя существующего входного столбца в качестве параметра. Кроме того, необходимо указать одно общее текстовое значение для сравнения или имя другого столбца для парных сравнений.

Функция возвращает новый кадр данных, включающий оценки сходства для каждой строки входного текста, которая находится в выходном столбце.

Синтаксис

df.ai.similarity(input_col="col1", other="value", output_col="similarity")

Параметры

Имя Description
input_col
Обязательно
Строка, содержащая имя существующего столбца с входными текстовыми значениями для вычисления показателей сходства.
other или other_col
Обязательно
Требуется только один из этих параметров. Параметр other — это строка , содержащая одно общее текстовое значение, используемое для вычисления показателей сходства для каждой строки входных данных. Параметр other_col — это строка , которая обозначает имя второго существующего столбца с текстовыми значениями, используемыми для вычисления парных показателей сходства.
output_col
Необязательно
Строка, содержащая имя нового столбца для хранения вычисляемых показателей сходства для каждой входной текстовой строки. Если этот параметр не задан, имя по умолчанию создается для выходного столбца.
error_col
Необязательно
Строка, содержащая имя нового столбца, в котором хранятся ошибки OpenAI, возникающие в результате обработки каждой входной текстовой строки. Если этот параметр не задан, для столбца ошибок генерируется имя по умолчанию. Если входная строка не имеет ошибок, этот столбец имеет значение null.

Возвраты

Функция возвращает кадр данных Spark , содержащий новый столбец, содержащий созданные оценки сходства для каждой входной текстовой строки. Оценки сходства выходных данных являются относительными, и они лучше всего используются для ранжирования. Значения оценки могут варьироваться от -1* (противоположных) до 1 (идентичных). Оценка 0 указывает, что значения не связаны в значении.

Example

# This code uses AI. Always review output for mistakes. 

df = spark.createDataFrame([
        ("Bill Gates",), 
        ("Sayta Nadella",), 
        ("Joan of Arc",) 
    ], ["names"])

similarity = df.ai.similarity(input_col="names", other="Microsoft", output_col="similarity")
display(similarity)

В этом примере ячейка кода предоставляет следующие выходные данные:

Снимок экрана: кадр данных с столбцами