以编程方式使用文档

概述

LangChain 提供了一个键值存储接口,用于通过键存储和检索数据。LangChain 中的键值存储接口主要用于缓存 嵌入.

接口

所有 BaseStores 都是 **通用的** 并支持以下接口,其中 K 表示键类型, V 表示值类型:

  • - mget(keys: K[]): Promise<(V | undefined)[]>:获取多个键的值,如果键不存在则返回 undefined (如果键不存在)
  • - mset(keyValuePairs: [K, V][]): Promise<void>:设置多个键的值
  • - mdelete(keys: K[]): Promise<void>:删除多个键
  • - yieldKeys(prefix?: string): AsyncGenerator:异步生成存储中的所有键,可选择按前缀过滤

接口的通用性质允许您对键和值使用不同的类型。例如, BaseStore<string, BaseMessage> 将使用字符串键存储消息,而 BaseStore<string, number[]> 将存储数字数组。

用于本地开发的内置存储

InMemoryStore

LocalFileStore

自定义存储

您还可以通过扩展 BaseStore 类来实现您自己的自定义存储。请参阅 存储接口文档 了解更多详情。