Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция ai.generate_response использует генерирующий ИИ для создания пользовательских текстовых ответов, основанных на собственных инструкциях, с одной строкой кода.
Замечание
- В этой статье рассматривается использование ai.generate_response в PySpark. Чтобы использовать ai.generate_response с pandas, см. эту статью.
- См. другие функции ИИ в этой статье.
- Узнайте, как настроить конфигурацию функций ИИ.
Обзор
Функция ai.generate_response доступна для кадров данных Spark. Необходимо указать имя существующего входного столбца в качестве параметра. Кроме того, необходимо указать строковый запрос и логическое значение, указывающее, следует ли рассматривать запрос как строку формата.
Функция возвращает новый кадр данных с пользовательскими ответами для каждой входной текстовой строки, хранящейся в выходном столбце.
Подсказка
Узнайте, как создавать более эффективные запросы на получение ответов более высокого качества, следуя подсказкам OpenAI для gpt-4.1.
Синтаксис
df.ai.generate_response(prompt="Instructions for a custom response based on all column values", output_col="response")
Параметры
| Имя | Description |
|---|---|
prompt Обязательно |
Строка, содержащая инструкции по запросу. Эти инструкции применяются к входным текстовым значениям для пользовательских ответов. |
is_prompt_template Необязательно |
Логическое значение, указывающее, является ли запрос строкой форматирования или строкой литерала. Если для этого параметра задано значение True, функция учитывает только определенные значения строк из каждого столбца, отображаемого в строке форматирования. В этом случае имена столбцов должны находиться в фигурных скобках, а остальные столбцы игнорируются. Если этот параметр имеет значение по умолчанию False, функция считает все значения столбцов контекстом для каждой входной строки. |
output_col Необязательно |
Строка , содержащая имя нового столбца для хранения пользовательских ответов для каждой строки входного текста. Если этот параметр не задан, имя по умолчанию создается для выходного столбца. |
error_col Необязательно |
Строка , содержащая имя нового столбца для сохранения любых ошибок OpenAI, возникших в результате обработки каждой строки входного текста. Если этот параметр не задан, для столбца ошибок генерируется имя по умолчанию. Если для строки входных данных нет ошибок, то в этом столбце будет указано значение null. |
response_format Необязательно |
Строка или словарь, указывающий ожидаемую структуру ответа модели. Строковые значения можно задать как "text" для свободного текста формы или "json_object", чтобы убедиться, что выходные данные являются допустимым объектом JSON.
type В противном случае поле можно задать значение "json_schema" с помощью пользовательской схемы JSON, чтобы применить определенную структуру ответа. Если этот параметр не указан, ответ возвращается как обычный текст. |
Возвраты
Функция возвращает кадр данных Spark , содержащий новый столбец, содержащий настраиваемые текстовые ответы на запрос для каждой входной текстовой строки.
Example
# This code uses AI. Always review output for mistakes.
df = spark.createDataFrame([
("Scarves",),
("Snow pants",),
("Ski goggles",)
], ["product"])
responses = df.ai.generate_response(prompt="Write a short, punchy email subject line for a winter sale.", output_col="response")
display(responses)
В этом примере ячейка кода предоставляет следующие выходные данные:
Пример формата ответа
В следующем примере показано, как использовать response_format параметр для указания различных форматов ответа, включая обычный текст, объект JSON и настраиваемую схему JSON.
# This code uses AI. Always review output for mistakes.
df = spark.createDataFrame([
("Alex Rivera is a 24-year-old soccer midfielder from Barcelona who scored 12 goals last season.",),
("Jordan Smith, a 29-year-old basketball guard from Chicago, averaged 22 points per game.",),
("William O'Connor is a 22-year-old tennis player from Dublin who won 3 ATP titles this year.",)
], ["bio"])
# response_format : text
df = df.ai.generate_response(
prompt="Create a player card with the player's details and a motivational quote",
response_format="text",
output_col="card_text"
)
# response_format : json object
df = df.ai.generate_response(
prompt="Create a player card with the player's details and a motivational quote in JSON",
response_format="json_object", # Requires "json" in the prompt
output_col="card_json_object"
)
# response_format : specified json schema
df = df.ai.generate_response(
prompt="Create a player card with the player's details and a motivational quote",
response_format={
"type": "json_schema",
"json_schema": {
"name": "player_card_schema",
"strict": True,
"schema": {
"type": "object",
"properties": {
"name": {"type": "string"},
"age": {"type": "integer"},
"sport": {"type": "string"},
"position": {"type": "string"},
"hometown": {"type": "string"},
"stats": {"type": "string", "description": "Key performance metrics or achievements"},
"motivational_quote": {"type": "string"},
},
"required": ["name", "age", "sport", "position", "hometown", "stats", "motivational_quote"],
"additionalProperties": False,
},
}
},
output_col="card_json_schema"
)
display(df)
В этом примере ячейка кода предоставляет следующие выходные данные:
Связанный контент
Используйте ai.generate_response с пандами.
Определение тональности с использованием ai.analyze_sentiment.
Классифицируйте текст с помощью ai.classify.
Создайте векторные представления с помощью ai.embed.
Извлеките сущности с ai_extract.
Исправьте грамматику с ai.fix_grammar.
Вычислите сходство с ai.similarity.
Резюмируйте текст с ai.summarize.
Перевод текста с помощью ai.translate.
Дополнительные сведения о полном наборе функций ИИ.
Настройка конфигурации функций ИИ.
Мы упустили какую-то функцию, которая вам нужна? Предложите это на форуме "Фабрика идей".