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


Настройка функций ИИ с помощью pandas

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

Это важно

  • Функции искусственного интеллекта предназначены для использования в Среде выполнения Fabric 1.3 (Spark 3.5), (Python 3.11) и более поздних версий.
  • Ознакомьтесь с предварительными требованиями в этой обзорной статье, включая установки библиотек , которые необходимы для временного использования функций ИИ.
  • Хотя базовая модель может обрабатывать несколько языков, большинство функций ИИ оптимизированы для использования на английском языке текстов.

Замечание

  • В этой статье описывается настройка функций ИИ с помощью pandas. Сведения о настройке функций ИИ с помощью PySpark см. в этой статье.
  • Ознакомьтесь со всеми функциями ИИ в этой статье.

Configurations

По умолчанию функции ИИ основаны на встроенной конечной точке искусственного интеллекта в Fabric. Параметры большой языковой модели (LLM) глобально настроены в классе aifunc.Conf. При работе с функциями искусственного интеллекта в pandas можно использовать класс aifunc.Conf для изменения некоторых или всех этих параметров:

Параметр Description По умолчанию
concurrency
Необязательно
Int, указывающий максимальное количество строк для обработки параллельно с асинхронными запросами к модели. Более высокие значения ускоряют время обработки (если у вас достаточно ресурса для этого). Его можно настроить до 1000. 200
embedding_deployment_name
Необязательно
Строка , указывающая имя развертывания внедренной модели, которая управляет функциями ИИ. text-embedding-ada-002
model_deployment_name
Необязательно
Строка , указывающая имя развертывания языковой модели, которая управляет функциями ИИ. Вы можете выбрать модели , поддерживаемые Fabric. gpt-4.1-mini
reasoning_effort
Необязательно
Используется моделями серии gpt-5 для определения количества токенов, которые они должны использовать для рассуждения. Можно задать openai.NOT_GIVEN значение или строковое значение "минимальное", "низкое", "среднее" или "высокое". openai.NOT_GIVEN
seed
Необязательно
Объект int, указывающий начальное значение, используемое для ответа базовой модели. Поведение по умолчанию случайным образом выбирает начальное значение для каждой строки. Выбор константного значения повышает воспроизводимость экспериментов. openai.NOT_GIVEN
temperature
Необязательно
Плавающее между 0.0 и 1.0 обозначающее температуру базовой модели. Более высокие температуры увеличивают случайность и творческий потенциал выходных данных модели. 0.0
timeout
Необязательно
Значение int, указывающее количество секунд, прежде чем функция ИИ вызовет ошибку тайм-аута. По умолчанию время ожидания отсутствует. None
top_p
Необязательно
Плавающее значение от 0 до 1. Более низкое значение (например, 0.1) ограничивает модель только наиболее вероятными маркерами, что делает выходные данные более детерминированными. Более высокое значение (например, 0.9) позволяет использовать более разнообразные и творческие выходные данные, включая более широкий диапазон маркеров. openai.NOT_GIVEN
use_progress_bar
Необязательно
Отображать индикатор прогресса tqdm для функции искусственного интеллекта по обработке входных данных. Использует tqdm под капотом. Логическое значение, для которого можно задать True или False. True
verbosity
Необязательно
Используется моделями серии gpt-5 для длины выходных данных. Можно присвоить значение openai.NOT_GIVEN или строковое значение "low", "medium" или "high". openai.NOT_GIVEN

Подсказка

  • Если емкость развертывания модели позволяет обрабатывать больше запросов, увеличение значений параллелизма может ускорить обработку.

В следующем примере кода показано, как глобально переопределить aifunc.Conf параметры, чтобы они применялись ко всем вызовам функций ИИ в сеансе:

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

aifunc.default_conf.temperature = 0.5 # Default: 0.0
aifunc.default_conf.concurrency = 300 # Default: 200

df = pd.DataFrame([
        "Hello! How are you doing today?", 
        "Tell me what you'd like to know, and I'll do my best to help.", 
        "The only thing we have to fear is fear itself.",
    ], columns=["text"])

df["translations"] = df["text"].ai.translate("spanish")
df["sentiment"] = df["text"].ai.analyze_sentiment()
display(df)

Эти параметры также можно настроить для каждого отдельного вызова функции. Каждая функция ИИ принимает необязательный параметр conf. В следующем примере кода параметры по умолчанию aifunc изменяются только ai.translate для вызова функции с помощью настраиваемого значения температуры. (Вызов ai.analyze_sentiment по-прежнему использует значения по умолчанию, так как пользовательские значения не заданы).

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

