google / google/adk-java

VertexAiMemoryBankService

Abierto
#448 6 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Java
Estrellas
1.7k
Forks
420
Merge medio
4 d 12 h
PR fusionados (30 d)
31

Descripción

I’m interested in using **VertexAiMemoryBankService** for long-term memory when working with an agent through ADK. I see that the VertexAiMemoryBankService https://github.com/google/adk-python/blob/632bf8b0bcf18ff4e4505e4e5f4c626510f366a2/src/google/adk/memory/vertex_ai_memory_bank_service.py#L38 is implemented in the Python version of ADK, but it’s not yet available in the Java version.

By analogy with the Python version, I can implement my own Java version of VertexAiMemoryBankService (implements BaseMemoryService). I can also create a custom version of **VertexAiRunner** based on `com.google.adk.runner.Runner#Runner(com.google.adk.agents.BaseAgent, java.lang.String, com.google.adk.artifacts.BaseArtifactService, com.google.adk.sessions.BaseSessionService, com.google.adk.memory.BaseMemoryService)`.

**My question is the following:** is it enough to simply implement my own version of **VertexAiMemoryBankService** and pass it into the **Runner** constructor, since the Java ADK already has the functionality for working with long-term memory implemented at this point? In other words, does the Java ADK already know how to add and retrieve the necessary information from memory by itself for **LlmAgent**? Or, apart from implementing my own VertexAiMemoryBankService and passing it to the Runner constructor, would I need to do anything else to make it work? What is the current state of this memory-related functionality as of now?

It seems to me that, in addition to providing the VertexAiMemoryBankService to the agent, I also need to provide the **search_memory** tool (so that the agent can search the memory by itself) and add a callback for writing to the Memory Bank after each user prompt and LLM response using after_agent_callback=[auto_save_to_memory_callback]? Both, and both the **search_memory** tool and the **auto_save_to_memory_callback** should internally use the corresponding methods from **VertexAiMemoryBankService**, right?

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.