LocalFileStore 통합
LocalFileStore 통합
키-값 저장소가 가진 데이터를 그대로 파일에 보관하고 싶을 때가 있어요. 서버가 여러 대가 아니라 한 대에서 작업하고, 파일이 생기고 없어지는 것 정도는 감수할 수 있다면 LocalFileStore가 딱 맞아요. 지정한 폴더에 모든 것을 파일로 저장해 두는 ByteStore 구현이거든요.
LocalFileStore의 모든 기능과 설정을 자세히 알고 싶다면 API 레퍼런스를 참고하면 돼요.
준비하기
LocalFileStore 통합은 langchain 패키지에 들어 있어요. (langchain-classic으로 설치해요)
pip install -qU langchain-classic
만들기
바이트 저장소를 이렇게 만들 수 있어요.
from pathlib import Path
from langchain_classic.storage import LocalFileStore
root_path = Path.cwd() / "data" # 문자열로 경로를 지정해도 돼요
kv_store = LocalFileStore(root_path)
root_path의 data 폴더가 저장소의 루트가 되는 방식이에요.
사용하기
mset 메서드로 키에 데이터를 저장해요.
kv_store.mset(
[
["key1", b"value1"],
["key2", b"value2"],
]
)
kv_store.mget(
[
"key1",
"key2",
]
)
[b'value1', b'value2']
저장한 값은 data 폴더 안에 실제 파일로 생기는 걸 확인할 수 있어요.
!ls {root_path}
key1 key2
삭제는 mdelete 메서드를 쓰면 돼요.
kv_store.mdelete(
[
"key1",
"key2",
]
)
kv_store.mget(
[
"key1",
"key2",
]
)
[None, None]
삭제한 뒤 조회하면 None이 돌아오는 걸 볼 수 있어요.
API 레퍼런스
LocalFileStore의 모든 기능과 설정은 API 레퍼런스에서 확인할 수 있어요.