Skip to main content

llama-index memory bedrock agentcore integration

Project description

LlamaIndex Memory Integration: Bedrock AgentCore

Installation

To install the required package, run:

%pip install llama-index-memory-bedrock-agentcore

Bedrock AgentCore Setup Pre-Requisites

  1. AWS account with Bedrock AgentCore access
  2. Configured AWS credentials (boto3)
  3. Created memory resource in AWS Bedrock AgentCore
  4. Required IAM permissions:
    1. bedrock-agentcore:CreateEvent
    2. bedrock-agentcore:ListEvents
    3. bedrock-agentcore:RetrieveMemories

Sample Usage

  1. Create an instance of AgentCoreMemoryContext to setup the memory resources that you will need for building an agent.
    1. Actor id → This is a required field and it is the identifier of the actor (could be an agent or the end-user).
    2. Memory id → This is a required field and it is the identifier of the memory store.
    3. Session id → This is a required field and it is the unique identifier of a particular conversation.
    4. Namespace → This is an optional field and it is used to determine how to extract long term memories. By default it will use “/” as the namespace.
    5. Memory strategy id → This is an optional field and it is the identifier for a memory strategy.
context = AgentCoreMemoryContext(
    actor_id="<INSERT_HERE>",
    memory_id="<INSERT_HERE>",
    session_id="<INSERT_HERE>",
    namespace="<INSERT_HERE>",
    memory_strategy_id="<INSERT_HERE>",
)
agentcore_memory = AgentCoreMemory(context=context)
  1. This is an example of how to create a FunctionAgent in LlamaIndex. This sample adds a tool & the Claude Sonnet 4 LLM to the agent’s initialization.

If you would like to use this tool, the run the following command

%pip install llama-index-tools-yahoo-finance
from llama_index.llms.bedrock_converse import BedrockConverse
from llama_index.core.agent.workflow import FunctionAgent
from llama_index.tools.yahoo_finance import YahooFinanceToolSpec

llm = BedrockConverse(model="us.anthropic.claude-sonnet-4-20250514-v1:0")

finance_tool_spec = YahooFinanceToolSpec()
agent = FunctionAgent(
    tools=finance_tool_spec.to_tool_list(),
    llm=llm,
)

Here's a simpler example that doesn't utilize a third party tool

from llama_index.core.tools import FunctionTool
from llama_index.core.agent.workflow import FunctionAgent


def call_fn(name: str):
    """Call the provided name.
    Args:
        name: str (Name of the person)
    """
    print(f"Calling... {name}")


def email_fn(name: str):
    """Email the provided name.
    Args:
        name: str (Name of the person)
    """
    print(f"Emailing... {name}")


call_tool = FunctionTool.from_defaults(fn=call_fn)
email_tool = FunctionTool.from_defaults(fn=email_fn)

agent = FunctionAgent(
    tools=[call_tool, email_tool],
    llm=llm,
)
  1. Invoke the agent to start conversations

This sample will invoke the tool and store the events in AgentCore Memory

response = await agent.run(
    "What is the stock price of Amazon?", memory=agentcore_memory
)

After events are stored, you can then prompt the agent to answer any queries based on the memory records

response = await agent.run(
    "What stock prices have I asked for?", memory=agentcore_memory
)

References

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

llama_index_memory_bedrock_agentcore-0.1.0.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file llama_index_memory_bedrock_agentcore-0.1.0.tar.gz.

File metadata

File hashes

Hashes for llama_index_memory_bedrock_agentcore-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e31eebb85e16001e10e6dcc52dfe781091164b37ce3c6a6b2a88e506e1fb4f32
MD5 e08a49116f48131f7e7b55dc48c03a40
BLAKE2b-256 d3c51b4f14e3ef7c4177705fe782b3a70028a47a25ee1a5a1a6d4df1eed786e4

See more details on using hashes here.

File details

Details for the file llama_index_memory_bedrock_agentcore-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for llama_index_memory_bedrock_agentcore-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9ae5607c86c4a63406151dfb960e73ede309b33f7e62a745afe280a138bb5218
MD5 411af3405cd6f341affec80b0f1183a2
BLAKE2b-256 be6cc63f07c7d486c378692707ee02959dd592e34a7899989a6ee442742f8bc9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page