Partilhar via


Azure AI Model Inference API | Azure AI Studio

Importante

Alguns dos recursos descritos neste artigo podem estar disponíveis apenas na visualização. Essa visualização é fornecida sem um contrato de nível de serviço e não a recomendamos para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas. Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.

A Inferência de Modelo de IA do Azure é uma API que expõe um conjunto comum de recursos para modelos fundamentais e que pode ser usada por desenvolvedores para consumir previsões de um conjunto diversificado de modelos de maneira uniforme e consistente. Os desenvolvedores podem conversar com diferentes modelos implantados no Azure AI Studio sem alterar o código subjacente que estão usando.

Benefícios

Os modelos fundacionais, como os modelos linguísticos, registaram, de facto, progressos notáveis nos últimos anos. Esses avanços revolucionaram vários campos, incluindo processamento de linguagem natural e visão computacional, e habilitaram aplicativos como chatbots, assistentes virtuais e serviços de tradução de idiomas.

Embora os modelos fundamentais se destaquem em domínios específicos, eles carecem de um conjunto uniforme de recursos. Alguns modelos são melhores em tarefas específicas e, mesmo na mesma tarefa, alguns modelos podem abordar o problema de uma forma, enquanto outros de outra. Os desenvolvedores podem se beneficiar dessa diversidade usando o modelo certo para o trabalho certo, permitindo-lhes:

  • Melhore o desempenho em uma tarefa downstream específica.
  • Use modelos mais eficientes para tarefas mais simples.
  • Use modelos menores que podem ser executados mais rapidamente em tarefas específicas.
  • Componha vários modelos para desenvolver experiências inteligentes.

Ter uma maneira uniforme de consumir modelos fundamentais permite que os desenvolvedores percebam todos esses benefícios sem sacrificar a portabilidade ou alterar o código subjacente.

Disponibilidade

A API de Inferência de Modelo de IA do Azure está disponível nos seguintes modelos:

Modelos implantados em pontos de extremidade de API sem servidor:

A API é compatível com implantações de modelo OpenAI do Azure.

Capacidades

A seção a seguir descreve alguns dos recursos que a API expõe. Para obter uma especificação completa da API, consulte a seção de referência.

Modalidades

A API indica como os desenvolvedores podem consumir previsões para as seguintes modalidades:

Extensibilidade

A API de Inferência de Modelo de IA do Azure especifica um conjunto de modalidades e parâmetros que os modelos podem assinar. No entanto, alguns modelos podem ter outros recursos que os indicados pela API. Nesses casos, a API permite que o desenvolvedor os passe como parâmetros extras na carga útil.

Ao definir um cabeçalho extra-parameters: allow, a API tentará passar qualquer parâmetro desconhecido diretamente para o modelo subjacente. Se o modelo puder lidar com esse parâmetro, a solicitação será concluída.

O exemplo a seguir mostra uma solicitação que passa o parâmetro safe_prompt suportado por Mistral-Large, que não é especificado na API de Inferência de Modelo de IA do Azure:

Pedir

POST /chat/completions?api-version=2024-04-01-preview
Authorization: Bearer <bearer-token>
Content-Type: application/json
extra-parameters: allow
{
    "messages": [
    {
        "role": "system",
        "content": "You are a helpful assistant"
    },
    {
        "role": "user",
        "content": "Explain Riemann's conjecture in 1 paragraph"
    }
    ],
    "temperature": 0,
    "top_p": 1,
    "response_format": { "type": "text" },
    "safe_prompt": true
}

Gorjeta

Como alternativa, você pode definir extra-parameters: drop para descartar qualquer parâmetro desconhecido na solicitação. Use esse recurso caso você esteja enviando solicitações com parâmetros extras que você sabe que o modelo não suportará, mas deseja que a solicitação seja concluída de qualquer maneira. Um exemplo típico disso é a indicação seed do parâmetro.

Modelos com diferentes conjuntos de capacidades

A API de Inferência de Modelo de IA do Azure indica um conjunto geral de recursos, mas cada um dos modelos pode decidir implementá-los ou não. Um erro específico é retornado nos casos em que o modelo não pode suportar um parâmetro específico.

O exemplo a seguir mostra a resposta para uma solicitação de conclusão de bate-papo indicando o parâmetro reponse_format e solicitando uma resposta no JSON formato. No exemplo, como o modelo não suporta tal capacidade, um erro 422 é retornado ao usuário.

Pedir

POST /chat/completions?api-version=2024-04-01-preview
Authorization: Bearer <bearer-token>
Content-Type: application/json
{
    "messages": [
    {
        "role": "system",
        "content": "You are a helpful assistant"
    },
    {
        "role": "user",
        "content": "Explain Riemann's conjecture in 1 paragraph"
    }
    ],
    "temperature": 0,
    "top_p": 1,
    "response_format": { "type": "json_object" },
}

Response

{
    "status": 422,
    "code": "parameter_not_supported",
    "detail": {
        "loc": [ "body", "response_format" ],
        "input": "json_object"
    },
    "message": "One of the parameters contain invalid values."
}

Gorjeta

Você pode inspecionar a propriedade details.loc para entender a localização do parâmetro ofensivo e details.input ver o valor que foi passado na solicitação.

Segurança de conteúdos

A API de inferência de modelo de IA do Azure dá suporte à Segurança de Conteúdo do Azure AI. Ao usar implantações com a Segurança de Conteúdo de IA do Azure ligada, as entradas e saídas passam por um conjunto de modelos de classificação destinados a detetar e prevenir a saída de conteúdo nocivo. O sistema de filtragem de conteúdo deteta e age em categorias específicas de conteúdo potencialmente nocivo em prompts de entrada e finalizações de saída.

O exemplo a seguir mostra a resposta para uma solicitação de conclusão de bate-papo que acionou a segurança do conteúdo.

Pedir

POST /chat/completions?api-version=2024-04-01-preview
Authorization: Bearer <bearer-token>
Content-Type: application/json
{
    "messages": [
    {
        "role": "system",
        "content": "You are a helpful assistant"
    },
    {
        "role": "user",
        "content": "Chopping tomatoes and cutting them into cubes or wedges are great ways to practice your knife skills."
    }
    ],
    "temperature": 0,
    "top_p": 1,
}

Response

{
    "status": 400,
    "code": "content_filter",
    "message": "The response was filtered",
    "param": "messages",
    "type": null
}

Introdução

A API de Inferência de Modelo de IA do Azure é atualmente suportada em modelos implantados como pontos de extremidade de API sem servidor. Implante qualquer um dos modelos suportados em um novo ponto de extremidade de API sem servidor para começar. Em seguida, você pode consumir a API das seguintes maneiras:

Você pode usar a API de Inferência de Modelo de IA do Azure para executar avaliações ou durante a criação com o fluxo de Prompt. Crie uma conexão Serverless Model com um ponto de extremidade de API Serverless e consuma suas previsões. A API de Inferência de Modelo de IA do Azure é usada nos bastidores.