modelos

Mistral: Codestral Embed 2505

Markdown · JSON

Mistral: Codestral Embed 2505

Codestral Embed 2505 representa código e consultas em linguagem natural como vetores para pesquisa em repositórios e recuperação para assistentes de programação. O fabricante documenta um contexto de 8192 tokens, dimensões configuráveis até 3072 e formatos de saída de vírgula flutuante, inteiros ou bits compactados.

Sobre o modelo

Esta descrição apresenta as capacidades do modelo. As entradas, saídas e opções disponíveis no Ailoot para o método selecionado estão indicadas abaixo.

Codestral Embed 2505 é o modelo de embeddings da Mistral AI especializado em recuperação de código. Recebe texto com código-fonte ou uma consulta sobre código em linguagem natural e devolve vetores numéricos. O fabricante posiciona-o para pesquisa em repositórios, recuperação de contexto para assistentes de programação, análise de similaridade e duplicados e agrupamento de código pela sua funcionalidade ou estrutura. O seu identificador de edição fixa é codestral-embed-2505.

Entrada e representação

Uma entrada de código pode ser uma função, um fragmento de código-fonte relacionado ou outra unidade significativa de um repositório. Uma consulta em linguagem natural pode descrever o comportamento a localizar, em vez de indicar o símbolo exato. O embedding representa essa entrada para comparação; o modelo não gera uma nova implementação nem executa o código que recebe.

A publicação oficial documenta um contexto de entrada completo de 8192 tokens. Para recuperação, o fabricante recomenda fragmentos com cerca de 3000 caracteres e uma sobreposição de 1000 caracteres, observando que fragmentos maiores podem prejudicar a recuperação. Estas são recomendações de preparação para recuperação, não um limite de tokens de 3000 caracteres. Mantenha o ficheiro, o símbolo e a localização de origem associados a cada elemento preparado, para que a aplicação possa devolver o código relevante após a pesquisa.

Precisão e dimensões de saída

O guia de embeddings de código documenta os tipos de saída float, int8, uint8, binary e ubinary. Float utiliza valores de precisão simples de 32 bits. Int8 utiliza inteiros de 8 bits com sinal entre -128 e 127, enquanto uint8 utiliza valores de 8 bits sem sinal entre 0 e 255. Binary e ubinary armazenam valores quantizados de um único bit em elementos compactados de 8 bits, utilizando, respetivamente, contentores com ou sem sinal.

A representação de bits compactados altera o comprimento da lista devolvida: o guia descreve um elemento compactado por cada oito dimensões lógicas do embedding. Uma comparação que tem em conta o formato é, por isso, diferente de tratar os bytes compactados como coordenadas comuns de vírgula flutuante. Preserve o tipo escolhido com o vetor e utilize a mesma representação para o código indexado e a respetiva consulta.

A documentação dos parâmetros indica uma dimensão predefinida de 1536 e um máximo de 3072. As dimensões estão ordenadas por relevância, e o fabricante descreve a conservação do primeiro número escolhido de dimensões como forma de selecionar o tamanho da representação. Escolha a dimensão de forma consistente para a coleção armazenada e as novas consultas. Uma representação mais curta ou quantizada altera o comportamento de armazenamento e comparação; não aumenta o contexto de entrada nem transforma o modelo num gerador de código.

Programação aumentada por recuperação

O primeiro caso de utilização da publicação é recuperar contexto para completar, editar ou explicar código. Prepare unidades de código significativas e conserve a revisão do repositório e os identificadores de origem. Uma pergunta sobre o tratamento de um erro específico pode recuperar funções relacionadas, que a aplicação fornece depois a um modelo de programação juntamente com o pedido real de alteração.

Um resultado prático é um conjunto ordenado de excertos de código-fonte com caminhos de ficheiros, símbolos e o conteúdo necessário para compreender o seu comportamento. Os excertos recuperados podem ser abertos por um programador ou passados a um assistente. Codestral Embed realiza a etapa de representação; um componente separado seleciona os resultados e um modelo de geração escreve a explicação ou o código proposto.

Pesquisa semântica e similaridade

O fabricante descreve pesquisa de código com consultas em linguagem natural ou em código. Um programador pode pedir a implementação de um comportamento mesmo quando o nome da função difere da formulação do pedido. Inclua o comportamento e as condições que distinguem a implementação pretendida; uma consulta geral sobre um subsistema inteiro pode recuperar material relacionado sem resolver a pergunta específica.

A publicação também descreve a localização de código quase duplicado ou funcionalmente semelhante apesar de diferenças lexicais. Esses resultados podem ajudar a localizar uma implementação reutilizável ou identificar código que precisa de revisão adicional. A similaridade no espaço de embeddings é um sinal para examinar o código-fonte; não demonstra que dois fragmentos tenham comportamento idêntico para todas as entradas.

