Usar Azure OpenAI no Fabric com o SDK do Python (versão prévia)

Este artigo mostra como usar Azure OpenAI in Fabric com o OpenAI Python SDK. Para processamento distribuído de grandes conjuntos de dados, consulte Use Azure OpenAI com SynapseML. Para obter a abordagem mais simples usando Pandas AI Functions, consulte Use Azure OpenAI com AI Functions.

Pré-requisitos

O runtime padrão não inclui o OpenAI Python SDK portanto, você precisa instalá-lo.

%pip install -U openai

Criar um cliente autenticado no Fabric

Para usar Azure OpenAI no Fabric, crie um cliente com a autenticação do Fabric:

from synapse.ml.fabric.credentials import get_openai_httpx_sync_client
import openai

client = openai.AzureOpenAI(
    http_client=get_openai_httpx_sync_client(),
    api_version="2025-04-01-preview",
)

Esse cliente manipula a autenticação automaticamente ao executar em blocos de anotações do Fabric. Use esse cliente para todas as chamadas à API subsequentes.

Finalizações de chat

O exemplo apresentado aqui mostra operações simples de conclusão de chat. Para obter uma referência de API completa, consulte a API de Conclusões de Chat.

response = client.chat.completions.create(
    model="gpt-4.1",
    messages=[
        {
            "role": "user",
            "content": """Analyze the following text and return a JSON array of issue insights.

Each item must include:
- issue_brief (1 sentence)
- scenario
- severity (high | medium | low)
- verbatim_quotes (list)
- recommended_fix

Text:
We booked the hotel room in advance for our family trip. The check-in the great however the room service was slow and pool was closed

Return JSON only.
"""
        }
    ],
)
print(f"{response.choices[0].message.content}")

API de Respostas

A API de Respostas é a abordagem recomendada pelo OpenAI para novas implementações. Ele fornece melhor qualidade de resposta e melhor manipulação de saídas estruturadas. Para obter uma referência completa da API, consulte a API de Respostas.

response = client.responses.create(
    model="gpt-4.1",
    input=[
        {
            "role": "user",
            "content": "Explain quantum computing in simple terms."
        }
    ],
    store=False  # Fabric LLM endpoint does not support storage
)
print(f"{response.output_text}")

Observação

O ponto de extremidade do Fabric LLM não dá suporte ao parâmetro store definido como True ou ao parâmetro previous_response_id.

Embeddings

Um embedding é um formato especial de representação de dados que modelos e algoritmos de aprendizado de máquina podem utilizar facilmente. Ela contém o significado semântico repleto de informações de um texto, representado por um vetor de números de ponto flutuante. A distância entre duas inserções no espaço vetorial está relacionada à semelhança semântica entre duas entradas originais. Para obter uma referência de API completa, consulte a API do Embeddings.

response = client.embeddings.create(
    input="The food was delicious and the waiter...",
    model="text-embedding-ada-002",
)
print(response.data[0].embedding)

Modelos e taxas disponíveis

Para obter informações sobre modelos disponíveis e taxas de consumo, consulte taxa de consumo das Foundry Tools.

Documentação do Fabric

Documentação do SDK do Python do OpenAI