# AI Inference API

`Azion.AI.run` é o binding que uma [função](/pt-br/documentacao/plataforma/functions/) chama para invocar um modelo no [AI Inference](/pt-br/documentacao/plataforma/ai-inference/). Ele é um global do [Azion Runtime](/pt-br/documentacao/devtools/runtime/), então uma função o alcança sem linha de import e sem credencial. O binding carrega o id do modelo e o corpo da requisição. Os campos que esse corpo aceita, e o objeto que o modelo retorna, são os mesmos do endpoint HTTP e estão documentados em [Invocação de modelos](/pt-br/documentacao/plataforma/ai-inference/invocacao-de-modelos/).

> **nota**
>
> Com `azion dev`, `Azion.AI` é `undefined`, e uma chamada a `Azion.AI.run` lança `TypeError: Cannot read properties of undefined (reading 'run')`. Teste as chamadas de modelo em uma função com deploy feito.

---

## Parâmetros

`Azion.AI.run` recebe dois parâmetros, e a chamada é assíncrona: a função aguarda a chamada e lê a resposta do modelo no valor resolvido.

| Parâmetro           | Tipo   | Descrição                                                                           |
| ------------------- | ------ | ----------------------------------------------------------------------------------- |
| Id do modelo        | string | O id do modelo a ser invocado, na forma que a página do modelo indica.              |
| Corpo da requisição | object | Os campos da requisição para a operação. O id do modelo não é repetido dentro dele. |

A forma do id varia entre os modelos, então copie o id da própria página do modelo em [Modelos de AI](/pt-br/documentacao/plataforma/ai-inference/modelos/) em vez de derivá-lo do nome do modelo.

---

## Chame um modelo

Uma chamada a um modelo de chat dentro de uma função:

```ts
const modelResponse = await Azion.AI.run("Qwen/Qwen3-30B-A3B-Instruct-2507-FP8", {
  "stream": false,
  "messages": [
    { "role": "system", "content": "You are a helpful assistant." },
    { "role": "user", "content": "Name three European capitals." }
  ]
})
return modelResponse
```

---

## Valor de retorno

O valor resolvido é o objeto que o modelo retorna: um objeto `chat.completion` de um modelo de chat, uma `list` de embeddings de um modelo de embedding e os resultados ranqueados de um modelo de reranking. O texto gerado por um modelo de chat fica em `modelResponse?.choices?.[0]?.message?.content`, que é o conteúdo da primeira entrada de `choices`. Todos os campos das três formas estão listados em [Invocação de modelos](/pt-br/documentacao/plataforma/ai-inference/invocacao-de-modelos/#campos-da-resposta).

---

## Recursos relacionados

- [Invocação de modelos](/pt-br/documentacao/plataforma/ai-inference/invocacao-de-modelos.md): Os campos que o corpo da requisição aceita, o endpoint HTTP e o objeto que cada modelo retorna.
- [Modelos de AI](/pt-br/documentacao/plataforma/ai-inference/modelos.md): O id a passar e as capacidades que cada modelo declara para si.
- [AI Inference](/pt-br/documentacao/plataforma/ai-inference.md): O que o produto executa e quando usá-lo.
- [Functions](/pt-br/documentacao/plataforma/functions.md): O runtime que contém o binding e os limites que restringem uma chamada.