Agrupamento, análise e comparação

Os embeddings de código podem ser utilizados para agrupar código por funcionalidade ou estrutura e examinar a composição de um repositório. Mantenha os excertos originais e os identificadores disponíveis, para que um grupo possa ser interpretado por uma pessoa ou por uma etapa posterior da aplicação. Um cluster é um agrupamento baseado em representações, não uma descrição de arquitetura automaticamente verificada.

Os exemplos de vetores de vírgula flutuante do fabricante utilizam embeddings normalizados com norma unitária, para os quais a similaridade do cosseno, o produto escalar e a distância euclidiana produzem ordenações consistentes. A saída quantizada e de bits compactados deve manter o seu próprio tratamento de formato, em vez de herdar uma suposição sobre coordenadas brutas de vírgula flutuante. O endpoint publicado também conserva índices de entrada, ajudando a preservar a ligação entre cada vetor e o seu elemento de origem.

Edição e limites práticos

A página exata do modelo enumera fluxos de embeddings e lotes com uma designação de contexto de 8k, enquanto a publicação indica o valor de 8192 tokens. Preserve a edição com nome 2505, a dimensão de saída e o tipo escolhidos ao longo do fluxo da coleção e das consultas. Esta é uma saída vetorial orientada a código, distinta do completamento de texto de Codestral e do modelo textual Mistral Embed de dimensão fixa.

Prepare unidades de código que contenham o comportamento relevante, mantenha as suas localizações de origem e formule a pergunta a localizar. O artefacto útil é uma representação recuperável ligada a código real, que apoia a etapa seguinte de explicação, edição ou revisão por um programador sem realizar essa etapa por si só.

Ailoot Ultra · Embeddings POST /v1/embeddings mistralai/codestral-embed-2505

mistralai/codestral-embed-2505

Mistral /mistralai/codestral-embed-2505

Introdução

Codestral Embed 2505 representa código e consultas em linguagem natural como vetores para pesquisa em repositórios e recuperação para assistentes de programação. O fabricante documenta um contexto de 8192 tokens, dimensões configuráveis até 3072 e formatos de saída de vírgula flutuante, inteiros ou bits compactados.

Entradas aceites
Texto · token_ids
Resultados
embedding

Disponível no Ailoot · entradas e métodos

Ailoot Ultra · Embeddings POST /v1/embeddings
Entrada
text, token_ids
Saída
embedding
Contexto
8192 tokens
Formato de saída
json
CampoTipoRequisitoValores e limitesPredefinição
CampomodelTipostringRequisitoObrigatórioValores e limites
mistralai/codestral-embed-2505
Predefinição—
CampoinputTipostring|string[]|integer[]|integer[][]RequisitoObrigatórioValores e limites
Número mínimo de elementos: 1
Condições: Lote homogéneo não vazio. Os IDs de tokens são números inteiros não negativos.
Orçamento de entrada: Máximo: 8192 · Unidade de texto: bytes UTF8 · Unidade de tokens: elementos do array de tokens
Predefinição—
Campoencoding_formatTipostringRequisitoOpcionalValores e limites
float
Predefiniçãofloat
CampodimensionsTipointegerRequisitoNão suportadoValores e limites
Mínimo: 1
Predefinição—
CampouserTipojson_valueRequisitoOpcionalValores e limites
Condições: A fonte permite este campo de metadados JSON; a semântica exata a montante depende do modelo.
Predefinição—
Camposession_idTipojson_valueRequisitoOpcionalValores e limites
Condições: A fonte permite este campo de metadados JSON; a semântica exata a montante depende do modelo.
Predefinição—
CampotraceTipojson_valueRequisitoOpcionalValores e limites
Condições: A fonte permite este campo de metadados JSON; a semântica exata a montante depende do modelo.
Predefinição—
CampoproviderTipoobjectRequisitoOpcionalValores e limites
Condições: provider.options rejeitado
Predefinição—
Combinações de materiais de entrada

text_to_embedding

Parâmetros e ciclo de vida do método
ParâmetroContrato
Parâmetrocontent_typeContratoapplication/json
ParâmetrorequiredContratomodel, input
Parâmetroinput_shapesContratostring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]
Parâmetroencoding_formatContratofloat
Parâmetrodimensions_overrideContratofalse
Parâmetromax_input_budget_unitsContrato8192
Parâmetromultimodal_objectsContratofalse
Parâmetromaterial_typesContratotext, token_ids

Ciclo de vida: synchronous_json

