Reúne contexto de conversa a partir de um conjunto de fontes explícito, configurado por fonte — cada fonte declara seu próprio modo de recuperação (texto, semântica, híbrido), filtro de metadados e contagem de candidatos. Os resultados são mesclados e deduplicados entre fontes, opcionalmente reclassificados, depois formatados e orçados como build_context. O escopo do projeto é realizado pelo parâmetro route id path e a organização é derivada desse projeto. Forneça uma query não vazia, o user_id cuja memória montar e uma lista de fontes não vazias.
corpo, corpo
Obrigatório
Solicitação de compilação de contexto por fonte
-
MaxTokens é o orçamento bruto de construção de contexto (não um custo de busca), interpretado como build_context: o servidor subtrai uma reserva de formatação de 500-token e, em seguida, seleciona avidamente chunks de memória inteiros que se encaixam.
O valor mínimo é
1. -
A Reclassificação reordena os resultados mesclados por uma reclassificação de relevância quando disponível.
-
Fontes é o conjunto explícito, configurado por fonte para pesquisar; o servidor de memória força os limites de contagem (1..MAX_CONText2_SOURCES), os limites top_k de cada origem e a regra de origem duplicada.
Respostas
-
Versão de API não permitida ou malformada, uma operação indisponível no contrato publicado selecionado ou uma representação inaceitável (incluindo parâmetros de tipo de mídia não suportados ou SSE excluído). Falhas existentes de autenticação, autorização e limite de taxa têm precedência.
-
Carga útil de contexto montada com metadados por fonte
-
Corpo da solicitação inválido ou user_id/query/sources ausente
-
Credenciais ausentes ou inválidas
-
O chamador não tem acesso de leitura ao projeto
-
Erro interno
-
Serviço de memória inacessível
curl \
--request POST 'https://agentengine.mongodb.com/api/v1/projects/{id}/memory/retrieval/context-from-sources' \
--header "Authorization: $API_KEY" \
--header "Content-Type: application/json" \
--data '{
"format_style": "string",
"include_memories": true,
"max_tokens": 42,
"model_type": "string",
"query": "string",
"query_embedding": [
42.0
],
"rerank": true,
"session_id": "string",
"sources": [
{
"metadata_filter": {},
"mode": "string",
"source": "string",
"top_k": 42
}
],
"user_id": "string",
"visibility": "string"
}'
{
"format_style": "string",
"include_memories": true,
"max_tokens": 42,
"model_type": "string",
"query": "string",
"query_embedding": [
42.0
],
"rerank": true,
"session_id": "string",
"sources": [
{
"metadata_filter": {},
"mode": "string",
"source": "string",
"top_k": 42
}
],
"user_id": "string",
"visibility": "string"
}
{
"detail": "This operation is not available in API version 2026-09-20-preview.",
"error": 406,
"errorCode": "OPERATION_NOT_IN_API_VERSION",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
{
"detail": "This operation supports text/event-stream, which the Accept header excludes. Remove unsupported media-type parameters or accept this type with a positive q value.",
"error": 406,
"errorCode": "UNACCEPTABLE_MEDIA_TYPE",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
{
"detail": "The requested API version is not supported. Supported versions: 2026-09-20-preview.",
"error": 406,
"errorCode": "UNSUPPORTED_API_VERSION",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
{
"detail": "This operation is not available in API version 2026-09-20-preview.",
"error": 406,
"errorCode": "OPERATION_NOT_IN_API_VERSION",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
{}
{}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}