From f01309526ab10fe0ee67b02363882fbc3c9d73df Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)@71dcc7fd-b1f2-4e5d-bb8e-274146e81173> Date: Wed, 18 Dec 2024 18:58:27 +0000 Subject: [PATCH] lm-lib refactoring; git-svn-id: svn://home0/lm-lib@3610 71dcc7fd-b1f2-4e5d-bb8e-274146e81173 --- README.md | 26 +++++++++++-------- src/main/java/de/extio/lmlib/agent/Agent.java | 2 +- .../java/de/extio/lmlib/client/Client.java | 4 +-- .../de/extio/lmlib/client/ClientService.java | 4 +-- .../lmlib/client/azureai/AzureAiClient.java | 10 +++---- .../AzureAiClientAutoConfiguration.java | 4 +-- .../textcompletion/ModelNameSupplier.java | 4 +-- .../textcompletion/TextCompletionClient.java | 14 +++++----- .../{client => }/profile/ModelCategory.java | 2 +- .../{client => }/profile/ModelProfile.java | 2 +- .../profile/ModelProfileService.java | 4 +-- .../prompt/AlpacaShortPromptStrategy.java | 2 +- .../prompt/ChatMLPromptStrategy.java | 2 +- .../prompt/Gemma2PromptStrategy.java | 2 +- .../prompt/Llama3PromptStrategy.java | 2 +- .../prompt/MixtralPromptStrategy.java | 2 +- .../prompt/Phi3PromptStrategy.java | 2 +- .../{client => }/prompt/PromptStrategy.java | 2 +- .../prompt/PromptStrategyFactory.java | 2 +- .../prompt/VicunaPromptStrategy.java | 2 +- .../{client => }/token/JTokkitTokenizer.java | 4 +-- .../token/LlamaServerTokenizer.java | 4 +-- .../lmlib/{client => }/token/Tokenizer.java | 4 +-- .../token/TokenizerAutoConfiguration.java | 2 +- .../java/de/extio/lmlib/agent/AgentTest.java | 2 +- .../client/azureai/AzureAiClientTest.java | 2 +- .../TextCompletionClientTest.java | 2 +- .../lmlib/client/token/TokenizerTest.java | 6 +++-- 28 files changed, 63 insertions(+), 57 deletions(-) rename src/main/java/de/extio/lmlib/{client => }/profile/ModelCategory.java (93%) rename src/main/java/de/extio/lmlib/{client => }/profile/ModelProfile.java (89%) rename src/main/java/de/extio/lmlib/{client => }/profile/ModelProfileService.java (97%) rename src/main/java/de/extio/lmlib/{client => }/prompt/AlpacaShortPromptStrategy.java (96%) rename src/main/java/de/extio/lmlib/{client => }/prompt/ChatMLPromptStrategy.java (97%) rename src/main/java/de/extio/lmlib/{client => }/prompt/Gemma2PromptStrategy.java (96%) rename src/main/java/de/extio/lmlib/{client => }/prompt/Llama3PromptStrategy.java (97%) rename src/main/java/de/extio/lmlib/{client => }/prompt/MixtralPromptStrategy.java (96%) rename src/main/java/de/extio/lmlib/{client => }/prompt/Phi3PromptStrategy.java (96%) rename src/main/java/de/extio/lmlib/{client => }/prompt/PromptStrategy.java (89%) rename src/main/java/de/extio/lmlib/{client => }/prompt/PromptStrategyFactory.java (93%) rename src/main/java/de/extio/lmlib/{client => }/prompt/VicunaPromptStrategy.java (96%) rename src/main/java/de/extio/lmlib/{client => }/token/JTokkitTokenizer.java (94%) rename src/main/java/de/extio/lmlib/{client => }/token/LlamaServerTokenizer.java (96%) rename src/main/java/de/extio/lmlib/{client => }/token/Tokenizer.java (73%) rename src/main/java/de/extio/lmlib/{client => }/token/TokenizerAutoConfiguration.java (97%) diff --git a/README.md b/README.md index e6a822e..ee8cb42 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,23 @@ -This suite of Java packages provides a comprehensive framework for building, deploying, and interacting with conversational AI agents powered by language models. - -**Core Functionality:** - -* **Agent Framework:** Enables the creation of modular and scalable agents with complex branching logic and concurrent execution capabilities. -* **Language Model Interaction:** Provides tools for accessing and interacting with various language models, including Azure AI's text generation service. This includes retrieving model information, managing conversations, generating completions, and customizing parameters. -* **Prompt Engineering:** Offers functionalities for constructing and manipulating prompts tailored to specific language models, supporting various formatting strategies. -* **Text Processing:** Includes tools for tokenizing and detokenizing text, essential for preparing input for language models and interpreting their output. +This suite of Java packages provides a comprehensive framework for building and deploying conversational agents powered by language models. **Purpose:** -The primary purpose of this program is to simplify the development and deployment of sophisticated conversational AI agents. By providing a robust set of tools for agent management, language model interaction, prompt engineering, and text processing, the program empowers developers to create powerful and engaging AI-driven conversational experiences. +The primary purpose is to simplify the development and management of AI-driven chatbot applications. -*gemma2-27b requests=49, requestDuration=PT7M4.534240136S, inTokens=26243, outTokens=2159, tps=5.091981132075472* +**Functionality:** -## Introducing a Powerful Framework for Building Intelligent Agents +* **Agent Framework:** The core package enables the creation of agents capable of interacting with language models, processing text, maintaining conversation context, tracking statistics, and executing in a structured manner. It supports chaining agents, handling responses, and flexible configuration. +* **Language Model Interaction:** Several packages provide tools for interacting with various language models, including Azure AI's text generation service and remote text completion models. These tools handle tasks like retrieving models, managing conversations, generating completions, and tracking API usage. +* **Prompt Engineering:** A dedicated package focuses on constructing and manipulating prompts tailored to specific language models. It supports different formatting strategies and allows for fine-grained control over prompt structure. +* **Tokenization:** Another package handles text tokenization and detokenization, crucial for preparing text for input to language models and interpreting their outputs. + +**Overall, this collection of packages offers a powerful and flexible toolkit for developers looking to build sophisticated conversational agents leveraging the capabilities of modern language models.** + +*gemma2-27b requests=50, requestDuration=PT3M36.921314511S, inTokens=26737, outTokens=2207, tps=10.217592592592593* + +*[Below announcement has been generated by the unit test AgentTest#agenticFlow:]* + +Title: Introducing a Powerful Framework for Building Intelligent Agents We're excited to announce the development of a new Java codebase designed to build intelligent agents capable of interacting with language models like GPT. This framework offers a flexible and extensible architecture, empowering developers to create sophisticated conversational agents for a wide range of applications. diff --git a/src/main/java/de/extio/lmlib/agent/Agent.java b/src/main/java/de/extio/lmlib/agent/Agent.java index 25dc2d1..d607885 100755 --- a/src/main/java/de/extio/lmlib/agent/Agent.java +++ b/src/main/java/de/extio/lmlib/agent/Agent.java @@ -17,7 +17,7 @@ import de.extio.lmlib.client.Client; import de.extio.lmlib.client.Completion; import de.extio.lmlib.client.Conversation; import de.extio.lmlib.client.Conversation.TurnType; -import de.extio.lmlib.client.profile.ModelCategory; +import de.extio.lmlib.profile.ModelCategory; public record Agent(String name, AgentType agentType, ModelCategory modelCategory, String systemPrompt, String textTemplate, AgentResponseHandler responseHandler, Consumer preProcessor, Consumer postProcessor, Function, List> merger, Function chooseNext) { diff --git a/src/main/java/de/extio/lmlib/client/Client.java b/src/main/java/de/extio/lmlib/client/Client.java index 6c7edb2..6c00339 100755 --- a/src/main/java/de/extio/lmlib/client/Client.java +++ b/src/main/java/de/extio/lmlib/client/Client.java @@ -1,7 +1,7 @@ package de.extio.lmlib.client; -import de.extio.lmlib.client.profile.ModelCategory; -import de.extio.lmlib.client.profile.ModelProfile.ModelProvider; +import de.extio.lmlib.profile.ModelCategory; +import de.extio.lmlib.profile.ModelProfile.ModelProvider; public interface Client { diff --git a/src/main/java/de/extio/lmlib/client/ClientService.java b/src/main/java/de/extio/lmlib/client/ClientService.java index 8e8a54f..e42933b 100755 --- a/src/main/java/de/extio/lmlib/client/ClientService.java +++ b/src/main/java/de/extio/lmlib/client/ClientService.java @@ -5,8 +5,8 @@ import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import de.extio.lmlib.client.profile.ModelCategory; -import de.extio.lmlib.client.profile.ModelProfileService; +import de.extio.lmlib.profile.ModelCategory; +import de.extio.lmlib.profile.ModelProfileService; @Service public class ClientService { diff --git a/src/main/java/de/extio/lmlib/client/azureai/AzureAiClient.java b/src/main/java/de/extio/lmlib/client/azureai/AzureAiClient.java index b71a27e..9810dff 100755 --- a/src/main/java/de/extio/lmlib/client/azureai/AzureAiClient.java +++ b/src/main/java/de/extio/lmlib/client/azureai/AzureAiClient.java @@ -32,11 +32,11 @@ import de.extio.lmlib.client.Client; import de.extio.lmlib.client.Completion; import de.extio.lmlib.client.Conversation; import de.extio.lmlib.client.Conversation.Turn; -import de.extio.lmlib.client.profile.ModelCategory; -import de.extio.lmlib.client.profile.ModelProfile; -import de.extio.lmlib.client.profile.ModelProfile.ModelProvider; -import de.extio.lmlib.client.profile.ModelProfileService; -import de.extio.lmlib.client.token.Tokenizer; +import de.extio.lmlib.profile.ModelCategory; +import de.extio.lmlib.profile.ModelProfile; +import de.extio.lmlib.profile.ModelProfileService; +import de.extio.lmlib.profile.ModelProfile.ModelProvider; +import de.extio.lmlib.token.Tokenizer; public final class AzureAiClient implements Client { diff --git a/src/main/java/de/extio/lmlib/client/azureai/AzureAiClientAutoConfiguration.java b/src/main/java/de/extio/lmlib/client/azureai/AzureAiClientAutoConfiguration.java index a8fdb0a..737856a 100644 --- a/src/main/java/de/extio/lmlib/client/azureai/AzureAiClientAutoConfiguration.java +++ b/src/main/java/de/extio/lmlib/client/azureai/AzureAiClientAutoConfiguration.java @@ -4,8 +4,8 @@ import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.context.annotation.Bean; -import de.extio.lmlib.client.profile.ModelProfileService; -import de.extio.lmlib.client.token.Tokenizer; +import de.extio.lmlib.profile.ModelProfileService; +import de.extio.lmlib.token.Tokenizer; @AutoConfiguration @ConditionalOnClass(name = "com.azure.ai.inference.ChatCompletionsClient") diff --git a/src/main/java/de/extio/lmlib/client/textcompletion/ModelNameSupplier.java b/src/main/java/de/extio/lmlib/client/textcompletion/ModelNameSupplier.java index b6e72a9..f4caf75 100755 --- a/src/main/java/de/extio/lmlib/client/textcompletion/ModelNameSupplier.java +++ b/src/main/java/de/extio/lmlib/client/textcompletion/ModelNameSupplier.java @@ -11,8 +11,8 @@ import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Component; import org.springframework.web.reactive.function.client.WebClient; -import de.extio.lmlib.client.profile.ModelProfile.ModelProvider; -import de.extio.lmlib.client.profile.ModelProfileService; +import de.extio.lmlib.profile.ModelProfileService; +import de.extio.lmlib.profile.ModelProfile.ModelProvider; @Component class ModelNameSupplier implements InitializingBean { diff --git a/src/main/java/de/extio/lmlib/client/textcompletion/TextCompletionClient.java b/src/main/java/de/extio/lmlib/client/textcompletion/TextCompletionClient.java index eef61ed..cfc0528 100755 --- a/src/main/java/de/extio/lmlib/client/textcompletion/TextCompletionClient.java +++ b/src/main/java/de/extio/lmlib/client/textcompletion/TextCompletionClient.java @@ -23,16 +23,16 @@ import de.extio.lmlib.client.Client; import de.extio.lmlib.client.Completion; import de.extio.lmlib.client.Conversation; import de.extio.lmlib.client.Conversation.Turn; -import de.extio.lmlib.client.profile.ModelCategory; -import de.extio.lmlib.client.profile.ModelProfile; -import de.extio.lmlib.client.profile.ModelProfile.ModelProvider; -import de.extio.lmlib.client.profile.ModelProfileService; -import de.extio.lmlib.client.prompt.PromptStrategy; -import de.extio.lmlib.client.prompt.PromptStrategyFactory; import de.extio.lmlib.client.textcompletion.dto.Choice; import de.extio.lmlib.client.textcompletion.dto.CompletionRequest; import de.extio.lmlib.client.textcompletion.dto.CompletionResponse; -import de.extio.lmlib.client.token.Tokenizer; +import de.extio.lmlib.profile.ModelCategory; +import de.extio.lmlib.profile.ModelProfile; +import de.extio.lmlib.profile.ModelProfileService; +import de.extio.lmlib.profile.ModelProfile.ModelProvider; +import de.extio.lmlib.prompt.PromptStrategy; +import de.extio.lmlib.prompt.PromptStrategyFactory; +import de.extio.lmlib.token.Tokenizer; import reactor.util.retry.Retry; diff --git a/src/main/java/de/extio/lmlib/client/profile/ModelCategory.java b/src/main/java/de/extio/lmlib/profile/ModelCategory.java similarity index 93% rename from src/main/java/de/extio/lmlib/client/profile/ModelCategory.java rename to src/main/java/de/extio/lmlib/profile/ModelCategory.java index df84bca..0d1da77 100755 --- a/src/main/java/de/extio/lmlib/client/profile/ModelCategory.java +++ b/src/main/java/de/extio/lmlib/profile/ModelCategory.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.profile; +package de.extio.lmlib.profile; public enum ModelCategory { diff --git a/src/main/java/de/extio/lmlib/client/profile/ModelProfile.java b/src/main/java/de/extio/lmlib/profile/ModelProfile.java similarity index 89% rename from src/main/java/de/extio/lmlib/client/profile/ModelProfile.java rename to src/main/java/de/extio/lmlib/profile/ModelProfile.java index ffee661..5bee02a 100755 --- a/src/main/java/de/extio/lmlib/client/profile/ModelProfile.java +++ b/src/main/java/de/extio/lmlib/profile/ModelProfile.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.profile; +package de.extio.lmlib.profile; public record ModelProfile( String prompt, diff --git a/src/main/java/de/extio/lmlib/client/profile/ModelProfileService.java b/src/main/java/de/extio/lmlib/profile/ModelProfileService.java similarity index 97% rename from src/main/java/de/extio/lmlib/client/profile/ModelProfileService.java rename to src/main/java/de/extio/lmlib/profile/ModelProfileService.java index 5153f22..c3a3239 100755 --- a/src/main/java/de/extio/lmlib/client/profile/ModelProfileService.java +++ b/src/main/java/de/extio/lmlib/profile/ModelProfileService.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.profile; +package de.extio.lmlib.profile; import java.io.IOException; import java.util.Collections; @@ -16,7 +16,7 @@ import org.springframework.core.env.Environment; import org.springframework.core.io.support.ResourcePropertySource; import org.springframework.stereotype.Service; -import de.extio.lmlib.client.profile.ModelProfile.ModelProvider; +import de.extio.lmlib.profile.ModelProfile.ModelProvider; @Service public class ModelProfileService { diff --git a/src/main/java/de/extio/lmlib/client/prompt/AlpacaShortPromptStrategy.java b/src/main/java/de/extio/lmlib/prompt/AlpacaShortPromptStrategy.java similarity index 96% rename from src/main/java/de/extio/lmlib/client/prompt/AlpacaShortPromptStrategy.java rename to src/main/java/de/extio/lmlib/prompt/AlpacaShortPromptStrategy.java index c465037..0a3bd63 100644 --- a/src/main/java/de/extio/lmlib/client/prompt/AlpacaShortPromptStrategy.java +++ b/src/main/java/de/extio/lmlib/prompt/AlpacaShortPromptStrategy.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.prompt; +package de.extio.lmlib.prompt; public class AlpacaShortPromptStrategy implements PromptStrategy { diff --git a/src/main/java/de/extio/lmlib/client/prompt/ChatMLPromptStrategy.java b/src/main/java/de/extio/lmlib/prompt/ChatMLPromptStrategy.java similarity index 97% rename from src/main/java/de/extio/lmlib/client/prompt/ChatMLPromptStrategy.java rename to src/main/java/de/extio/lmlib/prompt/ChatMLPromptStrategy.java index 8a3b23b..a35a431 100755 --- a/src/main/java/de/extio/lmlib/client/prompt/ChatMLPromptStrategy.java +++ b/src/main/java/de/extio/lmlib/prompt/ChatMLPromptStrategy.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.prompt; +package de.extio.lmlib.prompt; import org.springframework.stereotype.Component; diff --git a/src/main/java/de/extio/lmlib/client/prompt/Gemma2PromptStrategy.java b/src/main/java/de/extio/lmlib/prompt/Gemma2PromptStrategy.java similarity index 96% rename from src/main/java/de/extio/lmlib/client/prompt/Gemma2PromptStrategy.java rename to src/main/java/de/extio/lmlib/prompt/Gemma2PromptStrategy.java index 3150c0d..3503233 100755 --- a/src/main/java/de/extio/lmlib/client/prompt/Gemma2PromptStrategy.java +++ b/src/main/java/de/extio/lmlib/prompt/Gemma2PromptStrategy.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.prompt; +package de.extio.lmlib.prompt; import org.springframework.stereotype.Component; diff --git a/src/main/java/de/extio/lmlib/client/prompt/Llama3PromptStrategy.java b/src/main/java/de/extio/lmlib/prompt/Llama3PromptStrategy.java similarity index 97% rename from src/main/java/de/extio/lmlib/client/prompt/Llama3PromptStrategy.java rename to src/main/java/de/extio/lmlib/prompt/Llama3PromptStrategy.java index c658cb0..56fbeeb 100755 --- a/src/main/java/de/extio/lmlib/client/prompt/Llama3PromptStrategy.java +++ b/src/main/java/de/extio/lmlib/prompt/Llama3PromptStrategy.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.prompt; +package de.extio.lmlib.prompt; import org.springframework.stereotype.Component; diff --git a/src/main/java/de/extio/lmlib/client/prompt/MixtralPromptStrategy.java b/src/main/java/de/extio/lmlib/prompt/MixtralPromptStrategy.java similarity index 96% rename from src/main/java/de/extio/lmlib/client/prompt/MixtralPromptStrategy.java rename to src/main/java/de/extio/lmlib/prompt/MixtralPromptStrategy.java index bd1ff70..96d4e40 100755 --- a/src/main/java/de/extio/lmlib/client/prompt/MixtralPromptStrategy.java +++ b/src/main/java/de/extio/lmlib/prompt/MixtralPromptStrategy.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.prompt; +package de.extio.lmlib.prompt; import org.springframework.stereotype.Component; diff --git a/src/main/java/de/extio/lmlib/client/prompt/Phi3PromptStrategy.java b/src/main/java/de/extio/lmlib/prompt/Phi3PromptStrategy.java similarity index 96% rename from src/main/java/de/extio/lmlib/client/prompt/Phi3PromptStrategy.java rename to src/main/java/de/extio/lmlib/prompt/Phi3PromptStrategy.java index 76dcc02..0116132 100755 --- a/src/main/java/de/extio/lmlib/client/prompt/Phi3PromptStrategy.java +++ b/src/main/java/de/extio/lmlib/prompt/Phi3PromptStrategy.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.prompt; +package de.extio.lmlib.prompt; import org.springframework.stereotype.Component; diff --git a/src/main/java/de/extio/lmlib/client/prompt/PromptStrategy.java b/src/main/java/de/extio/lmlib/prompt/PromptStrategy.java similarity index 89% rename from src/main/java/de/extio/lmlib/client/prompt/PromptStrategy.java rename to src/main/java/de/extio/lmlib/prompt/PromptStrategy.java index c410473..98ad5b5 100755 --- a/src/main/java/de/extio/lmlib/client/prompt/PromptStrategy.java +++ b/src/main/java/de/extio/lmlib/prompt/PromptStrategy.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.prompt; +package de.extio.lmlib.prompt; public interface PromptStrategy { diff --git a/src/main/java/de/extio/lmlib/client/prompt/PromptStrategyFactory.java b/src/main/java/de/extio/lmlib/prompt/PromptStrategyFactory.java similarity index 93% rename from src/main/java/de/extio/lmlib/client/prompt/PromptStrategyFactory.java rename to src/main/java/de/extio/lmlib/prompt/PromptStrategyFactory.java index 0fb018b..e78b6db 100755 --- a/src/main/java/de/extio/lmlib/client/prompt/PromptStrategyFactory.java +++ b/src/main/java/de/extio/lmlib/prompt/PromptStrategyFactory.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.prompt; +package de.extio.lmlib.prompt; import java.util.HashMap; import java.util.List; diff --git a/src/main/java/de/extio/lmlib/client/prompt/VicunaPromptStrategy.java b/src/main/java/de/extio/lmlib/prompt/VicunaPromptStrategy.java similarity index 96% rename from src/main/java/de/extio/lmlib/client/prompt/VicunaPromptStrategy.java rename to src/main/java/de/extio/lmlib/prompt/VicunaPromptStrategy.java index 6746a02..e498b05 100755 --- a/src/main/java/de/extio/lmlib/client/prompt/VicunaPromptStrategy.java +++ b/src/main/java/de/extio/lmlib/prompt/VicunaPromptStrategy.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.prompt; +package de.extio.lmlib.prompt; import org.springframework.stereotype.Component; diff --git a/src/main/java/de/extio/lmlib/client/token/JTokkitTokenizer.java b/src/main/java/de/extio/lmlib/token/JTokkitTokenizer.java similarity index 94% rename from src/main/java/de/extio/lmlib/client/token/JTokkitTokenizer.java rename to src/main/java/de/extio/lmlib/token/JTokkitTokenizer.java index 1554400..16a36d7 100755 --- a/src/main/java/de/extio/lmlib/client/token/JTokkitTokenizer.java +++ b/src/main/java/de/extio/lmlib/token/JTokkitTokenizer.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.token; +package de.extio.lmlib.token; import java.util.List; @@ -10,7 +10,7 @@ import com.knuddels.jtokkit.api.EncodingRegistry; import com.knuddels.jtokkit.api.EncodingType; import com.knuddels.jtokkit.api.IntArrayList; -import de.extio.lmlib.client.profile.ModelProfile; +import de.extio.lmlib.profile.ModelProfile; final class JTokkitTokenizer implements Tokenizer { diff --git a/src/main/java/de/extio/lmlib/client/token/LlamaServerTokenizer.java b/src/main/java/de/extio/lmlib/token/LlamaServerTokenizer.java similarity index 96% rename from src/main/java/de/extio/lmlib/client/token/LlamaServerTokenizer.java rename to src/main/java/de/extio/lmlib/token/LlamaServerTokenizer.java index 97940ec..bfa69db 100755 --- a/src/main/java/de/extio/lmlib/client/token/LlamaServerTokenizer.java +++ b/src/main/java/de/extio/lmlib/token/LlamaServerTokenizer.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.token; +package de.extio.lmlib.token; import java.time.Duration; import java.util.List; @@ -9,7 +9,7 @@ import org.springframework.http.HttpMethod; import org.springframework.web.reactive.function.client.WebClient; import org.springframework.web.reactive.function.client.WebClient.Builder; -import de.extio.lmlib.client.profile.ModelProfile; +import de.extio.lmlib.profile.ModelProfile; import reactor.util.retry.Retry; diff --git a/src/main/java/de/extio/lmlib/client/token/Tokenizer.java b/src/main/java/de/extio/lmlib/token/Tokenizer.java similarity index 73% rename from src/main/java/de/extio/lmlib/client/token/Tokenizer.java rename to src/main/java/de/extio/lmlib/token/Tokenizer.java index 3fd2ff9..9b22b24 100644 --- a/src/main/java/de/extio/lmlib/client/token/Tokenizer.java +++ b/src/main/java/de/extio/lmlib/token/Tokenizer.java @@ -1,8 +1,8 @@ -package de.extio.lmlib.client.token; +package de.extio.lmlib.token; import java.util.List; -import de.extio.lmlib.client.profile.ModelProfile; +import de.extio.lmlib.profile.ModelProfile; public interface Tokenizer { diff --git a/src/main/java/de/extio/lmlib/client/token/TokenizerAutoConfiguration.java b/src/main/java/de/extio/lmlib/token/TokenizerAutoConfiguration.java similarity index 97% rename from src/main/java/de/extio/lmlib/client/token/TokenizerAutoConfiguration.java rename to src/main/java/de/extio/lmlib/token/TokenizerAutoConfiguration.java index d7f4fa1..d4d706f 100644 --- a/src/main/java/de/extio/lmlib/client/token/TokenizerAutoConfiguration.java +++ b/src/main/java/de/extio/lmlib/token/TokenizerAutoConfiguration.java @@ -1,4 +1,4 @@ -package de.extio.lmlib.client.token; +package de.extio.lmlib.token; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.boot.autoconfigure.AutoConfiguration; diff --git a/src/test/java/de/extio/lmlib/agent/AgentTest.java b/src/test/java/de/extio/lmlib/agent/AgentTest.java index 8bd0ca2..7baae66 100644 --- a/src/test/java/de/extio/lmlib/agent/AgentTest.java +++ b/src/test/java/de/extio/lmlib/agent/AgentTest.java @@ -20,7 +20,7 @@ import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.PropertySource; import de.extio.lmlib.client.ClientService; -import de.extio.lmlib.client.profile.ModelCategory; +import de.extio.lmlib.profile.ModelCategory; import io.netty.util.internal.ThreadLocalRandom; diff --git a/src/test/java/de/extio/lmlib/client/azureai/AzureAiClientTest.java b/src/test/java/de/extio/lmlib/client/azureai/AzureAiClientTest.java index e24d2ad..9eeae03 100755 --- a/src/test/java/de/extio/lmlib/client/azureai/AzureAiClientTest.java +++ b/src/test/java/de/extio/lmlib/client/azureai/AzureAiClientTest.java @@ -14,7 +14,7 @@ import org.springframework.context.annotation.PropertySource; import de.extio.lmlib.client.Conversation; import de.extio.lmlib.client.Conversation.Turn; import de.extio.lmlib.client.Conversation.TurnType; -import de.extio.lmlib.client.profile.ModelCategory; +import de.extio.lmlib.profile.ModelCategory; @Disabled @SpringBootTest(webEnvironment = WebEnvironment.NONE) diff --git a/src/test/java/de/extio/lmlib/client/textcompletion/TextCompletionClientTest.java b/src/test/java/de/extio/lmlib/client/textcompletion/TextCompletionClientTest.java index 42e93ae..284e92a 100755 --- a/src/test/java/de/extio/lmlib/client/textcompletion/TextCompletionClientTest.java +++ b/src/test/java/de/extio/lmlib/client/textcompletion/TextCompletionClientTest.java @@ -21,7 +21,7 @@ import org.springframework.context.annotation.PropertySource; import de.extio.lmlib.client.Conversation; import de.extio.lmlib.client.Conversation.Turn; import de.extio.lmlib.client.Conversation.TurnType; -import de.extio.lmlib.client.profile.ModelCategory; +import de.extio.lmlib.profile.ModelCategory; @SpringBootTest(webEnvironment = WebEnvironment.NONE) @SpringBootConfiguration diff --git a/src/test/java/de/extio/lmlib/client/token/TokenizerTest.java b/src/test/java/de/extio/lmlib/client/token/TokenizerTest.java index 58ba523..0aedd80 100644 --- a/src/test/java/de/extio/lmlib/client/token/TokenizerTest.java +++ b/src/test/java/de/extio/lmlib/client/token/TokenizerTest.java @@ -12,8 +12,10 @@ import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.PropertySource; import org.springframework.web.reactive.function.client.WebClient; -import de.extio.lmlib.client.profile.ModelCategory; -import de.extio.lmlib.client.profile.ModelProfileService; +import de.extio.lmlib.profile.ModelCategory; +import de.extio.lmlib.profile.ModelProfileService; +import de.extio.lmlib.token.JTokkitTokenizer; +import de.extio.lmlib.token.LlamaServerTokenizer; @SpringBootTest(webEnvironment = WebEnvironment.NONE) @SpringBootConfiguration