from synapse.ml.aifunc import Conf

df = pd.DataFrame([
        "Hello! How are you doing today?", 
        "Tell me what you'd like to know, and I'll do my best to help.", 
        "The only thing we have to fear is fear itself.",
    ], columns=["text"])

df["translations"] = df["text"].ai.translate("spanish", conf=Conf(temperature=0.5))
df["sentiment"] = df["text"].ai.analyze_sentiment()
display(df)

В следующем примере кода показано, как настроить gpt-5 и другие модели причин для всех функций.

aifunc.default_conf.model_deployment_name = "gpt-5"
aifunc.default_conf.temperature = 1  # gpt-5 only accepts default value of temperature
aifunc.default_conf.top_p = 1  # gpt-5 only accepts default value of top_p
aifunc.default_conf.verbosity = "low"
aifunc.default_conf.reasoning_effort = "low"

Пользовательские модели

Чтобы использовать модель искусственного интеллекта, отличной от используемой по умолчанию, можно выбрать другую модель, поддерживаемую Fabric, или настроить пользовательскую конечную точку модели.

Выберите другую поддерживаемую языковую модель

Выберите одну из моделей, поддерживаемых Fabric , и настройте ее с помощью model_deployment_name параметра. Эту конфигурацию можно сделать одним из двух способов:

  • Глобально в aifunc.Conf классе. Пример:

    aifunc.default_conf.model_deployment_name = "<model deployment name>"
    
  • Отдельно в каждом вызове функции ИИ:

    df["translations"] = df["text"].ai.translate(
        "spanish",
        conf=Conf(model_deployment_name="<model deployment name>"),
    )
    

Выбор другой поддерживаемой модели внедрения

Выберите одну из моделей, поддерживаемых Fabric , и настройте ее с помощью embedding_deployment_name параметра. Эту конфигурацию можно сделать одним из двух способов:

  • Глобально в aifunc.Conf классе. Пример:

    aifunc.default_conf.embedding_deployment_name = "<embedding deployment name>"
    
  • По отдельности в каждом вызове функции ИИ. Пример:

    df["embedding"] = df["text"].ai.embed(
        conf=Conf(embedding_deployment_name="<embbedding deployment name>"),
    )
    

Настройка конечной точки пользовательской модели

По умолчанию функции ИИ используют API конечной точки Fabric LLM для единого выставления счетов и простой настройки. Вы можете использовать собственную конечную точку модели, настроив клиента Azure OpenAI или клиента, совместимого с OpenAI, с вашей конечной точкой и ключом. В следующем примере показано, как использовать собственный ресурс aifunc.setupMicrosoft AI Foundry (прежнее название — Azure OpenAI).

from openai import AzureOpenAI

# Example to create client for Microsoft AI Foundry OpenAI models
client = AzureOpenAI(
    azure_endpoint="https://<ai-foundry-resource>.openai.azure.com/",
    api_key="<API_KEY>",
    api_version=aifunc.session.api_version,  # Default "2025-04-01-preview"
    max_retries=aifunc.session.max_retries,  # Default: sys.maxsize ~= 9e18
)
aifunc.setup(client)  # Set the client for all functions.

Подсказка

  • Вы можете настроить настраиваемый ресурс AI Foundry для использования моделей за пределами OpenAI.

В следующем примере кода используются значения заполнителей, чтобы показать, как переопределить встроенную конечную точку ИИ Fabric с помощью настраиваемого ресурса Microsoft AI Foundry для использования моделей за пределами OpenAI:

Это важно

  • Поддержка моделей Microsoft AI Foundry ограничена моделями, поддерживающими Chat Completions API и принимающее response_format параметр с помощью схемы JSON
  • Выходные данные могут отличаться в зависимости от поведения выбранной модели ИИ. Ознакомьтесь с возможностями других моделей с соответствующей осторожностью
  • Функции ИИ ai.embed на основе встраивания и ai.similarity не поддерживаются при использовании ресурса AI Foundry.
from openai import OpenAI

# Example to create client for Azure AI Foundry models
client = OpenAI(
    base_url="https://<ai-foundry-resource>.services.ai.azure.com/openai/v1/",
    api_key="<API_KEY>",
    max_retries=aifunc.session.max_retries,  # Default: sys.maxsize ~= 9e18
)
aifunc.setup(client)  # Set the client for all functions.

aifunc.default_conf.model_deployment_name = "grok-4-fast-non-reasoning"