内存存储
LangChain4j 提供了一个简单的内存实现 EmbeddingStore
接口:InMemoryEmbeddingStore
。
它适用于快速原型开发和简单的使用场景。
它将 Embedding
和关联的 TextSegment
存储在内存中。
搜索操作也在内存中执行。
它还可以将数据持久化到 JSON 字符串或文件中,并支持从中恢复。
Maven 依赖
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j</artifactId>
<version>1.5.0</version>
</dependency>
APIs
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);