Conceitos Básicos da Memória do Agente
Este artigo o orienta na instalação da Memória do Agente e na execução de operações básicas de memória, incluindo armazenamento e recuperação do contexto do usuário.
Pré-requisitos
Certifique-se de ter:
- Acesso ao Oracle AI Database (consulte Executar o Oracle AI Database Localmente)
- Python 3.10 ou posterior
Instalar o SDK
Para instalar a Memória do Agente, execute:
pip install "oracleagentmemory==26.4.0"
A instalação com pip extrai rodas binárias predefinidas em plataformas suportadas.
Inicializar a Instância de Memória
Crie uma instância OracleAgentMemory configurando o incorporador, o LLM e a conexão de banco de dados.
from oracleagentmemory.core.oracleagentmemory import OracleAgentMemory
from oracleagentmemory.apis.searchscope import SearchScope
from oracleagentmemory.core.embedders.embedder import Embedder
from oracleagentmemory.core.llms.llm import Llm
embedder = Embedder(model="YOUR_EMBEDDING_MODEL")
llm = Llm(model="YOUR_LLM")
db_pool = ... #an oracledb connection or connection pool
memory = OracleAgentMemory(connection=db_pool, embedder=embedder, llm=llm)
Armazenar Entradas de Memória
Comece criando um thread, adicionando mensagens e armazenando uma entrada de memória para o usuário.
messages = [
{
"role": "user",
"content": (
"Orange juice has become my favorite breakfast drink lately, "
"what can I pair it with?"
),
},
{
"role": "assistant",
"content": (
"Nice! Orange juice goes great with something savory. "
"Try eggs and toast, avocado toast, or a breakfast sandwich."
),
},
]
thread = memory.create_thread(user_id="user_123")
#add_messages will add messages to the DB and extract memories automatically
thread.add_messages(messages)
#add_memory adds memory to the DB
thread.add_memory("The user likes orange juice with breakfast.")
Recuperar Entradas de Memória
Pesquise memórias usando uma consulta no escopo do usuário.
results = memory.search(query="orange juice", scope=SearchScope(user_id="user_123"))
for result in results:
print(f"- [{result.record.record_type}] {result.content}")
Saída:
-[memory] The user likes orange juice with breakfast.
-[message] Orange juice has become my favorite breakfast drink lately, what can I pair it with?
-[message] Nice! Orange juice goes great with something savory.
Try eggs and toast,avocado toast, or a breakfast sandwich.
Observação: A saída mostrada é ilustrativa. Versões futuras podem retornar tipos de resultado adicionais, campos ou prescrições.
Compatibilidade do Modelo
A partir de abril de 2026, os seguintes Modelos de Linguagem Grande (LLMs) e Modelos de Incorporação são compatíveis com o oracleagentmemory.
LMs
Os seguintes Large Language Models (LLMs) foram confirmados como compatíveis.
vllm
openai/google/gemma-4-26B-A4B-itopenai/openai/gpt-oss-120b
oci
oci/google.gemini-2.5-flashoci/google.gemini-2.5-flash-liteoci/google.gemini-2.5-prooci/xai.grok-3oci/xai.grok-3-fastoci/xai.grok-3-minioci/xai.grok-3-mini-fastoci/xai.grok-4oci/xai.grok-4-1-fast-non-reasoningoci/xai.grok-4-1-fast-reasoningoci/xai.grok-4-fast-non-reasoningoci/xai.grok-4-fast-reasoningoci/xai.grok-4.20-non-reasoningoci/xai.grok-4.20-reasoningoci/xai.grok-code-fast-1oci/cohere.command-latestoci/cohere.command-a-03-2025oci/cohere.command-a-reasoning-08-2025oci/cohere.command-a-vision-07-2025oci/cohere.command-a-translate-08-2025oci/cohere.command-plus-latestoci/cohere.cohere.command-r-08-2024oci/cohere.command-r-plus-08-2024
gêmeos
gemini/gemini-3.1-flash-lite-previewgemini/gemini-3-flash-previewgemini/gemini-3.1-pro-preview
antrópico
anthropic/claude-opus-4-7anthropic/claude-opus-4-6anthropic/claude-sonnet-4-6anthropic/claude-haiku-4-5
openai
openai/gpt-4.1openai/gpt-4.1-miniopenai/gpt-4oopenai/gpt-5openai/gpt-5-miniopenai/gpt-5.1openai/gpt-5.2openai/gpt-5.4openai/gpt-5.4-mini
Incorporações
Os seguintes Modelos de Incorporação foram confirmados como compatíveis.
host_vllm
hosted_vllm/Snowflake/snowflake-arctic-embed-l-v2.0
oci
oci/cohere.embed-english-v3.0oci/cohere.embed-english-light-v3.0oci/cohere.embed-multilingual-v3.0oci/cohere.embed-v4.0
gêmeos
gemini/gemini-embedding-001gemini/gemini-embedding-2-preview
openai
openai/text-embedding-3-largeopenai/text-embedding-3-small