はじめに
LangMem、とっつきやすいですが、Storeの永続化をしないと、
忘れんぼ MEMちょ、になってしまいます😢
でも、なんだかんだ情報が少なくて、Storeとpostgreの連携がわかりにくかったので、
サンプルコード作ってみました!
説明は次回するとして、とりあえず試してみましょう!
やってみよう!!
[GCP の Cloud SQL とサービスアカウントの設定は終了している前提で進めます!]
1️⃣ リポジトリをCloneしてください!
2️⃣ docker-compose.yaml
を設定
docker-compose.yaml
environment:
- POSTGRES_URL=postgresql://{user}:{pass}@cloudsql-proxy:5432/{dbname}
~~ 中略 ~~
cloudsql-proxy:
- instances={Cloud SQLの接続名}=tcp:0.0.0.0:5432
3️⃣ .env.local を設定
.env.local
OPENAI_API_KEY={your open ai key}
POSTGRES_URL=postgresql://{user}:{pass}@cloudsql-proxy:5432/{dbname}
4️⃣ GCPのサービスアカウントのsecretsを配置
.
├── Dockerfile
├── backend
│ └── api
│ ├── __init__.py
│ ├── main.py
│ └── routers
│ └── chat.py
├── docker-compose.yaml
└── secrets
└── service_account.json <== ここに挿入
5️⃣ docker-compose実行
docker-compose up --build
以下ログが出たら、起動完了です!!
demo-api_1 | Store initialized!
動作確認
こんな感じで名前を覚えさせて...!!!
聞いてみると?
ちゃんと答えてくれますね!!
仕様
一応、ユーザーごとに別の記憶を保持できるようになってます。
あと、どのように記憶されているか確認できるように、レスポンスに記憶全てを含めるようにしています。
細かいところは、僕の指が痛くない時に、いつか書きますww