152 lines
4.1 KiB
Markdown
152 lines
4.1 KiB
Markdown
# Vertex AI Memory Bank 访问解决方案
|
||
|
||
## 问题说明
|
||
|
||
您遇到的"打不开"问题是因为 **Vertex AI Memory Bank 目前没有独立的Web控制台界面**。Memory Bank是Vertex AI Agent Engine的一个预览功能,只能通过API、SDK和命令行工具访问。
|
||
|
||
## 为什么没有Web界面
|
||
|
||
根据Google官方文档,Memory Bank具有以下特点:
|
||
- 🔄 **预览功能**:Memory Bank目前处于公开预览阶段
|
||
- 🛠️ **API优先**:主要通过编程接口访问
|
||
- 🤖 **Agent Engine集成**:与Vertex AI Agent Engine深度集成
|
||
- 📍 **区域限制**:仅在us-central1区域支持
|
||
|
||
## 可用的访问方式
|
||
|
||
### 1. 编程访问(推荐)
|
||
|
||
#### Python SDK
|
||
```python
|
||
# 我们已经验证的方式
|
||
from jixia.memory.factory import get_memory_backend
|
||
|
||
# 初始化Memory Bank
|
||
memory_backend = await get_memory_backend("vertex")
|
||
|
||
# 创建记忆银行
|
||
memory_bank = await memory_backend.create_memory_bank(agent_id="your_agent")
|
||
|
||
# 添加记忆
|
||
await memory_bank.add_memory("用户偏好信息")
|
||
|
||
# 搜索记忆
|
||
results = await memory_bank.search_memories("查询内容")
|
||
```
|
||
|
||
#### 直接使用Google Cloud SDK
|
||
```python
|
||
from google.cloud import aiplatform
|
||
from google.adk.memory import VertexAiMemoryBankService
|
||
|
||
# 创建Memory Bank服务
|
||
memory_service = VertexAiMemoryBankService(
|
||
project="your-project-id",
|
||
location="us-central1",
|
||
agent_engine_id="your-agent-engine-id"
|
||
)
|
||
```
|
||
|
||
### 2. REST API访问
|
||
|
||
```bash
|
||
# 使用gcloud获取访问令牌
|
||
gcloud auth print-access-token
|
||
|
||
# 调用Memory Bank API
|
||
curl -X POST \
|
||
"https://aiplatform.googleapis.com/v1/projects/YOUR_PROJECT/locations/us-central1/reasoningEngines/YOUR_ENGINE/memories" \
|
||
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
|
||
-H "Content-Type: application/json" \
|
||
-d '{"memory": {"content": "记忆内容"}}'
|
||
```
|
||
|
||
### 3. Agent Development Kit (ADK)
|
||
|
||
```python
|
||
from google import adk
|
||
from google.adk.memory import VertexAiMemoryBankService
|
||
|
||
# 创建带记忆功能的Agent
|
||
agent = adk.Agent(
|
||
model="gemini-2.0-flash",
|
||
name='stateful_agent',
|
||
tools=[adk.tools.preload_memory_tool.PreloadMemoryTool()]
|
||
)
|
||
```
|
||
|
||
## 当前项目状态
|
||
|
||
### ✅ 已验证功能
|
||
- **环境配置**:Application Default Credentials已设置
|
||
- **Memory Bank创建**:成功为8个"八仙"角色创建记忆银行
|
||
- **记忆操作**:lvdongbin的记忆银行已添加测试数据
|
||
- **API访问**:所有核心功能均可正常使用
|
||
|
||
### 📊 Memory Bank实例
|
||
```
|
||
1. ✅ lvdongbin (包含测试数据)
|
||
2. ✅ tieguaili
|
||
3. ✅ hanxiangzi
|
||
4. ✅ lanzaihe
|
||
5. ✅ hesengu
|
||
6. ✅ zhonghanli
|
||
7. ✅ caogujiu
|
||
8. ✅ hanzhongli
|
||
```
|
||
|
||
## 替代访问方案
|
||
|
||
### 1. 使用我们创建的脚本
|
||
|
||
运行现有的Python脚本来管理Memory Bank:
|
||
|
||
```bash
|
||
# 激活虚拟环境
|
||
source venv/bin/activate
|
||
|
||
# 列出所有Memory Bank
|
||
python list_memory_banks.py
|
||
|
||
# 查看详细信息
|
||
python detailed_memory_bank_info.py
|
||
|
||
# 通过API查看
|
||
python view_memory_banks_gcp.py
|
||
```
|
||
|
||
### 2. 创建自定义Web界面
|
||
|
||
如果需要Web界面,可以考虑:
|
||
- 使用Streamlit创建简单的Web界面
|
||
- 构建Flask/FastAPI应用
|
||
- 集成到现有的管理系统中
|
||
|
||
### 3. Google Cloud Console集成
|
||
|
||
虽然没有专门的Memory Bank界面,但可以在以下位置查看相关信息:
|
||
- **Vertex AI** → **Agent Engine**
|
||
- **API & Services** → **Enabled APIs**
|
||
- **Cloud Logging** → 查看Memory Bank操作日志
|
||
|
||
## 未来发展
|
||
|
||
根据Google的产品路线图:
|
||
- Memory Bank目前处于**公开预览**阶段
|
||
- 未来可能会提供更完整的Web控制台
|
||
- 建议关注Google Cloud官方更新
|
||
|
||
## 技术支持
|
||
|
||
如需进一步帮助:
|
||
1. 📚 查看[官方文档](https://cloud.google.com/vertex-ai/generative-ai/docs/agent-engine/memory-bank/overview)
|
||
2. 💬 加入[Vertex AI Google Cloud社区](https://cloud.google.com/vertex-ai/generative-ai/docs/agent-engine/memory-bank/overview)
|
||
3. 🛠️ 使用我们已验证的代码示例
|
||
|
||
## 总结
|
||
|
||
Memory Bank功能完全正常,只是访问方式与传统的Web控制台不同。通过编程接口,您可以实现所有必要的Memory Bank操作,包括创建、添加、搜索和管理记忆。
|
||
|
||
---
|
||
|
||
*最后更新:2025年1月* |