Skip to content

Commit

Permalink
remove MessageRepository
Browse files Browse the repository at this point in the history
  • Loading branch information
lhpqaq committed Sep 12, 2024
1 parent 83238f8 commit 0be0dc4
Show file tree
Hide file tree
Showing 10 changed files with 64 additions and 226 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -19,44 +19,44 @@
package org.apache.bigtop.manager.ai.assistant;

import org.apache.bigtop.manager.ai.assistant.provider.LocSystemPromptProvider;
import org.apache.bigtop.manager.ai.assistant.provider.PersistentStoreProvider;
import org.apache.bigtop.manager.ai.core.AbstractAIAssistantFactory;
import org.apache.bigtop.manager.ai.core.enums.PlatformType;
import org.apache.bigtop.manager.ai.core.enums.SystemPrompt;
import org.apache.bigtop.manager.ai.core.exception.PlatformNotFoundException;
import org.apache.bigtop.manager.ai.core.factory.AIAssistant;
import org.apache.bigtop.manager.ai.core.factory.ToolBox;
import org.apache.bigtop.manager.ai.core.provider.AIAssistantConfigProvider;
import org.apache.bigtop.manager.ai.core.provider.MessageStoreProvider;
import org.apache.bigtop.manager.ai.core.provider.SystemPromptProvider;
import org.apache.bigtop.manager.ai.dashscope.DashScopeAssistant;
import org.apache.bigtop.manager.ai.openai.OpenAIAssistant;

import org.apache.commons.lang3.NotImplementedException;

import dev.langchain4j.store.memory.chat.ChatMemoryStore;
import dev.langchain4j.store.memory.chat.InMemoryChatMemoryStore;

import java.util.Objects;

public class GeneralAssistantFactory extends AbstractAIAssistantFactory {

private final SystemPromptProvider systemPromptProvider;
private final MessageStoreProvider messageStoreProvider;
private final ChatMemoryStore chatMemoryStore;

public GeneralAssistantFactory() {
this(new LocSystemPromptProvider(), new PersistentStoreProvider());
this(new LocSystemPromptProvider(), new InMemoryChatMemoryStore());
}

public GeneralAssistantFactory(SystemPromptProvider systemPromptProvider) {
this(systemPromptProvider, new PersistentStoreProvider());
this(systemPromptProvider, new InMemoryChatMemoryStore());
}

public GeneralAssistantFactory(MessageStoreProvider messageStoreProvider) {
this(new LocSystemPromptProvider(), messageStoreProvider);
public GeneralAssistantFactory(ChatMemoryStore chatMemoryStore) {
this(new LocSystemPromptProvider(), chatMemoryStore);
}

public GeneralAssistantFactory(
SystemPromptProvider systemPromptProvider, MessageStoreProvider messageStoreProvider) {
public GeneralAssistantFactory(SystemPromptProvider systemPromptProvider, ChatMemoryStore chatMemoryStore) {
this.systemPromptProvider = systemPromptProvider;
this.messageStoreProvider = messageStoreProvider;
this.chatMemoryStore = chatMemoryStore;
}

@Override
Expand All @@ -66,17 +66,18 @@ public AIAssistant createWithPrompt(
Object id,
SystemPrompt systemPrompts) {
AIAssistant aiAssistant;
ChatMemoryStore memoryStore = (id == null) ? new InMemoryChatMemoryStore() : chatMemoryStore;
if (Objects.requireNonNull(platformType) == PlatformType.OPENAI) {
aiAssistant = OpenAIAssistant.builder()
.id(id)
.memoryStore(messageStoreProvider.getChatMemoryStore())
.memoryStore(memoryStore)
.withConfigProvider(assistantConfig)
.build();
} else if (Objects.requireNonNull(platformType) == PlatformType.DASH_SCOPE) {
aiAssistant = DashScopeAssistant.builder()
.id(id)
.withConfigProvider(assistantConfig)
.messageRepository(messageStoreProvider.getMessageRepository())
.messageRepository(memoryStore)
.build();
} else {
throw new PlatformNotFoundException(platformType.getValue());
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,9 @@ public List<ChatMessage> getMessages(Object threadId) {

@Override
public void updateMessages(Object threadId, List<ChatMessage> messages) {
if (threadId == null) {
return;
}
ChatMessagePO chatMessagePO = convertToChatMessagePO(messages.get(messages.size() - 1), (Long) threadId);
chatMessageDao.save(chatMessagePO);
}
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,16 @@

import org.apache.bigtop.manager.ai.core.factory.AIAssistant;

import dev.langchain4j.memory.ChatMemory;

public abstract class AbstractAIAssistant implements AIAssistant {

protected static final Integer MEMORY_LEN = 10;
protected final ChatMemory chatMemory;

protected AbstractAIAssistant(ChatMemory chatMemory) {
this.chatMemory = chatMemory;
}

@Override
public boolean test() {
Expand Down

This file was deleted.

This file was deleted.

Loading

0 comments on commit 0be0dc4

Please sign in to comment.