跳到主要内容

内存存储

LangChain4j 提供了 EmbeddingStore 接口的简单内存实现: InMemoryEmbeddingStore。 它适用于快速原型设计和简单用例。 它在内存中保存 Embedding 和相关的 TextSegment。 搜索也在内存中执行。 它还可以被持久化并从 JSON 字符串或文件中恢复。

Maven 依赖

<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j</artifactId>
<version>1.0.0-beta3</version>
</dependency>

API

  • InMemoryEmbeddingStore

持久化

InMemoryEmbeddingStore 可以序列化为 json 字符串或文件:

InMemoryEmbeddingStore<TextSegment> embeddingStore = new InMemoryEmbeddingStore<>();
embeddingStore.addAll(embeddings, embedded);

String serializedStore = embeddingStore.serializeToJson();
InMemoryEmbeddingStore<TextSegment> deserializedStore = InMemoryEmbeddingStore.fromJson(serializedStore);

String filePath = "/home/me/store.json";
embeddingStore.serializeToFile(filePath);
InMemoryEmbeddingStore<TextSegment> deserializedStore = InMemoryEmbeddingStore.fromFile(filePath);

示例