Referência da API REST do modelo básico
Este artigo fornece API informações gerais sobre Databricks o Foundation Model APIs e os modelos que ele suporta. As APIs do Foundation Model foram projetadas para serem semelhantes à API REST da OpenAI para facilitar a migração de projetos existentes. Tanto o endpoint de pagamento por tokens quanto o de provisionamento aceitam o mesmo formato de solicitação REST API .
ponto final
O Foundation Model APIs oferece suporte ao endpoint pay-per-tokens e ao endpoint de provisionamento da Taxa de transferência.
Um endpoint pré-configurado está disponível em seu workspace para cada modelo compatível com pay-per-tokens, e os usuários podem interagir com esse endpoint usando solicitações HTTP POST. Consulte Pay-per-tokens para ver os modelos compatíveis.
provisionamento O ponto de extremidade da taxa de transferência pode ser criado usando o site API ou a UI de serviço. Esses endpoints suportam vários modelos por endpoint para testes A/B, desde que ambos os modelos atendidos exponham o mesmo formato API. Por exemplo, os dois modelos são modelos de bate-papo. Consulte POST /api/2.0/serving-endpoint para os parâmetros de configuração do endpoint.
As solicitações e respostas usam JSON, e a estrutura exata do JSON depende do tipo de tarefa de um endpoint. O chat e o endpoint de conclusão suportam respostas de transmissão.
Uso
As respostas incluem uma submensagem usage
que informa o número de tokens na solicitação e na resposta. O formato dessa submensagem é o mesmo em todos os tipos de tarefa.
campo | Tipo | Descrição |
---|---|---|
| Integer | Número de tokens gerados. Não incluído na incorporação de respostas. |
| Integer | Número de tokens do(s) prompt(s) de entrada. |
| Integer | Número total de tokens. |
Para modelos como databricks-meta-llama-3-3-70b-instruct
, um prompt do usuário é transformado usando um padrão de prompt antes de ser passado para o modelo. Para o endpoint pay-per-tokens, um prompt do sistema também pode ser adicionado. prompt_tokens
inclui todo o texto adicionado pelo nosso servidor.
Chat tarefa
As tarefas de bate-papo são otimizadas para conversas de várias voltas com um modelo. A resposta do modelo fornece a próxima mensagem assistant
na conversa. Consulte POST /serving-endpoint/{name}/invocations para consultar os parâmetros de endpoint.
Solicitação de bate-papo
campo | Padrão | Tipo | Descrição |
---|---|---|---|
| Lista de mensagens de bate-papo | Obrigatório . Uma lista de mensagens representando a conversa atual. | |
|
|
| O número máximo de tokens a serem gerados. |
|
| Booleana | transmite respostas de volta para um cliente para permitir resultados parciais para solicitações. Se esse parâmetro for incluído na solicitação, as respostas serão enviadas usando o padrão de eventos enviados pelo servidor. |
|
| Flutuar em [0,2] | A temperatura de amostragem. 0 é determinístico e valores mais altos introduzem mais aleatoriedade. |
|
| Flutuar em (0,1] | O limite de probabilidade usado para a amostragem do núcleo. |
|
|
| Define o número de k tokens mais prováveis a serem usados na filtragem top-k. Defina esse valor como 1 para tornar as saídas determinísticas. |
| [] | strings ou List[strings] | O modelo para de gerar mais tokens quando qualquer uma das sequências em |
| 1 | Número inteiro maior que zero | A API retorna |
|
| strings ou ToolChoiceObject | Usado somente em conjunto com o campo |
|
| Uma lista de | |
|
| Um objeto especificando o formato que o modelo deve gerar. Os tipos aceitos são | |
|
| Booleana | Esse parâmetro indica se o senhor deve fornecer a log probabilidade de um token ser amostrado. |
|
| Integer | Esse parâmetro controla o número de candidatos a tokens mais prováveis para retornar log probabilidades em cada etapa de amostragem. Pode ser de 0 a 20. |
ChatMessage
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . O papel do autor da mensagem. Pode ser |
| strings ou List[ContentItem] | Necessário para tarefas de chat que não envolvam chamadas de ferramentas. O conteúdo pode ser uma cadeia de caracteres ou uma matriz que contém uma série de elementos multimodais em uma única interação de bate-papo. Esses elementos seguem a sequência na qual são processados como entradas ou saídas pelos modelos. Essa entrada de matriz foi projetada especificamente para uso com modelos proprietários acessíveis somente por meio de fornecedores de modelos externos. Atualmente, somente os modelos Claude são suportados. Use conteúdo do tipo string para outros provedores de modelos externos, modelos de código aberto (Llama) ou modelos hospedados por clientes em Databricks. |
| A lista de | |
| String | Quando |
A função system
só pode ser usada uma vez, como a primeira mensagem em uma conversa. Ele substitui o prompt do sistema default do modelo.
ContentItem
ContentItem
é um dos seguintes tipos de conteúdo: TextContent
, ReasoningContent
, DocumentContent
ou ImageContent
TextContent
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . Deve ser texto. |
| String | Conteúdo de texto obrigatório . |
| Lista [Citação] | Informação de citação opcional. Veja a tabela abaixo. |
Os campos de citação são os seguintes:
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . Deve ser |
| String | O texto citado no documento. |
| Integer | O índice do documento citado. |
| String | O título do documento citado. |
| Integer | O índice inicial do texto citado no documento. |
| Integer | O índice final do texto citado no documento. |
ImageContent
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . Deve ser um |
| URL da imagem | Equivalente ao objeto image_url do OpenAI. |
Os campos ImageURL estão abaixo:
campo | Tipo | Descrição |
---|---|---|
| String | Um URL da imagem ou os dados da imagem codificados em base64. |
| String | Especifica o nível de detalhe da imagem. |
ReasoningContent
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . Deve ser um |
| Lista [Resumo] | Raciocínio do conteúdo do texto. O resumo pode ser |
TextSummary
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . Deve ser um |
| String | Um breve resumo do raciocínio usado pelo modelo ao gerar a resposta. |
| String | Criptografia opcional tokens para verificar a autenticidade dos dados. |
EncryptedTextSummary
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . Deve ser um |
| String | Conteúdo de texto criptografado que não é legível por humanos por motivos de segurança. |
DocumentContent
DocumentContent é somente para solicitações.
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . Deve ser |
| String | Título do documento. |
| String | Descrição do documento. |
| Origem | Obrigatório . Especifica mais informações sobre o documento, incluindo formato e conteúdo. |
| Map[strings, bool] | Mapa com um único campo “ativado” que mapeia para um bool indicando se as citações devem ser habilitadas para o documento. |
Source
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . Deve ser |
| String | Obrigatório para PDF e tipo de texto. - Deve ser |
| String | Obrigatório para PDF e texto. Os dados que contêm a fonte do documento. |
| strings ou List[TextContent] ou List[ImageContent] | Obrigatório para o tipo |
| String | Obrigatório para o tipo URLPDFSource. O URL do documento PDF. |
ToolCall
Uma sugestão de ação de chamada de ferramenta feita pelo modelo. Consulte Chamada de função em Databricks.
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . Um identificador exclusivo para essa sugestão de chamada de ferramenta. |
| String | Obrigatório . Somente |
| Obrigatório . Uma chamada de função sugerida pelo modelo. |
FunctionCallCompletion
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório. O nome da função recomendada pelo modelo. |
| Objeto | Obrigatório. Argumentos para a função como um dicionário JSON serializado. |
ToolChoiceObject
Consulte Chamada de função em Databricks.
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . O tipo da ferramenta. Atualmente, somente |
| Objeto | Obrigatório . Um objeto que define qual ferramenta chamar no formato |
ToolObject
Consulte Chamada de função em Databricks.
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . O tipo da ferramenta. Atualmente, somente |
| Obrigatório . A definição da função associada à ferramenta. |
FunctionObject
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . O nome da função a ser chamada. |
| Objeto | Obrigatório . A descrição detalhada da função. O modelo usa essa descrição para entender a relevância da função para o prompt e gerar as chamadas da ferramenta com maior precisão. |
| Objeto | Os parâmetros que a função aceita, descritos como um objeto de esquema JSON válido. Se a ferramenta for chamada, a chamada da ferramenta será adequada ao esquema JSON fornecido. A omissão de parâmetros define uma função sem nenhum parâmetro. O número de |
| Booleana | Se deve habilitar a adesão estrita ao esquema ao gerar a chamada de função. Se definido como |
ResponseFormatObject
Consulte Saídas estruturadas em Databricks.
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . O tipo de formato de resposta que está sendo definido. |
| Obrigatório . O esquema JSON a ser seguido se |
JsonSchemaObject
Consulte Saídas estruturadas em Databricks.
campo | Tipo | Descrição |
---|---|---|
| String | Obrigatório . O nome do formato de resposta. |
| String | Uma descrição da finalidade do formato de resposta, usada pelo modelo para determinar como responder no formato. |
| Objeto | Obrigatório . O esquema do formato de resposta, descrito como um objeto de esquema JSON. |
| Booleana | Se deve habilitar a adesão estrita ao esquema ao gerar a saída. Se definido como |
Resposta do chat
Para solicitações sem transmissão, a resposta é um único objeto de conclusão de chat. Para solicitações de transmissão, a resposta é um text/event-stream
em que cada evento é um objeto de bloco de conclusão. A estrutura de nível superior de objetos de conclusão e fragmentação é quase idêntica: somente choices
tem um tipo diferente.
campo | Tipo | Descrição |
---|---|---|
| String | Identificador exclusivo para a conclusão do bate-papo. |
| List[ChatCompletionChoice] ou List[ChatCompletionChunk] (transmissão) | Lista de textos de conclusão de bate-papo. As opções |
| String | O tipo de objeto. Igual a |
| Integer | A hora em que a conclusão do bate-papo foi gerada em segundos. |
| String | A versão do modelo usada para gerar a resposta. |
| metadados de uso de tokens. Pode não estar presente nas respostas de transmissão. |
ChatCompletionChoice
campo | Tipo | Descrição |
---|---|---|
| Integer | O índice da escolha na lista de opções geradas. |
| Uma mensagem de conclusão do bate-papo retornada pela modelo. O papel será | |
| String | O motivo pelo qual o modelo parou de gerar tokens. |
| String | Ao usar modelos proprietários de provedores de modelos externos, as APIs do provedor podem incluir metadados adicionais nas respostas. A Databricks filtra essas respostas e retorna apenas um subconjunto dos campos originais do provedor. O |
ChatCompletionChunk
campo | Tipo | Descrição |
---|---|---|
| Integer | O índice da escolha na lista de opções geradas. |
| Uma mensagem de conclusão de bate-papo que faz parte das respostas de transmissão geradas pelo modelo. É garantido que apenas o primeiro pedaço tenha | |
| String | O motivo pelo qual o modelo parou de gerar tokens. Somente o último pedaço terá isso preenchido. |
Tarefa de conclusão
A tarefa de conclusão de texto serve para gerar respostas a um único prompt. Ao contrário do Chat, essa tarefa suporta muitas entradas: vários prompts independentes podem ser enviados em uma única solicitação. Consulte POST /serving-endpoint/{name}/invocations para consultar os parâmetros de endpoint.
Solicitação de conclusão
campo | Padrão | Tipo | Descrição |
---|---|---|---|
| strings ou List[strings] | Obrigatório . As instruções para o modelo. | |
|
|
| O número máximo de tokens a serem gerados. |
|
| Booleana | transmite respostas de volta para um cliente para permitir resultados parciais para solicitações. Se esse parâmetro for incluído na solicitação, as respostas serão enviadas usando o padrão de eventos enviados pelo servidor. |
|
| Flutuar em [0,2] | A temperatura de amostragem. 0 é determinístico e valores mais altos introduzem mais aleatoriedade. |
|
| Flutuar em (0,1] | O limite de probabilidade usado para a amostragem do núcleo. |
|
|
| Define o número de k tokens mais prováveis a serem usados na filtragem top-k. Defina esse valor como 1 para tornar as saídas determinísticas. |
|
|
| Para tempos limite e erros de comprimento de contexto excedido. Uma das opções: |
| 1 | Número inteiro maior que zero | A API retorna |
| [] | strings ou List[strings] | O modelo para de gerar mais tokens quando qualquer uma das sequências em |
|
| String | Uma cadeia de caracteres que é anexada ao final de cada conclusão. |
|
| Booleana | Retorna o prompt junto com a conclusão. |
|
| Booleana | Se |
Resposta de conclusão
campo | Tipo | Descrição |
---|---|---|
| String | Identificador exclusivo para o preenchimento do texto. |
| Uma lista de conclusões de texto. Para cada prompt passado, as opções | |
| String | O tipo de objeto. Igual a |
| Integer | A hora em que a conclusão foi gerada em segundos. |
| metadados de uso de tokens. |
CompletionChoice
campo | Tipo | Descrição |
---|---|---|
| Integer | O índice do prompt na solicitação. |
| String | A conclusão gerada. |
| String | O motivo pelo qual o modelo parou de gerar tokens. |
Tarefa de incorporação
A tarefa de incorporação mapeia a entrada strings em vetores de incorporação. Muitas entradas podem ser agrupadas em cada solicitação. Consulte POST /serving-endpoint/{name}/invocations para consultar os parâmetros de endpoint.
Solicitação de incorporação
campo | Tipo | Descrição |
---|---|---|
| strings ou List[strings] | Obrigatório . O texto de entrada a ser incorporado. Pode ser uma cadeia de caracteres ou uma lista de strings. |
| String | Uma instrução opcional a ser passada para o modelo de incorporação. |
As instruções são opcionais e altamente específicas do modelo. Por exemplo, os autores do The BGE não recomendam nenhuma instrução ao indexar blocos e recomendam o uso da instrução "Represent this sentence for searching relevant passages:"
para consultas de recuperação. Outros modelos, como o Instructor-XL, suportam uma ampla gama de instruções strings.
Resposta de incorporações
campo | Tipo | Descrição |
---|---|---|
| String | Identificador exclusivo para a incorporação. |
| String | O tipo de objeto. Igual a |
| String | O nome do modelo de incorporação usado para criar a incorporação. |
| O objeto de incorporação. | |
| metadados de uso de tokens. |
EmbeddingObject
campo | Tipo | Descrição |
---|---|---|
| String | O tipo de objeto. Igual a |
| Integer | O índice da incorporação na lista de incorporações gerada pelo modelo. |
| Lista [Float] | O vetor de incorporação. Cada modelo retornará um vetor de tamanho fixo (1024 para BGE-Large) |