Guarde o índice e a dimensão de cada vetor.

O nome do modelo multimodal não permite objetos de imagem neste caminho exato.

Tarifários

As referências tarifárias não acrescentam opções ao pedido. Os parâmetros suportados constam do método selecionado.

Modo rápido
Tarifa normal Quando o modo rápido está selecionado
Modo flex
Tarifa normal Quando o modo flex está selecionado
Esforço máximo de raciocínio
Tarifa normal Quando o esforço máximo de raciocínio usa o ajuste predefinido (default)

Tarifas Ailoot

Preços por configuração

ConfiguraçãoTabela de tarifasCusto
ConfiguraçãoTarifas base dos tokensTabela de tarifasTarifa baseCusto
Entrada · Tokens de entrada $0.0003 / 1K tokens
Saída · Tokens de saída $0 / 1K tokens
Entrada · Leitura da cache — / 1K tokens
Entrada · Escrita na cache — / 1K tokens
Entrada · Escrita na cache, 1 hora — / 1K tokens

O Ailoot reserva um montante estimado antes de um pedido. Após o resultado, liquida o custo final com base na utilização medida. No streaming, a liquidação usa o registo final de utilização. Como funcionam a reserva e a liquidação →

Exemplos de pedidos

Ailoot Ultra · Embeddings

curlPython SDK
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "mistralai/codestral-embed-2505", "input": ["First document", "Second document"]}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("data",[]): print(json.dumps({"index":x.get("index"),"embedding":x.get("embedding")}))
PY_RESULT
from openai import OpenAI
import os

client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.embeddings.create(model='mistralai/codestral-embed-2505',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)

Receber e guardar os resultados

Ailoot Ultra · Embeddings

json

Guardar todos os resultados concluídos

Guarde cada resposta, ficheiro e parte de conteúdo devolvidos na íntegra.

Guarde cada vetor com o respetivo índice. O número de vetores tem de ser igual ao número de entradas; as dimensões têm de ser consistentes.

Se for necessário verificar a resposta original

Não é introduzido nenhum endpoint de tarefas de embeddings.

Campos da resposta
CampoTipo
CampoobjectTipostring
CampomodelTipostring
Campodata[].indexTipointeger
Campodata[].embeddingTipofinite float[]
CampousageTipoobject
Erros e passos seguintes
RespostaCondiçãoPasso seguinte
Resposta400 · invalid_request_errorCondiçãoCampos obrigatórios, representação do material ou valor do parâmetro inválidosPasso seguinteCorrija os campos indicados antes de um novo pedido de criação.

Aliases

Aliases do modelo

Ailoot Ultra mistralai/codestral-embed-2505

Aliases dos caminhos dos métodos

Use os caminhos dos métodos indicados acima.

IDs de chamada relacionados

mistralai/codestral-embed-2505

FAQ · Mistral: Codestral Embed 2505
Que entradas e resultados estão disponíveis?

POST /v1/embeddings · mistralai/codestral-embed-2505: text, token_ids → embedding

Que campos utiliza o pedido?

POST /v1/embeddings · mistralai/codestral-embed-2505: model, input, encoding_format, provider

Que limites se aplicam?

POST /v1/embeddings · mistralai/codestral-embed-2505: ctx: 8192; input.budget.maximum: 8192 (bytes UTF8); input.min_items: 1

Mais detalhes

Ligue o Ailoot ao Claude Code, OpenCode, Hermes ou à sua aplicação.

A empresa e a sua carteira de projetos

A empresa e a sua carteira de projetos: milhões de clientes; vendas mensais na ordem dos milhares de milhões.

Compre tokens com desconto.

Desconto por subscrição para trabalho regular. Códigos promocionais — até 50% na compra de tokens.

Subscrição
Escolha um plano com desconto para os pedidos regulares.
Código promocional até 50%
Introduza o código na compra. O preço é recalculado conforme a campanha em vigor.
Custos no histórico
O modelo, os tokens e o montante são guardados para cada pedido.

Escolher subscrição · Ver preços dos modelos

Ligue a API ao produto que vende.

SaaS, aplicações e bots — ao abrigo da oferta e do contrato de licença Ailoot. Para revenda, peça uma licença de revendedor.

Aplicação comercial
Integre geração de texto, imagens, vídeo e som nas funcionalidades pagas do seu serviço.
Licença de revendedor
Envie uma descrição do projeto e do modelo de acesso. Peça condições escritas de utilização e revenda.
Documentos no site
A oferta, o contrato de licença e a política de tratamento de dados estão disponíveis antes da ligação.

Pedir licença de revendedor · Oferta e contrato de licença