From a49a2d213f1d8de2429101b43f047a776b223b00 Mon Sep 17 00:00:00 2001 From: Christian Tzolov Date: Thu, 2 May 2024 12:28:37 +0300 Subject: [PATCH] Replace the OutputParser by a StructuredOutputConverter API - Old OutputParser, BeanOutputParser, ListOutputParser and MapOutputParser classes are depredated in favour of the new StructuredOutputConverter, BeanOutputConverter, ListOutputConverter and MapOutputConverter implementations. Later are drop-in replacements for the former ones, and provide the same functionality. - Keep the existing parser package and classes for backward compatibility. - Adjust the PromptTemplate for backward compatibility - Update all existing tests to use the new Structured Output API. - Improve the documentation for structured outputs. --- README.md | 2 +- .../ai/anthropic/AnthropicChatClientIT.java | 38 ++-- .../azure/openai/AzureOpenAiChatClientIT.java | 48 ++-- .../BedrockAnthropicChatClientIT.java | 45 ++-- .../BedrockAnthropic3ChatClientIT.java | 57 +++-- .../cohere/BedrockCohereChatClientIT.java | 45 ++-- .../BedrockAi21Jurassic2ChatClientIT.java | 30 +-- .../llama/BedrockLlamaChatClientIT.java | 38 ++-- .../titan/BedrockTitanChatClientIT.java | 47 ++-- .../ai/mistralai/MistralAiChatClientIT.java | 38 ++-- .../ai/ollama/OllamaChatClientIT.java | 57 +++-- .../ai/openai/chat/OpenAiChatClientIT.java | 48 ++-- .../gemini/VertexAiGeminiChatClientIT.java | 36 +-- .../VertexAiPaLm2ChatGenerationClientIT.java | 30 +-- .../ai/chat/prompt/PromptTemplate.java | 44 +++- ...tractConversionServiceOutputConverter.java | 41 ++++ .../AbstractMessageOutputConverter.java | 40 ++++ .../ai/converter/BeanOutputConverter.java | 168 ++++++++++++++ .../ai/converter/FormatProvider.java | 32 +++ .../ai/converter/ListOutputConverter.java | 50 +++++ .../ai/converter/MapOutputConverter.java | 57 +++++ .../springframework/ai/converter/README.md | 13 ++ .../converter/StructuredOutputConverter.java | 39 ++++ ...AbstractConversionServiceOutputParser.java | 12 +- .../AbstractMessageConverterOutputParser.java | 11 +- .../ai/parser/BeanOutputParser.java | 4 +- .../ai/parser/FormatProvider.java | 1 + .../ai/parser/ListOutputParser.java | 4 +- .../ai/parser/MapOutputParser.java | 4 +- .../ai/parser/OutputParser.java | 2 + .../org/springframework/ai/parser/README.md | 3 +- .../BeanOutputConverterTest.java} | 36 +-- .../ListOutputConverterTest.java} | 16 +- .../ROOT/images/structured-output-api.jpg | Bin 0 -> 252531 bytes .../images/structured-output-architecture.jpg | Bin 0 -> 204045 bytes .../images/structured-output-hierarchy4.jpg | Bin 0 -> 255213 bytes .../src/main/antora/modules/ROOT/nav.adoc | 2 +- .../modules/ROOT/pages/api/output-parser.adoc | 123 ----------- .../api/structured-output-converter.adoc | 207 ++++++++++++++++++ 39 files changed, 1013 insertions(+), 455 deletions(-) rename models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/jurassic2/{api => }/BedrockAi21Jurassic2ChatClientIT.java (92%) create mode 100644 spring-ai-core/src/main/java/org/springframework/ai/converter/AbstractConversionServiceOutputConverter.java create mode 100644 spring-ai-core/src/main/java/org/springframework/ai/converter/AbstractMessageOutputConverter.java create mode 100644 spring-ai-core/src/main/java/org/springframework/ai/converter/BeanOutputConverter.java create mode 100644 spring-ai-core/src/main/java/org/springframework/ai/converter/FormatProvider.java create mode 100644 spring-ai-core/src/main/java/org/springframework/ai/converter/ListOutputConverter.java create mode 100644 spring-ai-core/src/main/java/org/springframework/ai/converter/MapOutputConverter.java create mode 100644 spring-ai-core/src/main/java/org/springframework/ai/converter/README.md create mode 100644 spring-ai-core/src/main/java/org/springframework/ai/converter/StructuredOutputConverter.java rename spring-ai-core/src/test/java/org/springframework/ai/{parser/BeanOutputParserTest.java => converter/BeanOutputConverterTest.java} (78%) rename spring-ai-core/src/test/java/org/springframework/ai/{prompt/parsers/ListOutputParserTest.java => converter/ListOutputConverterTest.java} (77%) create mode 100644 spring-ai-docs/src/main/antora/modules/ROOT/images/structured-output-api.jpg create mode 100644 spring-ai-docs/src/main/antora/modules/ROOT/images/structured-output-architecture.jpg create mode 100644 spring-ai-docs/src/main/antora/modules/ROOT/images/structured-output-hierarchy4.jpg delete mode 100644 spring-ai-docs/src/main/antora/modules/ROOT/pages/api/output-parser.adoc create mode 100644 spring-ai-docs/src/main/antora/modules/ROOT/pages/api/structured-output-converter.adoc diff --git a/README.md b/README.md index 1c53af2bd..6feaf43c5 100644 --- a/README.md +++ b/README.md @@ -110,7 +110,7 @@ For a hands-on guide to PromptTemplate, see the [PromptTemplate API guide](https **Output Parsers:** AI model outputs often come as raw `java.lang.String` values. Output Parsers restructure these raw strings into more programmer-friendly formats, such as CSV or JSON. Get insights on Output Parsers in our [concept guide](https://docs.spring.io/spring-ai/reference/concepts.html#_output_parsing).. -For implementation details, visit the [OutputParser API guide](https://docs.spring.io/spring-ai/reference/api/output-parser.html). +For implementation details, visit the [StructuredOutputConverter API guide](https://docs.spring.io/spring-ai/reference/api/output-parser.html). ### Incorporating your data diff --git a/models/spring-ai-anthropic/src/test/java/org/springframework/ai/anthropic/AnthropicChatClientIT.java b/models/spring-ai-anthropic/src/test/java/org/springframework/ai/anthropic/AnthropicChatClientIT.java index 74bf7a3d0..7bc7ef2af 100644 --- a/models/spring-ai-anthropic/src/test/java/org/springframework/ai/anthropic/AnthropicChatClientIT.java +++ b/models/spring-ai-anthropic/src/test/java/org/springframework/ai/anthropic/AnthropicChatClientIT.java @@ -40,10 +40,10 @@ import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; +import org.springframework.ai.converter.BeanOutputConverter; +import org.springframework.ai.converter.ListOutputConverter; +import org.springframework.ai.converter.MapOutputConverter; import org.springframework.ai.model.function.FunctionCallbackWrapper; -import org.springframework.ai.parser.BeanOutputParser; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.ai.parser.MapOutputParser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.test.context.SpringBootTest; @@ -90,11 +90,11 @@ class AnthropicChatClientIT { } @Test - void outputParser() { + void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); - ListOutputParser outputParser = new ListOutputParser(conversionService); + ListOutputConverter listOutputConverter = new ListOutputConverter(conversionService); - String format = outputParser.getFormat(); + String format = listOutputConverter.getFormat(); String template = """ List five {subject} {format} @@ -104,15 +104,15 @@ class AnthropicChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = this.chatClient.call(prompt).getResult(); - List list = outputParser.parse(generation.getOutput().getContent()); + List list = listOutputConverter.convert(generation.getOutput().getContent()); assertThat(list).hasSize(5); } @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConverter() { + MapOutputConverter mapOutputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = mapOutputConverter.getFormat(); String template = """ Provide me a List of {subject} {format} @@ -122,7 +122,7 @@ class AnthropicChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = chatClient.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = mapOutputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } @@ -131,11 +131,11 @@ class AnthropicChatClientIT { } @Test - void beanOutputParserRecords() { + void beanOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter beanOutputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = beanOutputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -144,18 +144,18 @@ class AnthropicChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = chatClient.call(prompt).getResult(); - ActorsFilmsRecord actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilmsRecord actorsFilms = beanOutputConverter.convert(generation.getOutput().getContent()); logger.info("" + actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); } @Test - void beanStreamOutputParserRecords() { + void beanStreamOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter beanOutputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = beanOutputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -173,7 +173,7 @@ class AnthropicChatClientIT { .map(AssistantMessage::getContent) .collect(Collectors.joining()); - ActorsFilmsRecord actorsFilms = outputParser.parse(generationTextFromStream); + ActorsFilmsRecord actorsFilms = beanOutputConverter.convert(generationTextFromStream); logger.info("" + actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); diff --git a/models/spring-ai-azure-openai/src/test/java/org/springframework/ai/azure/openai/AzureOpenAiChatClientIT.java b/models/spring-ai-azure-openai/src/test/java/org/springframework/ai/azure/openai/AzureOpenAiChatClientIT.java index a2fa5e24d..253e13d57 100644 --- a/models/spring-ai-azure-openai/src/test/java/org/springframework/ai/azure/openai/AzureOpenAiChatClientIT.java +++ b/models/spring-ai-azure-openai/src/test/java/org/springframework/ai/azure/openai/AzureOpenAiChatClientIT.java @@ -30,14 +30,14 @@ import org.junit.jupiter.api.condition.EnabledIfEnvironmentVariable; import org.springframework.ai.chat.ChatResponse; import org.springframework.ai.chat.Generation; import org.springframework.ai.chat.messages.AssistantMessage; -import org.springframework.ai.parser.BeanOutputParser; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.ai.parser.MapOutputParser; +import org.springframework.ai.chat.messages.Message; +import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; -import org.springframework.ai.chat.messages.Message; -import org.springframework.ai.chat.messages.UserMessage; +import org.springframework.ai.converter.BeanOutputConverter; +import org.springframework.ai.converter.ListOutputConverter; +import org.springframework.ai.converter.MapOutputConverter; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringBootConfiguration; import org.springframework.boot.test.context.SpringBootTest; @@ -74,11 +74,11 @@ class AzureOpenAiChatClientIT { } @Test - void outputParser() { + void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); - ListOutputParser outputParser = new ListOutputParser(conversionService); + ListOutputConverter outputConverter = new ListOutputConverter(conversionService); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ List five {subject} {format} @@ -88,16 +88,16 @@ class AzureOpenAiChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = chatClient.call(prompt).getResult(); - List list = outputParser.parse(generation.getOutput().getContent()); + List list = outputConverter.convert(generation.getOutput().getContent()); assertThat(list).hasSize(5); } @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConverter() { + MapOutputConverter outputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Provide me a List of {subject} {format} @@ -107,17 +107,17 @@ class AzureOpenAiChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = chatClient.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = outputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } @Test - void beanOutputParser() { + void beanOutputConverter() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilms.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilms.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography for a random actor. {format} @@ -126,7 +126,7 @@ class AzureOpenAiChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = chatClient.call(prompt).getResult(); - ActorsFilms actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilms actorsFilms = outputConverter.convert(generation.getOutput().getContent()); assertThat(actorsFilms.actor()).isNotNull(); } @@ -134,11 +134,11 @@ class AzureOpenAiChatClientIT { } @Test - void beanOutputParserRecords() { + void beanOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -147,16 +147,16 @@ class AzureOpenAiChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = chatClient.call(prompt).getResult(); - ActorsFilmsRecord actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generation.getOutput().getContent()); System.out.println(actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); } @Test - void beanStreamOutputParserRecords() { + void beanStreamOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputParser = new BeanOutputConverter<>(ActorsFilmsRecord.class); String format = outputParser.getFormat(); String template = """ @@ -177,7 +177,7 @@ class AzureOpenAiChatClientIT { .filter(Objects::nonNull) .collect(Collectors.joining()); - ActorsFilmsRecord actorsFilms = outputParser.parse(generationTextFromStream); + ActorsFilmsRecord actorsFilms = outputParser.convert(generationTextFromStream); System.out.println(actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); diff --git a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/anthropic/BedrockAnthropicChatClientIT.java b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/anthropic/BedrockAnthropicChatClientIT.java index 9ec99a9db..43eb7e776 100644 --- a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/anthropic/BedrockAnthropicChatClientIT.java +++ b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/anthropic/BedrockAnthropicChatClientIT.java @@ -27,22 +27,21 @@ import org.junit.jupiter.api.condition.EnabledIfEnvironmentVariable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import reactor.core.publisher.Flux; - -import org.springframework.ai.chat.ChatResponse; -import org.springframework.ai.chat.messages.AssistantMessage; import software.amazon.awssdk.auth.credentials.EnvironmentVariableCredentialsProvider; import software.amazon.awssdk.regions.Region; import org.springframework.ai.bedrock.anthropic.api.AnthropicChatBedrockApi; +import org.springframework.ai.chat.ChatResponse; import org.springframework.ai.chat.Generation; -import org.springframework.ai.parser.BeanOutputParser; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.ai.parser.MapOutputParser; +import org.springframework.ai.chat.messages.AssistantMessage; +import org.springframework.ai.chat.messages.Message; +import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; -import org.springframework.ai.chat.messages.Message; -import org.springframework.ai.chat.messages.UserMessage; +import org.springframework.ai.converter.BeanOutputConverter; +import org.springframework.ai.converter.ListOutputConverter; +import org.springframework.ai.converter.MapOutputConverter; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringBootConfiguration; @@ -108,9 +107,9 @@ class BedrockAnthropicChatClientIT { } @Test - void outputParser() { + void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); - ListOutputParser outputParser = new ListOutputParser(conversionService); + ListOutputConverter outputParser = new ListOutputConverter(conversionService); String format = outputParser.getFormat(); String template = """ @@ -122,15 +121,15 @@ class BedrockAnthropicChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = this.client.call(prompt).getResult(); - List list = outputParser.parse(generation.getOutput().getContent()); + List list = outputParser.convert(generation.getOutput().getContent()); assertThat(list).hasSize(5); } @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConvert() { + MapOutputConverter outputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Provide me a List of {subject} {format} @@ -140,7 +139,7 @@ class BedrockAnthropicChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = outputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } @@ -149,11 +148,11 @@ class BedrockAnthropicChatClientIT { } @Test - void beanOutputParserRecords() { + void beanOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConvert = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConvert.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. Remove non JSON tex blocks from the output. @@ -164,17 +163,17 @@ class BedrockAnthropicChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - ActorsFilmsRecord actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilmsRecord actorsFilms = outputConvert.convert(generation.getOutput().getContent()); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); } @Test - void beanStreamOutputParserRecords() { + void beanStreamOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -193,7 +192,7 @@ class BedrockAnthropicChatClientIT { .map(AssistantMessage::getContent) .collect(Collectors.joining()); - ActorsFilmsRecord actorsFilms = outputParser.parse(generationTextFromStream); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generationTextFromStream); logger.info("" + actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); diff --git a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/anthropic3/BedrockAnthropic3ChatClientIT.java b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/anthropic3/BedrockAnthropic3ChatClientIT.java index 4fa594020..8a98b8821 100644 --- a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/anthropic3/BedrockAnthropic3ChatClientIT.java +++ b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/anthropic3/BedrockAnthropic3ChatClientIT.java @@ -15,12 +15,21 @@ */ package org.springframework.ai.bedrock.anthropic3; +import java.io.IOException; +import java.time.Duration; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + import com.fasterxml.jackson.databind.ObjectMapper; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.condition.EnabledIfEnvironmentVariable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import reactor.core.publisher.Flux; +import software.amazon.awssdk.auth.credentials.EnvironmentVariableCredentialsProvider; +import software.amazon.awssdk.regions.Region; import org.springframework.ai.bedrock.anthropic3.api.Anthropic3ChatBedrockApi; import org.springframework.ai.chat.ChatResponse; @@ -32,9 +41,9 @@ import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; -import org.springframework.ai.parser.BeanOutputParser; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.ai.parser.MapOutputParser; +import org.springframework.ai.converter.BeanOutputConverter; +import org.springframework.ai.converter.ListOutputConverter; +import org.springframework.ai.converter.MapOutputConverter; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringBootConfiguration; @@ -45,16 +54,6 @@ import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource; import org.springframework.util.MimeTypeUtils; -import software.amazon.awssdk.auth.credentials.EnvironmentVariableCredentialsProvider; -import software.amazon.awssdk.regions.Region; - -import java.io.IOException; -import java.time.Duration; -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; - import static org.assertj.core.api.Assertions.assertThat; @SpringBootTest @@ -112,11 +111,11 @@ class BedrockAnthropic3ChatClientIT { } @Test - void outputParser() { + void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); - ListOutputParser outputParser = new ListOutputParser(conversionService); + ListOutputConverter outputConverter = new ListOutputConverter(conversionService); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ List five {subject} {format} @@ -126,15 +125,15 @@ class BedrockAnthropic3ChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = this.client.call(prompt).getResult(); - List list = outputParser.parse(generation.getOutput().getContent()); + List list = outputConverter.convert(generation.getOutput().getContent()); assertThat(list).hasSize(5); } @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConverter() { + MapOutputConverter outputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Provide me a List of {subject} {format} @@ -145,7 +144,7 @@ class BedrockAnthropic3ChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = outputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } @@ -154,11 +153,11 @@ class BedrockAnthropic3ChatClientIT { } @Test - void beanOutputParserRecords() { + void beanOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -169,17 +168,17 @@ class BedrockAnthropic3ChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - ActorsFilmsRecord actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generation.getOutput().getContent()); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); } @Test - void beanStreamOutputParserRecords() { + void beanStreamOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -198,7 +197,7 @@ class BedrockAnthropic3ChatClientIT { .map(AssistantMessage::getContent) .collect(Collectors.joining()); - ActorsFilmsRecord actorsFilms = outputParser.parse(generationTextFromStream); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generationTextFromStream); logger.info("" + actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); diff --git a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/cohere/BedrockCohereChatClientIT.java b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/cohere/BedrockCohereChatClientIT.java index 95c700685..567926810 100644 --- a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/cohere/BedrockCohereChatClientIT.java +++ b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/cohere/BedrockCohereChatClientIT.java @@ -25,8 +25,6 @@ import com.fasterxml.jackson.databind.ObjectMapper; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.condition.EnabledIfEnvironmentVariable; import reactor.core.publisher.Flux; - -import org.springframework.ai.chat.messages.AssistantMessage; import software.amazon.awssdk.auth.credentials.EnvironmentVariableCredentialsProvider; import software.amazon.awssdk.regions.Region; @@ -34,14 +32,15 @@ import org.springframework.ai.bedrock.cohere.api.CohereChatBedrockApi; import org.springframework.ai.bedrock.cohere.api.CohereChatBedrockApi.CohereChatModel; import org.springframework.ai.chat.ChatResponse; import org.springframework.ai.chat.Generation; -import org.springframework.ai.parser.BeanOutputParser; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.ai.parser.MapOutputParser; +import org.springframework.ai.chat.messages.AssistantMessage; +import org.springframework.ai.chat.messages.Message; +import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; -import org.springframework.ai.chat.messages.Message; -import org.springframework.ai.chat.messages.UserMessage; +import org.springframework.ai.converter.BeanOutputConverter; +import org.springframework.ai.converter.ListOutputConverter; +import org.springframework.ai.converter.MapOutputConverter; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringBootConfiguration; @@ -104,11 +103,11 @@ class BedrockCohereChatClientIT { } @Test - void outputParser() { + void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); - ListOutputParser outputParser = new ListOutputParser(conversionService); + ListOutputConverter outputConverter = new ListOutputConverter(conversionService); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ List five {subject} {format} @@ -118,15 +117,15 @@ class BedrockCohereChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = this.client.call(prompt).getResult(); - List list = outputParser.parse(generation.getOutput().getContent()); + List list = outputConverter.convert(generation.getOutput().getContent()); assertThat(list).hasSize(5); } @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConverter() { + MapOutputConverter outputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Remove Markdown code blocks from the output. Provide me a List of {subject} @@ -137,7 +136,7 @@ class BedrockCohereChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = outputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } @@ -146,11 +145,11 @@ class BedrockCohereChatClientIT { } @Test - void beanOutputParserRecords() { + void beanOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -160,17 +159,17 @@ class BedrockCohereChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - ActorsFilmsRecord actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generation.getOutput().getContent()); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); } @Test - void beanStreamOutputParserRecords() { + void beanStreamOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -189,7 +188,7 @@ class BedrockCohereChatClientIT { .map(AssistantMessage::getContent) .collect(Collectors.joining()); - ActorsFilmsRecord actorsFilms = outputParser.parse(generationTextFromStream); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generationTextFromStream); System.out.println(actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); diff --git a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/jurassic2/api/BedrockAi21Jurassic2ChatClientIT.java b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/jurassic2/BedrockAi21Jurassic2ChatClientIT.java similarity index 92% rename from models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/jurassic2/api/BedrockAi21Jurassic2ChatClientIT.java rename to models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/jurassic2/BedrockAi21Jurassic2ChatClientIT.java index 0fca363d7..f6614b852 100644 --- a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/jurassic2/api/BedrockAi21Jurassic2ChatClientIT.java +++ b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/jurassic2/BedrockAi21Jurassic2ChatClientIT.java @@ -14,14 +14,21 @@ * limitations under the License. */ -package org.springframework.ai.bedrock.jurassic2.api; +package org.springframework.ai.bedrock.jurassic2; + +import java.time.Duration; +import java.util.Arrays; +import java.util.List; +import java.util.Map; import com.fasterxml.jackson.databind.ObjectMapper; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.condition.EnabledIfEnvironmentVariable; -import org.springframework.ai.bedrock.jurassic2.BedrockAi21Jurassic2ChatClient; -import org.springframework.ai.bedrock.jurassic2.BedrockAi21Jurassic2ChatOptions; +import software.amazon.awssdk.auth.credentials.EnvironmentVariableCredentialsProvider; +import software.amazon.awssdk.regions.Region; + +import org.springframework.ai.bedrock.jurassic2.api.Ai21Jurassic2ChatBedrockApi; import org.springframework.ai.chat.ChatResponse; import org.springframework.ai.chat.Generation; import org.springframework.ai.chat.messages.Message; @@ -29,20 +36,13 @@ import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; -import org.springframework.ai.parser.MapOutputParser; +import org.springframework.ai.converter.MapOutputConverter; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringBootConfiguration; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.annotation.Bean; import org.springframework.core.io.Resource; -import software.amazon.awssdk.auth.credentials.EnvironmentVariableCredentialsProvider; -import software.amazon.awssdk.regions.Region; - -import java.time.Duration; -import java.util.Arrays; -import java.util.List; -import java.util.Map; import static org.assertj.core.api.Assertions.assertThat; @@ -109,10 +109,10 @@ class BedrockAi21Jurassic2ChatClientIT { } @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConverter() { + MapOutputConverter outputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Provide me a List of {subject} {format} @@ -122,7 +122,7 @@ class BedrockAi21Jurassic2ChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = outputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } diff --git a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/llama/BedrockLlamaChatClientIT.java b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/llama/BedrockLlamaChatClientIT.java index 554afcf9f..3ecaf8650 100644 --- a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/llama/BedrockLlamaChatClientIT.java +++ b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/llama/BedrockLlamaChatClientIT.java @@ -38,9 +38,9 @@ import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; -import org.springframework.ai.parser.BeanOutputParser; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.ai.parser.MapOutputParser; +import org.springframework.ai.converter.BeanOutputConverter; +import org.springframework.ai.converter.ListOutputConverter; +import org.springframework.ai.converter.MapOutputConverter; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringBootConfiguration; @@ -104,11 +104,11 @@ class BedrockLlamaChatClientIT { } @Test - void outputParser() { + void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); - ListOutputParser outputParser = new ListOutputParser(conversionService); + ListOutputConverter outputConverter = new ListOutputConverter(conversionService); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ List five {subject} {format} @@ -118,15 +118,15 @@ class BedrockLlamaChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = this.client.call(prompt).getResult(); - List list = outputParser.parse(generation.getOutput().getContent()); + List list = outputConverter.convert(generation.getOutput().getContent()); assertThat(list).hasSize(5); } @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConverter() { + MapOutputConverter outputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Provide me a List of {subject} {format} @@ -136,7 +136,7 @@ class BedrockLlamaChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = outputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } @@ -145,11 +145,11 @@ class BedrockLlamaChatClientIT { } @Test - void beanOutputParserRecords() { + void beanOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -160,17 +160,17 @@ class BedrockLlamaChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - ActorsFilmsRecord actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generation.getOutput().getContent()); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); } @Test - void beanStreamOutputParserRecords() { + void beanStreamOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -189,7 +189,7 @@ class BedrockLlamaChatClientIT { .map(AssistantMessage::getContent) .collect(Collectors.joining()); - ActorsFilmsRecord actorsFilms = outputParser.parse(generationTextFromStream); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generationTextFromStream); System.out.println(actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); diff --git a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatClientIT.java b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatClientIT.java index f3a523be2..54af175be 100644 --- a/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatClientIT.java +++ b/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/titan/BedrockTitanChatClientIT.java @@ -26,23 +26,22 @@ import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.condition.EnabledIfEnvironmentVariable; import reactor.core.publisher.Flux; - -import org.springframework.ai.chat.ChatResponse; -import org.springframework.ai.chat.messages.AssistantMessage; import software.amazon.awssdk.auth.credentials.EnvironmentVariableCredentialsProvider; import software.amazon.awssdk.regions.Region; import org.springframework.ai.bedrock.titan.api.TitanChatBedrockApi; import org.springframework.ai.bedrock.titan.api.TitanChatBedrockApi.TitanChatModel; +import org.springframework.ai.chat.ChatResponse; import org.springframework.ai.chat.Generation; -import org.springframework.ai.parser.BeanOutputParser; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.ai.parser.MapOutputParser; +import org.springframework.ai.chat.messages.AssistantMessage; +import org.springframework.ai.chat.messages.Message; +import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; -import org.springframework.ai.chat.messages.Message; -import org.springframework.ai.chat.messages.UserMessage; +import org.springframework.ai.converter.BeanOutputConverter; +import org.springframework.ai.converter.ListOutputConverter; +import org.springframework.ai.converter.MapOutputConverter; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringBootConfiguration; @@ -106,11 +105,11 @@ class BedrockTitanChatClientIT { @Disabled("TODO: Fix the parser instructions to return the correct format") @Test - void outputParser() { + void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); - ListOutputParser outputParser = new ListOutputParser(conversionService); + ListOutputConverter outputConverter = new ListOutputConverter(conversionService); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ List five {subject} {format} @@ -120,16 +119,16 @@ class BedrockTitanChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = this.client.call(prompt).getResult(); - List list = outputParser.parse(generation.getOutput().getContent()); + List list = outputConverter.convert(generation.getOutput().getContent()); assertThat(list).hasSize(5); } @Disabled("TODO: Fix the parser instructions to return the correct format") @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConverter() { + MapOutputConverter outputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Remove Markdown code blocks from the output. Provide me a List of {subject} @@ -141,7 +140,7 @@ class BedrockTitanChatClientIT { Generation generation = client.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = outputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } @@ -151,11 +150,11 @@ class BedrockTitanChatClientIT { @Disabled("TODO: Fix the parser instructions to return the correct format") @Test - void beanOutputParserRecords() { + void beanOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -165,18 +164,18 @@ class BedrockTitanChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - ActorsFilmsRecord actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generation.getOutput().getContent()); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); } @Disabled("TODO: Fix the parser instructions to return the correct format") @Test - void beanStreamOutputParserRecords() { + void beanStreamOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -195,7 +194,7 @@ class BedrockTitanChatClientIT { .map(AssistantMessage::getContent) .collect(Collectors.joining()); - ActorsFilmsRecord actorsFilms = outputParser.parse(generationTextFromStream); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generationTextFromStream); System.out.println(actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); diff --git a/models/spring-ai-mistral-ai/src/test/java/org/springframework/ai/mistralai/MistralAiChatClientIT.java b/models/spring-ai-mistral-ai/src/test/java/org/springframework/ai/mistralai/MistralAiChatClientIT.java index 00cbf6973..87e6acbdb 100644 --- a/models/spring-ai-mistral-ai/src/test/java/org/springframework/ai/mistralai/MistralAiChatClientIT.java +++ b/models/spring-ai-mistral-ai/src/test/java/org/springframework/ai/mistralai/MistralAiChatClientIT.java @@ -37,11 +37,11 @@ import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; +import org.springframework.ai.converter.BeanOutputConverter; +import org.springframework.ai.converter.ListOutputConverter; +import org.springframework.ai.converter.MapOutputConverter; import org.springframework.ai.mistralai.api.MistralAiApi; import org.springframework.ai.model.function.FunctionCallbackWrapper; -import org.springframework.ai.parser.BeanOutputParser; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.ai.parser.MapOutputParser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.test.context.SpringBootTest; @@ -96,11 +96,11 @@ class MistralAiChatClientIT { } @Test - void outputParser() { + void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); - ListOutputParser outputParser = new ListOutputParser(conversionService); + ListOutputConverter outputConverter = new ListOutputConverter(conversionService); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ List five {subject} {format} @@ -110,15 +110,15 @@ class MistralAiChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = this.chatClient.call(prompt).getResult(); - List list = outputParser.parse(generation.getOutput().getContent()); + List list = outputConverter.convert(generation.getOutput().getContent()); assertThat(list).hasSize(5); } @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConverter() { + MapOutputConverter outputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Provide me a List of {subject} {format} @@ -128,7 +128,7 @@ class MistralAiChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = chatClient.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = outputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } @@ -137,11 +137,11 @@ class MistralAiChatClientIT { } @Test - void beanOutputParserRecords() { + void beanOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -150,18 +150,18 @@ class MistralAiChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = chatClient.call(prompt).getResult(); - ActorsFilmsRecord actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generation.getOutput().getContent()); logger.info("" + actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); } @Test - void beanStreamOutputParserRecords() { + void beanStreamOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -179,7 +179,7 @@ class MistralAiChatClientIT { .map(AssistantMessage::getContent) .collect(Collectors.joining()); - ActorsFilmsRecord actorsFilms = outputParser.parse(generationTextFromStream); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generationTextFromStream); logger.info("" + actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); diff --git a/models/spring-ai-ollama/src/test/java/org/springframework/ai/ollama/OllamaChatClientIT.java b/models/spring-ai-ollama/src/test/java/org/springframework/ai/ollama/OllamaChatClientIT.java index 298eb2fd1..6f4254fa4 100644 --- a/models/spring-ai-ollama/src/test/java/org/springframework/ai/ollama/OllamaChatClientIT.java +++ b/models/spring-ai-ollama/src/test/java/org/springframework/ai/ollama/OllamaChatClientIT.java @@ -26,30 +26,30 @@ import org.apache.commons.logging.LogFactory; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; -import org.springframework.ai.chat.metadata.Usage; -import org.springframework.ai.chat.prompt.ChatOptionsBuilder; -import org.springframework.ai.chat.messages.AssistantMessage; import org.testcontainers.junit.jupiter.Container; import org.testcontainers.junit.jupiter.Testcontainers; +import org.testcontainers.ollama.OllamaContainer; import org.springframework.ai.chat.ChatResponse; import org.springframework.ai.chat.Generation; -import org.springframework.ai.ollama.api.OllamaApi; -import org.springframework.ai.ollama.api.OllamaOptions; -import org.springframework.ai.parser.BeanOutputParser; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.ai.parser.MapOutputParser; +import org.springframework.ai.chat.messages.AssistantMessage; +import org.springframework.ai.chat.messages.Message; +import org.springframework.ai.chat.messages.UserMessage; +import org.springframework.ai.chat.metadata.Usage; +import org.springframework.ai.chat.prompt.ChatOptionsBuilder; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; -import org.springframework.ai.chat.messages.Message; -import org.springframework.ai.chat.messages.UserMessage; +import org.springframework.ai.converter.BeanOutputConverter; +import org.springframework.ai.converter.ListOutputConverter; +import org.springframework.ai.converter.MapOutputConverter; +import org.springframework.ai.ollama.api.OllamaApi; +import org.springframework.ai.ollama.api.OllamaOptions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringBootConfiguration; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.annotation.Bean; import org.springframework.core.convert.support.DefaultConversionService; -import org.testcontainers.ollama.OllamaContainer; import static org.assertj.core.api.Assertions.assertThat; @@ -119,11 +119,11 @@ class OllamaChatClientIT { } @Test - void outputParser() { + void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); - ListOutputParser outputParser = new ListOutputParser(conversionService); + ListOutputConverter outputConverter = new ListOutputConverter(conversionService); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ List five {subject} {format} @@ -133,15 +133,15 @@ class OllamaChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = this.client.call(prompt).getResult(); - List list = outputParser.parse(generation.getOutput().getContent()); + List list = outputConverter.convert(generation.getOutput().getContent()); assertThat(list).hasSize(5); } @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConvert() { + MapOutputConverter outputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Remove Markdown code blocks from the output. Provide me a List of {subject} @@ -153,7 +153,7 @@ class OllamaChatClientIT { Generation generation = client.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = outputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } @@ -162,11 +162,11 @@ class OllamaChatClientIT { } @Test - void beanOutputParserRecords() { + void beanOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -175,17 +175,17 @@ class OllamaChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - ActorsFilmsRecord actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generation.getOutput().getContent()); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); } @Test - void beanStreamOutputParserRecords() { + void beanStreamOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -204,7 +204,7 @@ class OllamaChatClientIT { .map(AssistantMessage::getContent) .collect(Collectors.joining()); - ActorsFilmsRecord actorsFilms = outputParser.parse(generationTextFromStream); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generationTextFromStream); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); @@ -220,8 +220,7 @@ class OllamaChatClientIT { @Bean public OllamaChatClient ollamaChat(OllamaApi ollamaApi) { - return new OllamaChatClient(ollamaApi).withModel(MODEL) - .withDefaultOptions(OllamaOptions.create().withModel(MODEL).withTemperature(0.9f)); + return new OllamaChatClient(ollamaApi, OllamaOptions.create().withModel(MODEL).withTemperature(0.9f)); } } diff --git a/models/spring-ai-openai/src/test/java/org/springframework/ai/openai/chat/OpenAiChatClientIT.java b/models/spring-ai-openai/src/test/java/org/springframework/ai/openai/chat/OpenAiChatClientIT.java index 82f034ffa..e82395ff0 100644 --- a/models/spring-ai-openai/src/test/java/org/springframework/ai/openai/chat/OpenAiChatClientIT.java +++ b/models/spring-ai-openai/src/test/java/org/springframework/ai/openai/chat/OpenAiChatClientIT.java @@ -37,15 +37,15 @@ import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; +import org.springframework.ai.converter.BeanOutputConverter; +import org.springframework.ai.converter.ListOutputConverter; +import org.springframework.ai.converter.MapOutputConverter; import org.springframework.ai.model.function.FunctionCallbackWrapper; import org.springframework.ai.openai.OpenAiChatOptions; import org.springframework.ai.openai.OpenAiTestConfiguration; import org.springframework.ai.openai.api.OpenAiApi; import org.springframework.ai.openai.api.tool.MockWeatherService; import org.springframework.ai.openai.testutils.AbstractIT; -import org.springframework.ai.parser.BeanOutputParser; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.ai.parser.MapOutputParser; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.core.convert.support.DefaultConversionService; @@ -67,7 +67,7 @@ class OpenAiChatClientIT extends AbstractIT { @Test void roleTest() { UserMessage userMessage = new UserMessage( - "Tell me about 3 famous pirates from the Golden Age of Piracy and why they did."); + "Tell me about 3 famous pirates from the Golden Age of Piracy and what they did."); SystemPromptTemplate systemPromptTemplate = new SystemPromptTemplate(systemResource); Message systemMessage = systemPromptTemplate.createMessage(Map.of("name", "Bob", "voice", "pirate")); Prompt prompt = new Prompt(List.of(userMessage, systemMessage)); @@ -78,11 +78,11 @@ class OpenAiChatClientIT extends AbstractIT { } @Test - void outputParser() { + void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); - ListOutputParser outputParser = new ListOutputParser(conversionService); + ListOutputConverter outputConverter = new ListOutputConverter(conversionService); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ List five {subject} {format} @@ -92,16 +92,16 @@ class OpenAiChatClientIT extends AbstractIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = this.chatClient.call(prompt).getResult(); - List list = outputParser.parse(generation.getOutput().getContent()); + List list = outputConverter.convert(generation.getOutput().getContent()); assertThat(list).hasSize(5); } @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConverter() { + MapOutputConverter outputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Provide me a List of {subject} {format} @@ -111,17 +111,17 @@ class OpenAiChatClientIT extends AbstractIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = chatClient.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = outputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } @Test - void beanOutputParser() { + void beanOutputConverter() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilms.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilms.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography for a random actor. {format} @@ -130,18 +130,18 @@ class OpenAiChatClientIT extends AbstractIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = chatClient.call(prompt).getResult(); - ActorsFilms actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilms actorsFilms = outputConverter.convert(generation.getOutput().getContent()); } record ActorsFilmsRecord(String actor, List movies) { } @Test - void beanOutputParserRecords() { + void beanOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -150,18 +150,18 @@ class OpenAiChatClientIT extends AbstractIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = chatClient.call(prompt).getResult(); - ActorsFilmsRecord actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generation.getOutput().getContent()); logger.info("" + actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); } @Test - void beanStreamOutputParserRecords() { + void beanStreamOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -179,7 +179,7 @@ class OpenAiChatClientIT extends AbstractIT { .map(AssistantMessage::getContent) .collect(Collectors.joining()); - ActorsFilmsRecord actorsFilms = outputParser.parse(generationTextFromStream); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generationTextFromStream); logger.info("" + actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); diff --git a/models/spring-ai-vertex-ai-gemini/src/test/java/org/springframework/ai/vertexai/gemini/VertexAiGeminiChatClientIT.java b/models/spring-ai-vertex-ai-gemini/src/test/java/org/springframework/ai/vertexai/gemini/VertexAiGeminiChatClientIT.java index 3f5783c6e..b9cfa126c 100644 --- a/models/spring-ai-vertex-ai-gemini/src/test/java/org/springframework/ai/vertexai/gemini/VertexAiGeminiChatClientIT.java +++ b/models/spring-ai-vertex-ai-gemini/src/test/java/org/springframework/ai/vertexai/gemini/VertexAiGeminiChatClientIT.java @@ -35,9 +35,9 @@ import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; -import org.springframework.ai.parser.BeanOutputParser; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.ai.parser.MapOutputParser; +import org.springframework.ai.converter.BeanOutputConverter; +import org.springframework.ai.converter.ListOutputConverter; +import org.springframework.ai.converter.MapOutputConverter; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringBootConfiguration; @@ -75,9 +75,9 @@ class VertexAiGeminiChatClientIT { } @Test - void outputParser() { + void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); - ListOutputParser outputParser = new ListOutputParser(conversionService); + ListOutputConverter outputParser = new ListOutputConverter(conversionService); String format = outputParser.getFormat(); String template = """ @@ -89,15 +89,15 @@ class VertexAiGeminiChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = this.client.call(prompt).getResult(); - List list = outputParser.parse(generation.getOutput().getContent()); + List list = outputParser.convert(generation.getOutput().getContent()); assertThat(list).hasSize(5); } @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConverter() { + MapOutputConverter outputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Provide me a List of {subject} Remove the ```json outer brackets. @@ -108,7 +108,7 @@ class VertexAiGeminiChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = outputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } @@ -117,11 +117,11 @@ class VertexAiGeminiChatClientIT { } @Test - void beanOutputParserRecords() { + void beanOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConvert = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConvert.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. Remove the ```json outer brackets. @@ -131,7 +131,7 @@ class VertexAiGeminiChatClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - ActorsFilmsRecord actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilmsRecord actorsFilms = outputConvert.convert(generation.getOutput().getContent()); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); } @@ -154,11 +154,11 @@ class VertexAiGeminiChatClientIT { } @Test - void beanStreamOutputParserRecords() { + void beanStreamOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. Remove the ```json outer brackets. @@ -177,7 +177,7 @@ class VertexAiGeminiChatClientIT { .map(AssistantMessage::getContent) .collect(Collectors.joining()); - ActorsFilmsRecord actorsFilms = outputParser.parse(generationTextFromStream); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generationTextFromStream); // logger.info("" + actorsFilms); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); diff --git a/models/spring-ai-vertex-ai-palm2/src/test/java/org/springframework/ai/vertexai/palm2/VertexAiPaLm2ChatGenerationClientIT.java b/models/spring-ai-vertex-ai-palm2/src/test/java/org/springframework/ai/vertexai/palm2/VertexAiPaLm2ChatGenerationClientIT.java index b66133267..5fd43b0d5 100644 --- a/models/spring-ai-vertex-ai-palm2/src/test/java/org/springframework/ai/vertexai/palm2/VertexAiPaLm2ChatGenerationClientIT.java +++ b/models/spring-ai-vertex-ai-palm2/src/test/java/org/springframework/ai/vertexai/palm2/VertexAiPaLm2ChatGenerationClientIT.java @@ -29,9 +29,9 @@ import org.springframework.ai.chat.messages.UserMessage; import org.springframework.ai.chat.prompt.Prompt; import org.springframework.ai.chat.prompt.PromptTemplate; import org.springframework.ai.chat.prompt.SystemPromptTemplate; -import org.springframework.ai.parser.BeanOutputParser; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.ai.parser.MapOutputParser; +import org.springframework.ai.converter.BeanOutputConverter; +import org.springframework.ai.converter.ListOutputConverter; +import org.springframework.ai.converter.MapOutputConverter; import org.springframework.ai.vertexai.palm2.api.VertexAiPaLm2Api; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -67,11 +67,11 @@ class VertexAiPaLm2ChatGenerationClientIT { } // @Test - void outputParser() { + void listOutputConverter() { DefaultConversionService conversionService = new DefaultConversionService(); - ListOutputParser outputParser = new ListOutputParser(conversionService); + ListOutputConverter outputConverter = new ListOutputConverter(conversionService); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ List five {subject} {format} @@ -81,16 +81,16 @@ class VertexAiPaLm2ChatGenerationClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = this.client.call(prompt).getResult(); - List list = outputParser.parse(generation.getOutput().getContent()); + List list = outputConverter.convert(generation.getOutput().getContent()); assertThat(list).hasSize(5); } // @Test - void mapOutputParser() { - MapOutputParser outputParser = new MapOutputParser(); + void mapOutputConverter() { + MapOutputConverter outputConverter = new MapOutputConverter(); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Provide me a List of {subject} {format} @@ -100,7 +100,7 @@ class VertexAiPaLm2ChatGenerationClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - Map result = outputParser.parse(generation.getOutput().getContent()); + Map result = outputConverter.convert(generation.getOutput().getContent()); assertThat(result.get("numbers")).isEqualTo(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9)); } @@ -109,11 +109,11 @@ class VertexAiPaLm2ChatGenerationClientIT { } // @Test - void beanOutputParserRecords() { + void beanOutputConverterRecords() { - BeanOutputParser outputParser = new BeanOutputParser<>(ActorsFilmsRecord.class); + BeanOutputConverter outputConverter = new BeanOutputConverter<>(ActorsFilmsRecord.class); - String format = outputParser.getFormat(); + String format = outputConverter.getFormat(); String template = """ Generate the filmography of 5 movies for Tom Hanks. {format} @@ -122,7 +122,7 @@ class VertexAiPaLm2ChatGenerationClientIT { Prompt prompt = new Prompt(promptTemplate.createMessage()); Generation generation = client.call(prompt).getResult(); - ActorsFilmsRecord actorsFilms = outputParser.parse(generation.getOutput().getContent()); + ActorsFilmsRecord actorsFilms = outputConverter.convert(generation.getOutput().getContent()); assertThat(actorsFilms.actor()).isEqualTo("Tom Hanks"); assertThat(actorsFilms.movies()).hasSize(5); } diff --git a/spring-ai-core/src/main/java/org/springframework/ai/chat/prompt/PromptTemplate.java b/spring-ai-core/src/main/java/org/springframework/ai/chat/prompt/PromptTemplate.java index 8bf2166fd..b663e990d 100644 --- a/spring-ai-core/src/main/java/org/springframework/ai/chat/prompt/PromptTemplate.java +++ b/spring-ai-core/src/main/java/org/springframework/ai/chat/prompt/PromptTemplate.java @@ -15,17 +15,6 @@ */ package org.springframework.ai.chat.prompt; -import org.antlr.runtime.Token; -import org.antlr.runtime.TokenStream; -import org.springframework.ai.chat.messages.Media; -import org.springframework.ai.chat.messages.Message; -import org.springframework.ai.chat.messages.UserMessage; -import org.springframework.ai.parser.OutputParser; -import org.springframework.core.io.Resource; -import org.springframework.util.StreamUtils; -import org.stringtemplate.v4.ST; -import org.stringtemplate.v4.compiler.STLexer; - import java.io.IOException; import java.io.InputStream; import java.nio.charset.Charset; @@ -37,6 +26,19 @@ import java.util.Map.Entry; import java.util.Objects; import java.util.Set; +import org.antlr.runtime.Token; +import org.antlr.runtime.TokenStream; +import org.stringtemplate.v4.ST; +import org.stringtemplate.v4.compiler.STLexer; + +import org.springframework.ai.chat.messages.Media; +import org.springframework.ai.chat.messages.Message; +import org.springframework.ai.chat.messages.UserMessage; +import org.springframework.ai.converter.StructuredOutputConverter; +import org.springframework.ai.parser.OutputParser; +import org.springframework.core.io.Resource; +import org.springframework.util.StreamUtils; + public class PromptTemplate implements PromptTemplateActions, PromptTemplateMessageActions { private ST st; @@ -49,6 +51,8 @@ public class PromptTemplate implements PromptTemplateActions, PromptTemplateMess private OutputParser outputParser; + private StructuredOutputConverter structuredOutputConverter; + public PromptTemplate(Resource resource) { try (InputStream inputStream = resource.getInputStream()) { this.template = StreamUtils.copyToString(inputStream, Charset.defaultCharset()); @@ -110,15 +114,31 @@ public class PromptTemplate implements PromptTemplateActions, PromptTemplateMess } } + /** + * @deprecated Use {@link #getOutputConverter()} instead. + */ public OutputParser getOutputParser() { - return outputParser; + return this.outputParser; } + /** + * @deprecated Use {@link #setOutputConverter(StructuredOutputConverter)} + * instead. + */ public void setOutputParser(OutputParser outputParser) { Objects.requireNonNull(outputParser, "Output Parser can not be null"); this.outputParser = outputParser; } + public StructuredOutputConverter getOutputConverter() { + return this.structuredOutputConverter; + } + + public void setOutputConverter(StructuredOutputConverter structuredOutputConverter) { + Objects.requireNonNull(structuredOutputConverter, "Structured Output Converter can not be null"); + this.structuredOutputConverter = structuredOutputConverter; + } + public void add(String name, Object value) { this.st.add(name, value); this.dynamicModel.put(name, value); diff --git a/spring-ai-core/src/main/java/org/springframework/ai/converter/AbstractConversionServiceOutputConverter.java b/spring-ai-core/src/main/java/org/springframework/ai/converter/AbstractConversionServiceOutputConverter.java new file mode 100644 index 000000000..6f209fa86 --- /dev/null +++ b/spring-ai-core/src/main/java/org/springframework/ai/converter/AbstractConversionServiceOutputConverter.java @@ -0,0 +1,41 @@ +/* + * Copyright 2023 - 2024 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.ai.converter; + +import org.springframework.core.convert.support.DefaultConversionService; + +/** + * Abstract {@link StructuredOutputConverter} implementation that uses a pre-configured + * {@link DefaultConversionService} to convert the LLM output into the desired type + * format. + * + * @param Specifies the desired response type. + * @author Mark Pollack + * @author Christian Tzolov + */ +public abstract class AbstractConversionServiceOutputConverter implements StructuredOutputConverter { + + private final DefaultConversionService conversionService; + + public AbstractConversionServiceOutputConverter(DefaultConversionService conversionService) { + this.conversionService = conversionService; + } + + public DefaultConversionService getConversionService() { + return this.conversionService; + } + +} diff --git a/spring-ai-core/src/main/java/org/springframework/ai/converter/AbstractMessageOutputConverter.java b/spring-ai-core/src/main/java/org/springframework/ai/converter/AbstractMessageOutputConverter.java new file mode 100644 index 000000000..05077025c --- /dev/null +++ b/spring-ai-core/src/main/java/org/springframework/ai/converter/AbstractMessageOutputConverter.java @@ -0,0 +1,40 @@ +/* + * Copyright 2023 - 2024 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.ai.converter; + +import org.springframework.messaging.converter.MessageConverter; + +/** + * Abstract {@link StructuredOutputConverter} implementation that uses a pre-configured + * {@link MessageConverter} to convert the LLM output into the desired type format. + * + * @param Specifies the desired response type. + * @author Mark Pollack + * @author Christian Tzolov + */ +public abstract class AbstractMessageOutputConverter implements StructuredOutputConverter { + + private MessageConverter messageConverter; + + public AbstractMessageOutputConverter(MessageConverter messageConverter) { + this.messageConverter = messageConverter; + } + + public MessageConverter getMessageConverter() { + return this.messageConverter; + } + +} diff --git a/spring-ai-core/src/main/java/org/springframework/ai/converter/BeanOutputConverter.java b/spring-ai-core/src/main/java/org/springframework/ai/converter/BeanOutputConverter.java new file mode 100644 index 000000000..a26b5e97b --- /dev/null +++ b/spring-ai-core/src/main/java/org/springframework/ai/converter/BeanOutputConverter.java @@ -0,0 +1,168 @@ +/* + * Copyright 2023 - 2024 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.ai.converter; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.util.DefaultIndenter; +import com.fasterxml.jackson.core.util.DefaultPrettyPrinter; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.ObjectWriter; +import com.github.victools.jsonschema.generator.SchemaGenerator; +import com.github.victools.jsonschema.generator.SchemaGeneratorConfig; +import com.github.victools.jsonschema.generator.SchemaGeneratorConfigBuilder; +import com.github.victools.jsonschema.module.jackson.JacksonModule; + +import org.springframework.lang.NonNull; + +import java.util.Map; +import java.util.Objects; + +import static com.github.victools.jsonschema.generator.OptionPreset.PLAIN_JSON; +import static com.github.victools.jsonschema.generator.SchemaVersion.DRAFT_2020_12; + +/** + * An implementation of {@link StructuredOutputConverter} that transforms the LLM output + * to a specific object type using JSON schema. This parser works by generating a JSON + * schema based on a given Java class, which is then used to validate and transform the + * LLM output into the desired type. + * + * @param The target type to which the output will be converted. + * @author Mark Pollack + * @author Christian Tzolov + * @author Sebastian Ullrich + * @author Kirk Lund + */ +public class BeanOutputConverter implements StructuredOutputConverter { + + /** Holds the generated JSON schema for the target type. */ + private String jsonSchema; + + /** The Java class representing the target type. */ + @SuppressWarnings({ "FieldMayBeFinal", "rawtypes" }) + private Class clazz; + + /** The object mapper used for deserialization and other JSON operations. */ + @SuppressWarnings("FieldMayBeFinal") + private ObjectMapper objectMapper; + + /** + * Constructor to initialize with the target type's class. + * @param clazz The target type's class. + */ + public BeanOutputConverter(Class clazz) { + this(clazz, null); + } + + /** + * Constructor to initialize with the target type's class, a custom object mapper, and + * a line endings normalizer to ensure consistent line endings on any platform. + * @param clazz The target type's class. + * @param objectMapper Custom object mapper for JSON operations. endings. + */ + public BeanOutputConverter(Class clazz, ObjectMapper objectMapper) { + Objects.requireNonNull(clazz, "Java Class cannot be null;"); + this.clazz = clazz; + this.objectMapper = objectMapper != null ? objectMapper : getObjectMapper(); + generateSchema(); + } + + /** + * Generates the JSON schema for the target type. + */ + private void generateSchema() { + JacksonModule jacksonModule = new JacksonModule(); + SchemaGeneratorConfigBuilder configBuilder = new SchemaGeneratorConfigBuilder(DRAFT_2020_12, PLAIN_JSON) + .with(jacksonModule); + SchemaGeneratorConfig config = configBuilder.build(); + SchemaGenerator generator = new SchemaGenerator(config); + JsonNode jsonNode = generator.generateSchema(this.clazz); + ObjectWriter objectWriter = new ObjectMapper().writer(new DefaultPrettyPrinter() + .withObjectIndenter(new DefaultIndenter().withLinefeed(System.lineSeparator()))); + try { + this.jsonSchema = objectWriter.writeValueAsString(jsonNode); + } + catch (JsonProcessingException e) { + throw new RuntimeException("Could not pretty print json schema for " + this.clazz, e); + } + } + + @Override + /** + * Parses the given text to transform it to the desired target type. + * @param text The LLM output in string format. + * @return The parsed output in the desired target type. + */ + public T convert(@NonNull String text) { + try { + // If the response is a JSON Schema, extract the properties and use them as + // the response. + text = this.jsonSchemaToInstance(text); + return (T) this.objectMapper.readValue(text, this.clazz); + } + catch (JsonProcessingException e) { + throw new RuntimeException(e); + } + } + + /** + * Converts a JSON Schema to an instance based on a given text. + * @param text The JSON Schema in string format. + * @return The JSON instance generated from the JSON Schema, or the original text if + * the input is not a JSON Schema. + */ + private String jsonSchemaToInstance(String text) { + try { + Map map = this.objectMapper.readValue(text, Map.class); + if (map.containsKey("$schema")) { + return this.objectMapper.writeValueAsString(map.get("properties")); + } + } + catch (Exception e) { + } + return text; + } + + /** + * Configures and returns an object mapper for JSON operations. + * @return Configured object mapper. + */ + protected ObjectMapper getObjectMapper() { + ObjectMapper mapper = new ObjectMapper(); + mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + return mapper; + } + + /** + * Provides the expected format of the response, instructing that it should adhere to + * the generated JSON schema. + * @return The instruction format string. + */ + @Override + public String getFormat() { + String template = """ + Your response should be in JSON format. + Do not include any explanations, only provide a RFC8259 compliant JSON response following this format without deviation. + Do not include markdown code blocks in your response. + Remove the ```json markdown from the output. + Here is the JSON Schema instance your output must adhere to: + ```%s``` + """; + return String.format(template, this.jsonSchema); + } + +} diff --git a/spring-ai-core/src/main/java/org/springframework/ai/converter/FormatProvider.java b/spring-ai-core/src/main/java/org/springframework/ai/converter/FormatProvider.java new file mode 100644 index 000000000..9afbc14e3 --- /dev/null +++ b/spring-ai-core/src/main/java/org/springframework/ai/converter/FormatProvider.java @@ -0,0 +1,32 @@ +/* + * Copyright 2023 - 2024 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.ai.converter; + +/** + * Implementations of this interface provides instructions for how the output of a + * language generative should be formatted. + * + * @author Mark Pollack + */ +public interface FormatProvider { + + /** + * @return Returns a string containing instructions for how the output of a language + * generative should be formatted. + */ + String getFormat(); + +} diff --git a/spring-ai-core/src/main/java/org/springframework/ai/converter/ListOutputConverter.java b/spring-ai-core/src/main/java/org/springframework/ai/converter/ListOutputConverter.java new file mode 100644 index 000000000..d8b4dea51 --- /dev/null +++ b/spring-ai-core/src/main/java/org/springframework/ai/converter/ListOutputConverter.java @@ -0,0 +1,50 @@ +/* + * Copyright 2023 - 2024 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.ai.converter; + +import java.util.List; + +import org.springframework.core.convert.support.DefaultConversionService; +import org.springframework.lang.NonNull; + +/** + * {@link StructuredOutputConverter} implementation that uses a + * {@link DefaultConversionService} to convert the LLM output into a + * {@link java.util.List} instance. + * + * @author Mark Pollack + * @author Christian Tzolov + */ +public class ListOutputConverter extends AbstractConversionServiceOutputConverter> { + + public ListOutputConverter(DefaultConversionService defaultConversionService) { + super(defaultConversionService); + } + + @Override + public String getFormat() { + return """ + Your response should be a list of comma separated values + eg: `foo, bar, baz` + """; + } + + @Override + public List convert(@NonNull String text) { + return this.getConversionService().convert(text, List.class); + } + +} diff --git a/spring-ai-core/src/main/java/org/springframework/ai/converter/MapOutputConverter.java b/spring-ai-core/src/main/java/org/springframework/ai/converter/MapOutputConverter.java new file mode 100644 index 000000000..57f1ea93f --- /dev/null +++ b/spring-ai-core/src/main/java/org/springframework/ai/converter/MapOutputConverter.java @@ -0,0 +1,57 @@ +/* + * Copyright 2023 - 2024 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.ai.converter; + +import java.nio.charset.StandardCharsets; +import java.util.HashMap; +import java.util.Map; + +import org.springframework.lang.NonNull; +import org.springframework.messaging.Message; +import org.springframework.messaging.converter.MappingJackson2MessageConverter; +import org.springframework.messaging.support.MessageBuilder; + +/** + * {@link StructuredOutputConverter} implementation that uses a pre-configured + * {@link MappingJackson2MessageConverter} to convert the LLM output into a + * java.util.Map<String, Object> instance. + * + * @author Mark Pollack + * @author Christian Tzolov + */ +public class MapOutputConverter extends AbstractMessageOutputConverter> { + + public MapOutputConverter() { + super(new MappingJackson2MessageConverter()); + } + + @Override + public Map convert(@NonNull String text) { + Message message = MessageBuilder.withPayload(text.getBytes(StandardCharsets.UTF_8)).build(); + return (Map) this.getMessageConverter().fromMessage(message, HashMap.class); + } + + @Override + public String getFormat() { + String raw = """ + Your response should be in JSON format. + The data structure for the JSON should match this Java class: %s + Do not include any explanations, only provide a RFC8259 compliant JSON response following this format without deviation. + """; + return String.format(raw, HashMap.class.getName()); + } + +} diff --git a/spring-ai-core/src/main/java/org/springframework/ai/converter/README.md b/spring-ai-core/src/main/java/org/springframework/ai/converter/README.md new file mode 100644 index 000000000..f1a4f7004 --- /dev/null +++ b/spring-ai-core/src/main/java/org/springframework/ai/converter/README.md @@ -0,0 +1,13 @@ +# Structured Output + +* [Documentation](https://docs.spring.io/spring-ai/reference/concepts.html#_output_parsing) +* [Usage examples](https://github.com/spring-projects/spring-ai/blob/main/models/spring-ai-openai/src/test/java/org/springframework/ai/openai/chat/OpenAiChatClientIT.java) + +The output of AI models traditionally arrives as a text, even if you ask for the reply to be in JSON. +It may be the correct JSON, but it isn’t a JSON data structure. +It is just a string. +Also, asking "for JSON" as part of the prompt isn’t 100% accurate. + +This intricacy has led to the emergence of a specialized field involving the creation of prompts to yield the intended output, followed by converting the resulting simple string into a usable data structure for application integration. + +Structure output conversion employs meticulously crafted prompts, often necessitating multiple interactions with the model to achieve the desired formatting. diff --git a/spring-ai-core/src/main/java/org/springframework/ai/converter/StructuredOutputConverter.java b/spring-ai-core/src/main/java/org/springframework/ai/converter/StructuredOutputConverter.java new file mode 100644 index 000000000..4756468a8 --- /dev/null +++ b/spring-ai-core/src/main/java/org/springframework/ai/converter/StructuredOutputConverter.java @@ -0,0 +1,39 @@ +/* + * Copyright 2023 - 2024 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.ai.converter; + +import org.springframework.core.convert.converter.Converter; +import org.springframework.lang.NonNull; + +/** + * Converts the (raw) LLM output into a structured responses of type. The + * {@link FormatProvider#getFormat()} method should provide the LLM prompt description of + * the desired format. + * + * @param Specifies the desired response type. + * @author Mark Pollack + * @author Christian Tzolov + */ +public interface StructuredOutputConverter extends Converter, FormatProvider { + + /** + * @deprecated Use the {@link #convert(Object)} instead. + */ + default T parse(@NonNull String source) { + return this.convert(source); + } + +} diff --git a/spring-ai-core/src/main/java/org/springframework/ai/parser/AbstractConversionServiceOutputParser.java b/spring-ai-core/src/main/java/org/springframework/ai/parser/AbstractConversionServiceOutputParser.java index 7f2f61ee0..4e5224863 100644 --- a/spring-ai-core/src/main/java/org/springframework/ai/parser/AbstractConversionServiceOutputParser.java +++ b/spring-ai-core/src/main/java/org/springframework/ai/parser/AbstractConversionServiceOutputParser.java @@ -1,11 +1,11 @@ /* - * Copyright 2023 - 2024 the original author or authors. + * Copyright 2023 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * - * https://www.apache.org/licenses/LICENSE-2.0 + * https://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, @@ -13,15 +13,19 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package org.springframework.ai.parser; import org.springframework.core.convert.support.DefaultConversionService; /** + * @deprecated Use the + * {@link org.springframework.ai.converter.AbstractConversionServiceOutputConverter} + * instead. + * * Abstract {@link OutputParser} implementation that uses a pre-configured * {@link DefaultConversionService} to convert the LLM output into the desired type * format. - * * @param Specifies the desired response type. * @author Mark Pollack * @author Christian Tzolov @@ -38,4 +42,4 @@ public abstract class AbstractConversionServiceOutputParser implements Output return conversionService; } -} +} \ No newline at end of file diff --git a/spring-ai-core/src/main/java/org/springframework/ai/parser/AbstractMessageConverterOutputParser.java b/spring-ai-core/src/main/java/org/springframework/ai/parser/AbstractMessageConverterOutputParser.java index 146ce323b..cc1e71504 100644 --- a/spring-ai-core/src/main/java/org/springframework/ai/parser/AbstractMessageConverterOutputParser.java +++ b/spring-ai-core/src/main/java/org/springframework/ai/parser/AbstractMessageConverterOutputParser.java @@ -1,11 +1,11 @@ /* - * Copyright 2023 - 2024 the original author or authors. + * Copyright 2023 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * - * https://www.apache.org/licenses/LICENSE-2.0 + * https://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, @@ -13,14 +13,17 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package org.springframework.ai.parser; import org.springframework.messaging.converter.MessageConverter; /** + * @deprecated Use the + * {@link org.springframework.ai.converter.AbstractMessageOutputConverter} instead. + * * Abstract {@link OutputParser} implementation that uses a pre-configured * {@link MessageConverter} to convert the LLM output into the desired type format. - * * @param Specifies the desired response type. * @author Mark Pollack * @author Christian Tzolov @@ -37,4 +40,4 @@ public abstract class AbstractMessageConverterOutputParser implements OutputP return this.messageConverter; } -} +} \ No newline at end of file diff --git a/spring-ai-core/src/main/java/org/springframework/ai/parser/BeanOutputParser.java b/spring-ai-core/src/main/java/org/springframework/ai/parser/BeanOutputParser.java index 7be67324d..edd472220 100644 --- a/spring-ai-core/src/main/java/org/springframework/ai/parser/BeanOutputParser.java +++ b/spring-ai-core/src/main/java/org/springframework/ai/parser/BeanOutputParser.java @@ -34,11 +34,13 @@ import static com.github.victools.jsonschema.generator.OptionPreset.PLAIN_JSON; import static com.github.victools.jsonschema.generator.SchemaVersion.DRAFT_2020_12; /** + * @deprecated Use the {@link org.springframework.ai.converter.BeanOutputConverter} + * instead. + * * An implementation of {@link OutputParser} that transforms the LLM output to a specific * object type using JSON schema. This parser works by generating a JSON schema based on a * given Java class, which is then used to validate and transform the LLM output into the * desired type. - * * @param The target type to which the output will be converted. * @author Mark Pollack * @author Christian Tzolov diff --git a/spring-ai-core/src/main/java/org/springframework/ai/parser/FormatProvider.java b/spring-ai-core/src/main/java/org/springframework/ai/parser/FormatProvider.java index e6692965f..087c15fe5 100644 --- a/spring-ai-core/src/main/java/org/springframework/ai/parser/FormatProvider.java +++ b/spring-ai-core/src/main/java/org/springframework/ai/parser/FormatProvider.java @@ -20,6 +20,7 @@ package org.springframework.ai.parser; * language generative should be formatted. * * @author Mark Pollack + * @deprecated Use the {@link org.springframework.ai.converter.FormatProvider} instead. */ public interface FormatProvider { diff --git a/spring-ai-core/src/main/java/org/springframework/ai/parser/ListOutputParser.java b/spring-ai-core/src/main/java/org/springframework/ai/parser/ListOutputParser.java index 5e0b99c74..d4f243835 100644 --- a/spring-ai-core/src/main/java/org/springframework/ai/parser/ListOutputParser.java +++ b/spring-ai-core/src/main/java/org/springframework/ai/parser/ListOutputParser.java @@ -20,9 +20,11 @@ import java.util.List; import org.springframework.core.convert.support.DefaultConversionService; /** + * @deprecated Use the {@link org.springframework.ai.converter.ListOutputConverter} + * instead. + * * {@link OutputParser} implementation that uses a {@link DefaultConversionService} to * convert the LLM output into a {@link java.util.List} instance. - * * @author Mark Pollack * @author Christian Tzolov */ diff --git a/spring-ai-core/src/main/java/org/springframework/ai/parser/MapOutputParser.java b/spring-ai-core/src/main/java/org/springframework/ai/parser/MapOutputParser.java index 20f2857c7..a222d7940 100644 --- a/spring-ai-core/src/main/java/org/springframework/ai/parser/MapOutputParser.java +++ b/spring-ai-core/src/main/java/org/springframework/ai/parser/MapOutputParser.java @@ -24,10 +24,12 @@ import org.springframework.messaging.converter.MappingJackson2MessageConverter; import org.springframework.messaging.support.MessageBuilder; /** + * @deprecated Use the {@link org.springframework.ai.converter.MapOutputConverter} + * instead. + * * {@link OutputParser} implementation that uses a pre-configured * {@link MappingJackson2MessageConverter} to convert the LLM output into a * java.util.Map<String, Object> instance. - * * @author Mark Pollack * @author Christian Tzolov */ diff --git a/spring-ai-core/src/main/java/org/springframework/ai/parser/OutputParser.java b/spring-ai-core/src/main/java/org/springframework/ai/parser/OutputParser.java index d0fca1f4e..57ad9c274 100644 --- a/spring-ai-core/src/main/java/org/springframework/ai/parser/OutputParser.java +++ b/spring-ai-core/src/main/java/org/springframework/ai/parser/OutputParser.java @@ -23,6 +23,8 @@ package org.springframework.ai.parser; * @param Specifies the desired response type. * @author Mark Pollack * @author Christian Tzolov + * @deprecated Use the {@link org.springframework.ai.converter.StructuredOutputConverter} + * instead. */ public interface OutputParser extends Parser, FormatProvider { diff --git a/spring-ai-core/src/main/java/org/springframework/ai/parser/README.md b/spring-ai-core/src/main/java/org/springframework/ai/parser/README.md index 740e330f2..debadf142 100644 --- a/spring-ai-core/src/main/java/org/springframework/ai/parser/README.md +++ b/spring-ai-core/src/main/java/org/springframework/ai/parser/README.md @@ -1,7 +1,8 @@ +Deprecated! uset the Structured output instead. + # Output Parsing * [Documentation](https://docs.spring.io/spring-ai/reference/concepts.html#_output_parsing) -* [Usage examples](https://github.com/spring-projects/spring-ai/blob/main/spring-ai-openai/src/test/java/org/springframework/ai/openai/client/ClientIT.java) The output of AI models traditionally arrives as a java.util.String, even if you ask for the reply to be in JSON. It may be the correct JSON, but it isn’t a JSON data structure. It is just a string. Also, asking "for JSON" as part of the prompt isn’t 100% accurate. diff --git a/spring-ai-core/src/test/java/org/springframework/ai/parser/BeanOutputParserTest.java b/spring-ai-core/src/test/java/org/springframework/ai/converter/BeanOutputConverterTest.java similarity index 78% rename from spring-ai-core/src/test/java/org/springframework/ai/parser/BeanOutputParserTest.java rename to spring-ai-core/src/test/java/org/springframework/ai/converter/BeanOutputConverterTest.java index 8df495e40..dacad64ff 100644 --- a/spring-ai-core/src/test/java/org/springframework/ai/parser/BeanOutputParserTest.java +++ b/spring-ai-core/src/test/java/org/springframework/ai/converter/BeanOutputConverterTest.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.ai.parser; +package org.springframework.ai.converter; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonPropertyDescription; @@ -34,17 +34,18 @@ import static org.mockito.Mockito.when; /** * @author Sebastian Ullrich * @author Kirk Lund + * @author Christian Tzolov */ @ExtendWith(MockitoExtension.class) -class BeanOutputParserTest { +class BeanOutputConverterTest { @Mock private ObjectMapper objectMapperMock; @Test - public void shouldHavePreconfiguredDefaultObjectMapper() { - var parser = new BeanOutputParser<>(TestClass.class); - var objectMapper = parser.getObjectMapper(); + public void shouldHavePreConfiguredDefaultObjectMapper() { + var converter = new BeanOutputConverter<>(TestClass.class); + var objectMapper = converter.getObjectMapper(); assertThat(objectMapper.isEnabled(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES)).isFalse(); } @@ -52,8 +53,8 @@ class BeanOutputParserTest { public void shouldUseProvidedObjectMapperForParsing() throws JsonProcessingException { var testClass = new TestClass("some string"); when(objectMapperMock.readValue(anyString(), eq(TestClass.class))).thenReturn(testClass); - var parser = new BeanOutputParser<>(TestClass.class, objectMapperMock); - assertThat(parser.parse("{}")).isEqualTo(testClass); + var converter = new BeanOutputConverter<>(TestClass.class, objectMapperMock); + assertThat(converter.convert("{}")).isEqualTo(testClass); } @Nested @@ -61,15 +62,15 @@ class BeanOutputParserTest { @Test public void shouldParseFieldNamesFromString() { - var parser = new BeanOutputParser<>(TestClass.class); - var testClass = parser.parse("{ \"someString\": \"some value\" }"); + var converter = new BeanOutputConverter<>(TestClass.class); + var testClass = converter.convert("{ \"someString\": \"some value\" }"); assertThat(testClass.getSomeString()).isEqualTo("some value"); } @Test public void shouldParseJsonPropertiesFromString() { - var parser = new BeanOutputParser<>(TestClassWithJsonAnnotations.class); - var testClass = parser.parse("{ \"string_property\": \"some value\" }"); + var converter = new BeanOutputConverter<>(TestClassWithJsonAnnotations.class); + var testClass = converter.convert("{ \"string_property\": \"some value\" }"); assertThat(testClass.getSomeString()).isEqualTo("some value"); } @@ -80,12 +81,13 @@ class BeanOutputParserTest { @Test public void shouldReturnFormatContainingResponseInstructionsAndJsonSchema() { - var parser = new BeanOutputParser<>(TestClass.class); - assertThat(parser.getFormat()).isEqualTo( + var converter = new BeanOutputConverter<>(TestClass.class); + assertThat(converter.getFormat()).isEqualTo( """ Your response should be in JSON format. Do not include any explanations, only provide a RFC8259 compliant JSON response following this format without deviation. Do not include markdown code blocks in your response. + Remove the ```json markdown from the output. Here is the JSON Schema instance your output must adhere to: ```{ "$schema" : "https://json-schema.org/draft/2020-12/schema", @@ -101,8 +103,8 @@ class BeanOutputParserTest { @Test public void shouldReturnFormatContainingJsonSchemaIncludingPropertyAndPropertyDescription() { - var parser = new BeanOutputParser<>(TestClassWithJsonAnnotations.class); - assertThat(parser.getFormat()).contains(""" + var converter = new BeanOutputConverter<>(TestClassWithJsonAnnotations.class); + assertThat(converter.getFormat()).contains(""" ```{ "$schema" : "https://json-schema.org/draft/2020-12/schema", "type" : "object", @@ -118,9 +120,9 @@ class BeanOutputParserTest { @Test void normalizesLineEndings() { - BeanOutputParser parser = new BeanOutputParser<>(TestClass.class); + var converter = new BeanOutputConverter<>(TestClass.class); - String formatOutput = parser.getFormat(); + String formatOutput = converter.getFormat(); // validate that output contains \n line endings assertThat(formatOutput).contains(System.lineSeparator()).doesNotContain("\r\n").doesNotContain("\r"); diff --git a/spring-ai-core/src/test/java/org/springframework/ai/prompt/parsers/ListOutputParserTest.java b/spring-ai-core/src/test/java/org/springframework/ai/converter/ListOutputConverterTest.java similarity index 77% rename from spring-ai-core/src/test/java/org/springframework/ai/prompt/parsers/ListOutputParserTest.java rename to spring-ai-core/src/test/java/org/springframework/ai/converter/ListOutputConverterTest.java index 43ccfb54f..4c0795a1c 100644 --- a/spring-ai-core/src/test/java/org/springframework/ai/prompt/parsers/ListOutputParserTest.java +++ b/spring-ai-core/src/test/java/org/springframework/ai/converter/ListOutputConverterTest.java @@ -13,23 +13,23 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.springframework.ai.prompt.parsers; - -import org.junit.jupiter.api.Test; -import org.springframework.ai.parser.ListOutputParser; -import org.springframework.core.convert.support.DefaultConversionService; +package org.springframework.ai.converter; import java.util.List; +import org.junit.jupiter.api.Test; + +import org.springframework.core.convert.support.DefaultConversionService; + import static org.assertj.core.api.Assertions.assertThat; -class ListOutputParserTest { +class ListOutputConverterTest { @Test void csv() { String csvAsString = "foo, bar, baz"; - ListOutputParser listOutputParser = new ListOutputParser(new DefaultConversionService()); - List list = listOutputParser.parse(csvAsString); + ListOutputConverter listOutputConverter = new ListOutputConverter(new DefaultConversionService()); + List list = listOutputConverter.convert(csvAsString); assertThat(list).containsExactlyElementsOf(List.of("foo", "bar", "baz")); } diff --git a/spring-ai-docs/src/main/antora/modules/ROOT/images/structured-output-api.jpg b/spring-ai-docs/src/main/antora/modules/ROOT/images/structured-output-api.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7a4ae6d963d5b73dec4c9a6b459710081cba4b46 GIT binary patch literal 252531 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]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 z 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

})LKGKdCZM+gM(>$V{@MY%yG@2l#wQlRzj*L zTc=W$SjSqX)w=!?yqeRa2b4yQO4HY)mJ!Q z+1{GGhnuQ6<~*Pw_wu|A+)p$ijJzt^KX!T5r^s7eXI!y0&yI+7v75o1Vk3G|3?@X#r7Sj#v5?9@YPSiafqU-;((XJ$djq@)T5lzjC^>8=F@&G?R z;2d)F2>YR->JI%^)gQk!ns@z`qw&-|iP&a1K# zsONRG!X%IuFg_+*9i4efFRGXY+J-?pQT2p}TZU50ya&Qhnmj&azuvic$4zeU-LP6- z;^}Ig9}%cb-o_(#J&r*)SfAzhX>v*a`R|qBH9bMi)vID#estVWHqo8_`fH z^m`d)D%>+|lEYY#Ai%*E40Ps2jPK8MItN!UCM*!$PfkZ5Q=+a? z*e;aGPuO^ox;!xafw(Xfcu-T$wK!xNQL9K_u^<_Bf-ZtsI6FF4=OX%p^G!zd@-vyLU6E-1SGnb$XwaHw6kW}mb86cR7w(j_d-&47SgPk^kb}0lML)hD zVO*1r^;QH6#Bt8@`+{?G(QC4AQ%_IXbHBNzfmn*42*fpIgS|B@J^{Ne(_Q7WV3O6# z-X5WMiIrgI-V?WU;GNM~6&8+S9R-gJUI=++l^HqZduWMQ?jwzHfr4NyM-)zhMK*~2 zPNBkeIg zeC@n_Y>ezwWJPQX!Q!6*N}MiJq{^ix9(IqEMl!!+UQ(LpW_OA`#rlR>qe;vh z!ImaTWVWjIbGIBAR<-7OS%#|e7~0F_E{GE=De5c4MPV58PV4a9G_1xeCH1LMxN!mg zxGfBZe<~N4i$&aX8bQ;V+xpj0zP@rL^fdO<0}fZ-(2`Co-wB^-EWa9i53xWdO^kVL z(3@C?nuP_F4gq%onWV+!dMkX?us@;pVWaVQ;cHWfT zpE%87DJuAmCR9EYQ6w7*Sbj4R-P*swU~1Kxv(w02?+(u zd<-5C=C*cjZt$w8JpoPeDCx(4;0$Zt*-nf#R$yZwd*YC=97N>UoRL6&d&BjTbDaiZ z*Decs?=|T7muG_XM0Rt!IfVoLN9%%Hu7Bs@F~d(zy)X?9YOg&OzxiW}1P_IV@X4wE z9`Q3FlIHoU2Hr1g&WsrBFt&r?DrcEI_@@;cdr8W`h+YOnsHHR~NLjfT-XU6!EVs!; z&UyeN=c%3D2JJZ<50Umm0>W21F1EGUUi7(UR`%ZetQVWXUS%BH<*qVdY-N*giM}Gv z5er7T+tq&iaJXNJEU^zng~3|Np=|pxU`=82bWa`~cM)#Q&G)$D#zdoOYs7FjnbOtW zMXI`5(XY@pD;%nMgN${zq)0B!bdF1(#q*@u1HpQg7a6eVl3Y}g!(_CLA3TTbq--0N z=A$^Brk4g}%#o8Oi5ik!{w)VDwkn~^##}BM6T2SSbo3tN%)&%ShcI z=((%8+tRdafj6sr4A^qA94ZDZdfl@~S1?O$Wq^!BXm3`VMLQ2x%AB{K;}T1Zyp8&Z zQNiXs8bR->( z$Yp1zmZ$vi92AatVYI*V(Peh?@aAQ)_F_*Ku0He9%6vlx(j_D#^HnM`Aq!Tx(_y!_ z{E#0#B&>}q@asm&+*9yRHT6XGU9h-$LNv2dib-KErK)wDni(RDQOT|H0_!o>RzNuw zBiF@b_wd>EuCOE|N1uTZqB5=!H!B{ABSb{?G|b|EY->YkgH=iLk3FzVGZGwfpdZ~S7HqrL5%76*HIrT#!I4@+1(6Ix>+aEV1}(%P zo~ID)^v(_;5g^9lE>0#Hk%!mkY%XlMJDKlPm+?*VNF&IDwr7)?wA<*hsjED~m2PSn z`)0bA!#c=LMgAKtrvvhd2+@2a9MMjOMZt1LQC+X|$UCmoBns!a>_y)nxuJBw%g$8XQ0a_~)656re0l(Xm3^frXd%(!(zy)*OklN4bNU=<`Gkz=8_Q-HAw zT0`a+V4#kB5SduKmZI!E@-!Rkc=8785 zz$g@QfzvO;P{}M0Cpye2J|W_+w+y7ijLzMMC)%Z|d@7ir$pImE9%kn~)noC!YG-!` zMV2_;W2ng3((*rud(Wt*^0jZ+IWy{5(1SFkIRgqx6(MwR90*8BFeD+gfOJSGQbH9t zqk<4f7(iNR8ZdzbLJbf?K&jHDgx)cX42Rg| z=Kgffo>L8XyeH92q@`mEial(KU1RKI)^tLQiRcf|0*6$(mIA%2gzvSLZHeB$6gF!< z!P)io*0~UcwMs^!Gi?_iSUrtv01S~E$+lrM56v5GQ`^1={-bMKt1NOESd_cu=yY5b zfZrk=fO8r*{`l#q|0{k}ka36>P;?wCZq(Cd1Hb(xV zmb!Q5n-lj9@1*}aF3*jlFU%*p(a*_LElfS|YxqK@E6=ePR38kmXEaVHy7u2|Hhz9wa zqYJsGo?bTk8cG$fD2cH4{oSv)(1>@JHgL(-fxlNoNwVBFfbg?tcdB~NYUm&6V~M!~ zlzJ_pkX;81mO$Z2XeD2Q&UH;aL?+ztzp#*ye^R;S`j%ESpax90zJ4Gl8v#dNyf%^O zRqKv=thl!2)FO;_R`}gvX6^er@=Tiq(HUpigz$Y{&wXr zvG{*CLf7@I-vo+5O8u4$4FP3^-tb8qFfz?O?Z6yUNAU&M^VBx%cq%Dq$U(I|*PSPV z{*IppIQuQ!+j&Q*9xAZG2l6j%gw=J3JBc?{HU2n*Q{fZJ`zwLj59?$$Y^~6>9k$l! zLXpjqAjbYv+eQ+%o*_L7F4~jf#ZB%`@kCBt@b2ugW7LK!;1xT*c)N{0RI1&+VQ1zY zv%*fpIf#FzS)uBcMQV|@t$z;pR|xl6j^(;1o$bHeExcfVBcRAOy$Ph%3twvs2?6?U zHlfM?kd$^0_Hb9Usj3c9hQ~9^;c64pgHslY8=Haa2VRAJrYhgQH&dwZhs^CrLGe__ zQgSx(YIktkk@%eS=^am7YD2G~#NH`XV^qo}+oXl?7Ta(Dt8_d&LIYn5q%yxnR1YDAR@*(P?3TpH ziS0bmRe>*4k=9%Q2)2q;RZ-!-bi(dekAFQsV&cnK(h~y0>?I@`Z=m@_>a(}$JwWgm zCUob+F>;-EKYSmLZ)ARvGo5&~2^4B4*uo+*-d;1NOS2KrW%hX;Bm**~pEM-22(HxO z@rzg#8`7;q`XCTE3n4BI}4NXO<19$I~%&b`K|;@Xv9@@-nwrrQ#3A` zgpjvSng;PhD0l}^vP8B*=e`)A9g^m><*f5AkO}Ize_Mn*q&fJMun|}qrNPv#rnS~OIJYB!~rgWy7Y9hF3{@LOhL1i3NMHq~pR6 z>6+^0i4yfIGfHgjHmJpgujc42`|p8tya8u#(C+q@I1uub98ighcy6o@)P}>u{&~5URb2#o?@TtQJRG7wZTrQA7_9G^0uSQqf)rz)1>>gPUiV7 zp}si(6N0%(REkU|LV+F7@ymUAXt?IM00BEfE5dGY9P-5Zf6J|^@ov5WFmdgo5^d)>|tBS!w}*0V_q*YKoPt{IL@5jT`FMPENP1DtQ0DPA=Rq z2zqP_&H)TYdX6RfqGRZ@2+x85t)Y%^>B(-Z*sS9k8fwA2t5@4T=0iZYBHvk&BkL%fUrgBNbZ5xZcYOpTW1Xw6Yo_x+T%858P`bT@8*w zsB}T5v*wa+Y~&&$8Co*W5SMz{8g&JQ4j9piiM}pb3oBUa`vLpb zppZu+Qqi%_x)avmShY3hp>u2E6Jo=f;&+nB;0aI(N$ zcCO(*ws$QdVktNm`VXyZ;aaZ)lW-WY5`9Np8bwh%pARB>yJqXM)ED-<;H}< zA!R5X;FcVkNcM-AE_X?|k;^*KKJ(T&C$!^#R2=zFrQEe$I__d7{5W$_!m8y!J0ZQ# zI$Zk|gA0V%nYM+17hrlH^Rpz#OByGXCLOa%O}#g*JFO7=aatK&)V#Hyrk2#`2FifU z+(?@ex>=#Z;$PyFecv;vd)q%%$Z(hcl9wP{m|2|KZN7HpZ87LpJU(KwujJY6xr*++ ziKp|eyg~E6sZSRA?R4un_u-o*YE6V*%=qM(U8pT3lj)w2%2LsW!`LN8$>N$%M{V{> z0vddJFd}jceldEl3YnnxeG2Th47T}v?9<=lZJPd)sZeZu+5vf>)4RF#_)u zx!R$Uxyvf$`V!6mbm`u|T~IrQa>5ctyD}7fl2bII)X;E^v_3yUl*~aL%-3>ju9CY= zn_YcmeJt$oWUBY$_ZzW0>=d0+dJWpm^p8VV+%=;?y6A@WQrRy72N8t{$9m~=l?qJF zR(Rkk3)A+I92`W#lJpDBjU}YNv&~T*M(QV1Zr>I8Z(2%&Fv}`sH&-wE_)LhMoemy! z_nY-gv2>DCABGIV_0tj5yMx$A1r9zq8@(Jn!iz}>%n91G_vWjfFxMSaC3A2Ic`%gRV8(P)Am7SZjR;;zPV*Nc_Ln8v6^(doHpJ8Vd;b8n~ z{fX4Xc%rV;20~S-rv(i1d-#gKXejzt zj#Wqk;tw>1>;ShfUxVw*%9=S;5b5|+3PrgNdivP3o*5NwE59Q5j#Nx)*$p&MQ?@b@ z#1$7=F=${#7z_vm-zfrT>6DKkCZFQ?I@H$pM7|q4UP7V8^jrskX3~?C){)lzEqTm< zJqKxzEhhgWhaT4>bOk(<49uQkzB|Hf2Kn|v5$3HuhCmfjG_9)S>xxNY_s#e=Wb=G6 zdClVA8(N2)B}-q&4U^>Yj39hlY(OVfq2^0ydOb+5 zXvfS;|D5S8*UEn0KE!WtRH4%4vK54|KkYJ;acWD`(6#-0A&dMx>$QY|<%U~UX%J{x zOtd}w<9?aQ(^34(=N>hvXicA{FV8<5v+lmV9mQVX7m;dtqU^Lr@!)sQPV+N=N-2uZ zBtODSPJ4{>XSnz}b6Ft&o0i2SwXepxolE+tCklnt(AlbUCu?v%q^YHWvSqLSE@f0p zj42@gd0!!5t(bfz@5KSBC+8CMFJcdk;q_aKz#kLo_LMZQg{7&D5z5y%HczQ38drp+ z6cJEG2r#7obH(?Z=*jDdrx2x}kax+bx^-Hxo^rM;( zQ&g?AYNbo~a+8!GA2; z8$678+NZzP{jLx8JpHOA*JW97h5wOtjnjs}Bcj3Kp?nj`Fa}zG*V=icGsQO8mev1B3Di zay{11&fmk$`^i&5WWtW#mH;}0v0BJgI{<}lnfK9sx4+8WCsc`UIS|}&8p{#LO}qee zZ77{);hpo9*4a~!eZe=ZpqU_`Z)$pXqFy^)m>4)z%WQ~SqO+FuB=+kSgevhLgQr@m zJF;&yOi;SyU*ZX~K0!2RHt7o&qB9V}rUlmngfto%a0o=?J?C5*rNJXD<7%5~y0)2w zntwZW-AhXNH1oNt$ls7E6%erWFYi!`8OAFew?Xy$yQ{lEirP(o7xj>4ULVeh7K)0bEH4! zq+)T^d|kTY<#Y{*gexiFc#Y#uY22*O(-#@fmU#-+Pf*z=U3079{$g3F4pbe<#V0dq z5zYY=l}TnVXj;Hn=aqzsp`;5qf&c{uFA6wp_^ZJD*zX{^3oZ`YN26a~wDh$0@|XDI z`9GX$^}4{f0sy5TI6TM@e0bTpw?aLlS>%EbJabcftq5)>?NdF-R^c_Bxjy5Ami&-lQ>21lVO5nJ<-^bg)iYpzF+5p=S=n{uMPj`!a{lJa1Qa zqtqjBFS_ob1Z=o+*z6ZIxg~DTX6w=xqke@GKtbj3>oD_ds&42zrcU;&r*Qm1tC_XF zGn;!5ahYO5onb_smv&#h+|G?yxqZ13nRA&V`4g1VAY8cSZQj;T*w`K3r6VKSA-KUX zFB&VBclxgx%0qJ)J$+(DDXTMmCpnSrVlVOXDcr%8qo{~vj2IQ}?e|5QjD6E!y&kAH zmLFS^+LA*R*RzL!;QRY+Hl0De&uA$xu8rtZ4q|0}_<)A^nH1uA4QsdXGNAyX9);Q# z#^PD8?=3Tx(?(w#ee&L$SgR27MF2nIj%32jd!F(%3$x-L_}ucaSSb}f4vr+nz&X3T z?wCp0Q4i)s@pT9{)U{^5t+vMQ^X`rqf>uMFGV zOb^jg2+bDzlba(~nvTcbkSmOz9f(%Pj_6DU@a!bIoL{JvH~o`944--Rp4zu4ytRA$ zT1Wf-@UXo7sI1_BFBvu}n7qhe2eMptG^us=0KpTJ zW$jgd?odvb+52OJtNN4a-zvr`rc~@vh)2cLRn9vEvu>o(s6d>v2@vO5WNzs?CEnZo zsRdKV6h@Q^k)}o(NpF8k@%5pFtB3@sGrHGva(}H4D*FX~XLCGT@riC#^XsgH^j)ak z-9h?m`2Jo|if47Qcu87<6r&fpv`O*vT2D0uiP+uzJ44n3-=j|P_E4qX45hQjY1foR zSl17Kn}weeDoTS{I^D%~x$7e)9?C5qhsf?UCp2Sf6Y8)PL<;Lm3>+@-!1gq5`0x;I&*CUT0}Gzxaa7%iC_6YZc$3 zRs+;1GR`i&DkuCi4|qhzeda%bG5&ojKJ{F+%f)W0o^lkC?1;2dxV1}w6onot$Ng0A zS@eh&alI{>XJruxgHQ1bG_n@80va#yT0KdTufvU2*M|XH4RTr{h6V4eD$}qDC$hJG z{k+Kw0}4t%e5i`&#(LK@6t%D`ExUO=Gcs(X!s%Qiyw!b0=!WZmMt!)yv7DHs&dSlW z7U}2Tn-Pd-(?od|z)NkQ1g*l)FVHMS6HqNSsmqURx!T3l!#%JzV0Ki@Yls8*vjK4$0x7abLeKcX{5rHsT9+TcgZm#Q^}>%;Sr^9gVqT% zuaf$5H^qrjr?$tvaXYuu;{D#nm#xJSsqvI?H<13D;>*mHr0Ec&xadsilb+Zr>$h)O z(<$o)0gnb`%Lw)1k;@106X-%5&=bN07rP2By~-KEu3}RYv(nIt*;YnpluFm z0)Fc1W)|kdQ?paZ-wi!R4gjkQ7G33&0)aXo=F3y#%DAoOY(ZbP)t-vQ6#+qWE~_O1 zBqfcnNZ=0ykS_#tra#WBwjiC=a-)8n(J)9JKkp@;(Y5}@UAQB(f4G}yzlIXN3Z*O^ zWgmnf!tdnFXe;w!6#IVa(Ur*h7M4l<*+CCVZ$!KwKgzR?%oZ`0SuaJ`p=adWJ0f&H zFS)sL{na%-Jf2qat%tp@YNQbXOB0FHzKO}D^OS>2fHn7@$G7CSgfda>lNfxP88irU zD}Z&pWkgNmAJppRy$d9nzJ2Al;ToDa%kQC_FqBAHZ*8;7?Q{1q!3G^o?G8DzCS|B1 zMxxjA|bx*UIWQ*hb{~jek<@9=HKV(Iq{tHxdZ7rp2W&%SzLl z7O4u4v^A=P0=ms5z68Z33xbA$K;-92>tm;!q}J=Ul-ZZ}xaAw1zsnwv8rVVP)D111 zQ)-MEl5I$hIzKNO7HiV(z4XzWa}-drcCuEXZFFLF5RuEs90jWYz{%Qugzc61xel~M z)?!hP(KW0yUK?o3)sE0q5US_+H9Yui=OBaV(SPi_-I?5KD^(n)^ig)JN7F5I+>V0?V_Q>S(g{haXFCQT9l9E$Zs^ zL%^DCX5NT}Ks04zV?*G%yin9Q?0{j?gw2%QiE&&X`-5Ko+G)RWrf*Tne4;E70Zvvm z9|9P*SHKLn2SY9H4iRlAeKHM|C77b4fdM^%62rsv2RA+NR&Hq|{MW=CjN)aDJJ|s7 zM;)DdhN!rrCBs$(HIyu&1`4G}M!`0&rr+p)N~6!|yhFl4jewM%fIwZRwvM==mbR-+1E zq~$BaD;MoDGW|ywO358UV0vmF9xc>0tu@MkCS)MBLqp<@AHMc(f9SsHC_+QF546~Z zI1j^1(B|Ad@}m(Mmz=}8R@V>C{@=QaSxk^Rxu3S%k>A^~8}k0=e#9UD2i^ba{^!~q z->T!UP43O2GWO}GiX+icA?st|8J`Zm5tF9McF~g-C$suvkAC}^n?d*&@3iwOS<$Tt z`Ewn|RuWo0?v6WB%ink@0Ws&;Kh8W|Y#LyGPm|#^O)8x3Jt+C@%un0dqyIkZzYihh z*CB_BEe~E_IIb>is%#qD`>RQa%&m*lGLBA}Qa$`5pJ{4#EPs+@Ew*DD#Y}qK({!3Q z*ECwTTU<7FddxgdKJA2kR*krBU-{#Vg1H|p6hcK;Z&p%A>i|8BtbbpmcKUQIu&`h;u!W z;C^Q`$B?Uf;6G1AGBTZgIKpK^h!KjjOetUxkoTZa8{s2RYgm5&K-ipdXDYi>;9jpS zuhD8qr0dZ1?Z}M%jGoJ@ts364iIw|=QHaYs6Rv#m>@5X6LQnJ~(n3nBH!w94GrNMD zx>74&Q_<-?sxp!=(hsaLGtQav6jdA7|#61s8M*xz$hJneN z6j>wc;plfzpl6l6UbaTScVCc^V|~wGMZ%%sBXVdmNfXS< zr)utZ_CA|yulx|Z6KfBjH&+A(rR^`npr-gzf?D7;VA={Uq&%F$D_{7zZPT)ljO;&r zVqD*chWEbwqLjDj_O=EJwc|>>+PtO+)R8vokU5qyVulqZP$B#n_LY{`8Q=1s|2T64 zcG~$aj%VdNyxjfcOeZyDb6w-IZ{)w4*L{EH*NUt!rqnOo$)Y~W9FZx-jJO9amULB) zT-oax+~W@~%8bhmMRyeR7E1G=|6X%wj5<76p?)wt3G08BhR50l19lW|BVj(v6C(_G zPoP-8C$HKs1?&ErpE@b)bKiFJMt8(peE3XpWPM*HK>Tl&QgFEYK@KN)LD^K=A@>Tj zlyf7fI8|7t_8Xve+b`n849*MBGMVx={g_>)e=W!}yFc=SBN;P|)b{`WF-FbVL*YoD z5!YC^H$^R=y(pLsxleJZ{#2AuV#A^B7{POq+vh+ag8Lsn*ZA4DOp!JyBtmg!X6C$#N|#e5+#F#( z1Vdlz^GQ>xO-z|cZ<1F6$W>>^QK)?qoT}Us5QVW8@4S14>_0+c6c;5$2P+e7k>O39=9k)Zq$OeB29{PA-M-+hgY6wy)pb*PeLLG#WMD+LFl|H%oWE zo7o+oC(KMPjp+u5L@1Nb1BIYb7>4K;{2f%FOhUh=zAG3S%k;PaTxF^X82_59hL@0R zd(a|IM5xa(-&rX(r>`}@+1{~i18=P7-C2Rm`cC=0Ly<9t+B9ly1EL02vd~_pD@~}W zRXW@D6xxcx9#ygi=fm6Ie;mSp&0F@9h6r%eAXg$%XU|Ni=(|tvxJ@Ld>3Ktpj*K3) z2HHSX(@Im5Fr}`9kTlGyp&A4tjvbYfQ$7n+=PPSppXu-rn!CsF5%G9A3g}rCZ8e7) z2H?dpi`xCgmlWtpz4t1@IfvvNqvU>Y)>j_86f&NTrdowrnY{GpBg!k?i50OBf679F z?8Ks2&NKUBnOL)zMHWn+t{3x3?!1I-(c4rsHknMD;)i47)xE{X#t;%G6aSVOpps@KeC+xi*PQ^nd|Q3X_w8kEv9^tz-#+6dXU+O*GgcS)oyAvesD zDuRa&>|fW7mw&g?7E2q!%EkSbCC7fZ^xR2kI))-xzR~#-30&m>jk6yUhF_y$*vM)K(9mjU? z(Y&~jwR^LH3QBf=Z&=v@OB4Y-@m5x5ZqO{H7@I%& zdZPP1f0|o5CmnqCeQ1(!MbYxO4$o33X*-an(YdXDw(3K4D~!rOC~O5-LOwQqL*WJnS(>O}Dt;!~tP z`nJH{*yc6Ot)i$b@LlsBE~dngZBK2$8?Ekl)kl!i$|Zk((~*@HuPP>3Q7f9G|MA@` zignUVY4Nj!ei};|Wq2Y|R|cFbihU{Bl((QB?WCgixn^6?*%u<%JF#ib1;F{Wq2k3j z8LhD0MHN-;zAK5oe!l*2hwPx9zIEslUi{hGPF2*{^$;Cu_&}504X3udqMd?#X^s~5 zBSdPth_YaS6sjbcN)|+TZpi8)f{V)M(Y;^NHD~qeXCVkNSD=;FPW!Ty4iGp5TO_{C zV?J^6tTga6GtzxuVeGs2@NdW8V})<|w;=>6DZIb{U#33|wpoJT6d4j7H3;nL-s{R0 zAy8ZPpj8gJqfo8RQ&USH_lN28n@?1|DOqH`1YC#=W{M&sMZqkSZ$7gyiVyR>f8rm( z7nh5!9a@g($R)=xfbxqUGHiR?Vtm-vxpYVynpk73sHd|KC=zaxFZ~%d9pF_EO8X)c z-`2Uq_R*EWMlGE4-Y{IB=uS&Z#NON^ab!dH0-o3}}iRH4-z?i(SO|kd4ta9y82{WlZ zK%iaQs+a?1NlyU3#+abfkfCytQEVOaCE7z5wBFgIEAw6J4}uGp7t(7kjD(nWtg3nL zn~soh)@%_>&@4EGziF~)TlS8gq9T@{9UfL8bU9v3z=$~VP_&mA0tgyZ%3F2WpYM)p zto*Zn$K>2e%Y}~_p=kox_wmff(-Bh>)Y0QxDhu~>UMNj?H|~z%ciSgPrClWVJJ~tX zCZjJ6H;*+}TR=LH`1aZNjs?-Dr4$kXpP6*{ASJNnpgT&Ye6m7<=$an8Y9i#O`s2(y z!9-&~^oPgWU+p97=^4Oanym>YMMRlVrrmlVZIHwf>2Y||5*i`DLQx}d?@yx%?8P1+)fq(&8Wddkq%2E*Ov~a7b1b1hV5u zs4rr6X0I3Jo6^7+Pp~o^As}D~=6s z9H_P&n7y8+WRh)ghnYv!><8{rGGz|Ax@2{^ef510tE*QX)OL643}zk z_JL?O$4I4fqAOEz-%Cj_2vh-wm>@LtE_>s(#POpqY2icw9FjoFy=%L(>AHOT#~Dww zgKBG?-f-REwA~*y#{w(vC_qo3qs3J<+OjwvA+;SKpT;E-NCcWkpMSKbV(QMmH=UlQ}3DMQJ6ovsNff zs_qvp3e9kJ+7&cZpWQb^#=lLTE6uWD~MnrJMU8`^&{(sr$?ZJLq# zgv*2nB9Wqp%i~+&CN)-rhgnZ48F%iJG$!xn*Rw3Vi|R}y8z8sSgsx+Yr=~6XBEm4W zzDiZj`%ik`l*5AEf=Xj;KYFS?@z#xoS*IR-~2k(v>tKG#g!Kzq{ZJGh=9QyVt{h$l9S=IX#y|s z?}|G{G5yt*d8;YAKaQ^7Hl1L+DREUXSm#)=wp?kiDgz(p91RXgh`^=xjnk}Zsh_;OTnPiJOPL~5a`+XYAgr>=*R!`yNSg&^x7%=X$ z`x2`y;4aNOs+*JM9Ox~H5gm#pVJKSd94JfeXzA{Jua0Vua$5snO8EjqmsKHZcsy8m z?Czt5Ta#sS(xF>6(g9y1E!-$|^0qvAQoO1fs;pro!|takF>El@7#H1U6&>8fNjo>l%jJM?B(bH>TrG3>e`h}Z z-(ULw{sTWPm>2mp(zNmU1a^z~KUpEMuXb~J+x-Zh(iw5%`~j}a`!pr){rUE*(EquH zr-vKgejqs1Y3(+O*T~pu%AAOZ2vk%V}xZ zh@fWvR>DoD<=yt)sP0J*gSdG==$J32v`$X;+}>GdDoOyn>t_=J<;8pSy{O~-+yT#w zJ$M;l!6(Ot!9Mc(0IDca6~0i~%tV!=6BEdLV`RrJf%NI8oVHq(J6;ErZ59Fm`wW&h z)-He}nwWAxa+oCNcfQ1Xbgo9#jBZGR9I3AD<(;=h&%R12?e@gqT^Vc8wjJ>!?owJP z6bh{|;kENUn{-6Xq&=*4>Vqu}yAa)r)CRI516gG?MPKjis39xj7-@DV*>uAWitK(9 zZ`z(-_!DZv8WdX9;Tijyd`AYVWo} zI*(2Hef+OO)qs<6j?e!J{vdK{H=S#4syBsWDAbxIkA79Ss_K^AEHOK*Q4|{n1Q>Jf zYM@GsZ~R?7tbSR~hg`RiP+|rZ#Mn)>DeBWurn@L23*HMuL!exqlaeS+6xVxM^R1U_ z9~xVAZ?U;rXeD*1LwD6cs&(^Dshb)&xtO?ZA|x?T_Kc(T$9jgDdXUq154c|>oK!jb zi@!qro^1Cog9?8~NkG87UxJ7mbdPZ zP7|qT!yFF%J$??69`CuLD)k;3&y12IY=RoOYCRSgoi#UiJCwg14p3NNWr^^S`?~`m zQ7`cRX2o*W>M13VE(u$fw6iS{y74YM?RvdD&TxZ7PH!Xykt0N>m+4hcL6DCGqSS6k z_rc%MAA=oF%_koOC-&!31KX(&{Him!XYq~s=jS`LXN{qdb2%LI)y4z8PO9y4jo`F< z{U*;U4g;P0_~5gSGOvj9$!8jc92t;rg1g*yvW7q!2Wy04l2j(yIxB84k6))s^k_Q3 zq)H37d5}d=!^yaNI5tM2;IE6#8{Ql!6>Vq#vm|`i?<>YOdiOMvkNTFhwh4OPw7B7Mn-~CDP-jOBkwRr=j)blnZwy&;hSs0z7Mz%I(J{$C&g|zSM6$nMA*V)vKe!+(?Ol7>xKc6W z%CM9oaOg4|Vw5nzkau&9KC~Zv>#>hU2Ge_~S1xrkeJm$d-E76|ZlemwDaNuo2x%zy zIu4ECm8n?H5FF)6y41XDE&Z#_Q%t>aC&=~9^XGRZ^Ex-;N6YLVr?}rlwY9Ah=kM3m18r>q(mmF?2V|*Wx zm=lv~cTO*^-u=ALt8-k*id?$;rajb0^>y8-N5hPJxZAMh{a)zPJtMie@rJI84Dp7~ z*N8!edx6Q?qNU+gjP}58R^yite%rV9VYl6d>gh$P6+G3<5bK1E+X3_qMD(G&W*yQ} zYqPG%qLu6>p5dovYQqU33;CsRp&?OokV;2-aPu|@i~EE`^Kmn$xvv8(4U2mr z%?Y%MTBCycAT(SkB)53zNlmm+)pcx5zHY6$_ZX>kjHZF2)f2tqupUWw^YGzbWfD3b z*C)eb`2W>xj(`V>uC_}_VMg3SD%V;dF}&nQr>^$R;mLc`iVCYF!lN#CUV_qBsn@fq zA>R&pYo?&Vv8(dpSm*VX&nPV#5JfzInD>1A9-J-fbM{%4%Y-P&Za}6AQQ|ZE%p6hk z2qiirwgE$nyb^N77Gdk9=Emw+d7sB;uJ!mi@|?bc9a@7FQmOP-+?C0C(*yKN8X6MRB_* zU>yy7aY=_s5q1O~t7gslhvu}1xl>_4$|~*~!5x(=`zU_U<5B#Gwfc*juUNj*+3+?f zOQ0DusJ~POj~*wT_Rg+6)(35I&I_N)B<*h~ACIM|^n@5BL(B)qU)d4YP zX~bKTE7^S&THPSEK!A-jVHj?uw3uo|JPB8RXjYyX!HDf!wpIY>jG~CcZ7S{VcPYiW z(&VGo+a5wg9%3=ffFP1gsRt1d=jES=xof@&`NgzULwmuQ)HJjPo8l27^+?@Ixrd0X zjPL~EU)t41u@knwB?L{WH2!2i>5#NOl*YS{1az6?3!UJX4Kw94Bbuq#=2xbUafBVd zu3ykX9}|9o@EmqvouWi|$Q}eU2R>5n@`ogK%qb73Zz5u8JQ++DZj~ezlq(BX(0LeN zJLNsYE0(Yeq5d4IWmij=*l=D&kOcI*tbGv6;)JXMDLVyyo%#^r|5-`8yv4t1LF?Xh zoAgX^Eql;Hz91lI(?m>soIipPaT^3cDgUF)#~`nALj|Xx6_K`ow8n(rHm$@71JIj* z0MFsnY#1Ad#u#mR7U9EbxfiZF1?y-xZ%Aa1O$yo8I=fTWC^C2BNU~|rX3U=X_F{K} zk{`jz_X&!`_J_mUllj|2j~E>@HDcHHEWOz=+GK7B_b~5t*{b))nIYC;wY)=bw8uG_ z?@rMtRo%?AOySGb-3<@^y1TqQ*lXAocH3~^RtC2)T-IM`jbpfV_m3UW8q?jUN=dVM z2bE_QbYM!&(2ykbKeX%f)7FFY!zl-z*rMzKPfG4>Qr9f`L5IhF`7?AYB$(>o9l?{K z~5AH#fCkBW-@!X9hN9Xvmy15^$G&rIk|^_DLqjn(PBTA?A`y= zIX)n$t<{T=tw3yn8b1ShfNC*?gl#wx^rrd5^sjcfC?HS?LG1Q=_gr^pmq#PgHjAp- z0db3;d?a0B8PBuTsaR4m9$NNmE+$vB_6ZLIFP)wK{lxGNxO3LsNb$S;?A9Ge^!bxE z-_zBrYrp4wbG$y}y7!frMq{WF>@x*r7rZ zKRGXHoX?pn-(dwaRhj02xiVqK7Me-k%|?Otwu~62<3(qh>eA;y7j+fjGaGoV_h zw_vK6V**V#`P}qeAbrV*h7mBO@k>U=xs9Jw884z=U7G9hH^bChTu!@8j=hi^R^!z` zSymC927oUXQK$YqH(B5j(XK@%^*-bGOQ~E%k=E?q2`Y}5tlCnROxwvKT38y;kPW90 zBHa^St$f*a&1&nZ(k4;WoJ-+;+}0t|!QDmjg+Z@)P6^W^s85*>EPY7@Hc642@5s=1 z3@RPF)7T#oYPWtpD&d@mgkn%5xqTwsZdzVzSzCsL^DzL-Af#lnH`vG)D=sx1Q#9%4 zp7~_Cpy!51FrmfdLOfL0yu*;ouZ>>HmC=UY zI~+OB@2eE@h|E^ySJ?u)2OAE1+_8K&1kzp(sC5h$vTizVUUaSb6e_DX8)+|M9E_E} zH0L@v`sc?K2aIH?m9ztAXbnyKBDDiPYdaaC=x_9M&$0WbOzj(%c{W~!l%g0c%h>VU zn&H9fr%`%|p+gL>??qcDt#>!<6(fE5dPCAZJSY5wP}+XLCr6R;ir??J85HH}#-fijn$*b|{|a9EIA!r_uCz^K z*(sqCSPDN2Qu{(r0_XW!kCjFs7@xM*-a4w6O*kj%&3bnw78camEB2S-ZDhT#x@O4X z)UbCJV8)vOd+K_!5R&|h5wS!sc`WD4$bi$b&@0-sFwgP-pNWAOLN;Z9>%BzHx&7&t z-C0XxrsePh?FF8?T1qN(2d5QyK#Bs>a|8a|>f_dB=8>~UkMuxhw7jMIA7`>IHxlG% z5G9oR+Q`B$$qz2P&gRV;>TjQ_2X`F?ytuO-dY^91P4us)EG)^%Va#a=R#EXFj(t60 z+DIzx+RbHQ#}52S8z@z}$HzTvGdi&aTn%^L9nufQNy%;v!7d}QB~P}4X@S^P_L~?0 zN9I(1E@^8ozbcUd{NLXO8xy13G9UOjc3O@;INe|#M3q+@Ui$uubMU#X?7+Iq4CjK( ztQmO0Zr`@izRbEMv~Aolh@W3m>W2D6>pIEc<#=fRQ5pzA zGWr)}*!~-}h=GUy~dy>g7^!Pj`u9T3EMnex1ISjR6u0 zvZh1m@am9XlZ%;BvIe(|0G*T-j*Zw>U)_1%^}kzdY{L_gnEXpfcs&dpxeJyT zuTc58bWmH1nA+N8^!emE2jrY{tNIqMJdq6>f`w=@c)QC!8OLJ;0dWJ+3oW}0!s1ZnKu z0!MiBoLUeG9jo-1ZDUc!$7%c30}=286kFz5$Ek&i@q+E_nC{oyg5Kby8=CT3oVY4O zcqu=FF(fvn)uFi(vvmIIUvv?4GlHeOF4VdweZKV5=`He!NLBv5TAU+`>LO7@b;{5QtvT zozAQ&>$+t1*m^rpy^Y_R_ATlxF-1Gm)e0mA4`WoO8Ie&1%v!>9*rg@1@T(l)Km>9AJJa(!StI+I{C%oMSOf_C@sU znr-QWqeo`9Ds@oiZt1~^!1SzciHxgo#Xl`S$^1qmEeTbzDy2FEQSB5KE#xdRgua}CFfO8$V^8M)nceKS})LuEkSqyTA+O)|9FB7M~)da;UO>NXQ$j9-sq;qI(T z4hZGOQ@rPNr=#spu65ip&F*T00rz!nH$rtHVp}RR8=6a#7|*+Wpbqj^gWai^AtCc2 z?H#Pg_W@nqA7`vwa$0|PS6?^s08N3Q!d!9;gx3>cY-Qt>BfN5RQmA@xV8mk``cOwg zu)+kZ1V)d29v&kt2aH(`JJ2bXZC$C%XuoCX*bLK7{JY;{%D0#|Wbt7SLUOru0Dq(kG0 zRE-cSF6d}-`eH!Tue!VPS@t=S2I-Q zz7{zQZO)Io8~vxfhoze^Vi_t;0G^i!4my(76E%deQ*v~hxn6ga zVPVrZ^zfGFTKy3nRY99_rl^#n^NFY?drG|*(ZT*--C_R^ZSNV?WV-f!v$vx&c9AC4 z5tI&!5PBJvfCzy>5<&|I2uNr`3Qb_fQA%h7NDECvO#(qm2q6@eCS3?2w15bq6F{1R z;Cs36=h^puKHT5#H+)D|*1A$yXU_8||KtDroFo5w_XNd`gD^c-4BRzNm8J7ijln#E z6059f{?%pQN9_-==KpXv$P26r^2{P(C@P2kLRO+o#B{f=tmJ1pE&OJa^ZDl$963w= zrq;{_0IQTUq5VLa-78@qMCG2)@f2m)Ok@xU9&|wBJ3P4}R$=-ZTPZD~7Y3gBU>DgD zQE&J~^Bal2fAM;oh8@F=Q;3KyQ@KCzfSBPmNCiCv?T#VH#Jz1O;N7WP8rbVz%YlxJ z+iOmZ^{@GQM0l#_GjDbzXQWal?pJq^hdA!;qg<8p7ak#>`Z5I8&V1{to|m18A&mqYXae(#4y?(W-;N)A^>buain5*cK?MzRaJ^?ryNlz} z@su1{<-g9@Az>WzoAlZXM&QBws(#6Nec%HxWS)EyLT~~5SC{0g8=CeoH{b37#e_S) z_wXT})P178Mv%e4u3}=Ei5|wrSz(fOazI*>{=Qqkq!nvnij!&GQxc-!IW}h2kekbk z?k1=NThRM?MsO&<2$T(mggrQhoh$A2LR?(c4Zm^=E4G2}sV$?+#_-d>fCwNeuQ3YPwdffYkCBa0N6cpatYF8g)%pE22_!i>&0;fqL|Z8k{jubcPSyvdJ{-~Eg+ywVMv$-GZCSQU zd~VpOcYSYseWJcH=XONisN-g{4~#1W}0dv6Ms@%mrs=| z$B;kcGxv~$L80Im=3mcIBW>;S*2OV6y%8 z`-To~$plQ(yt?j}g(igZGGG=}PL{ht{1R|C#pn!;Ar+B0s&vp~wT`-=I+=Ye*1e_1 z@bOs{i+FJv%u+4BXn5#$Yzm7OoD@4kl_0h=VtLPlXklZM{=(Qy?XJM|cEL~cJN2Yc zaQKe@QB7$+Iw{>mm({<~>Q-S=gH*^fa4;b^o{CA!iTaq6n2KlTDidosOQR`0L8T?= zZK{JDn=Au<;_tj-P2vC@K{iIO*NkQ|AZ-35-L?_p7(w)b*_++*%S#GcdaG69ektzj zm*7MJk=J@=&)O|7J`PsQLyzD+NnUIrWB;YKEM_UVy>a1K&@?)}N{W~#$LV_?g!_ba zjD(JEwCJ~y8B;lW?yygJki}|(%AS8a^jTySOxx_ZxhD&lh*v&XdD~sDXUNt5oWcq z((Q`Ku$bN4Q~xDVo{24R$&b3;_uIzxt+?SMBgWCf?~inHv$-(rd&z2nn zswxE+SwfDyrM5I0UDY*jq6c-Rt`F|lFU8Rvv;Za`%X=+(4XCB1xTI+P93l6UTB|M; z1(Fgeq(4{A%BbqZ=Zs;K%ARhhi|25|`?+=L9YwkQ>tBS~3iVv)vw&SGZEc!i;#o2* z%7hnO8qA_hASp$y!X07Rz6-NVctrT*4#Xi<4~iIu4ORp+cst(*c5FNK&yk#iS}*Z{ zbeAsd9mTh9h2}5%y0W$)HcdtQvk18n4{e;9eZK5kvyI@=-sA6l9#^{q7EUoD4O@;n ziaxk&ZJJ!M_;Vtq zW_;z6y;ZdwOLc~8tC;;sk#qhje%HW6L?~0|Icdg#z_o=wEzcV zTvj4yDbEwcyqlG8Ak~F^UnN|==OdyROKz|_nJ1T&A{McXp`pAHwHXqA*gT86@GxMe zXmXjp*V1EiCxOfTs2Ns##<&ydz^xrqze6#Xl$uSYSfTR$ec)1TDQCR zl#|WQzOgG^`1}P+H9z0pl^pI!=w)}X{nx!o)cr@mDD-w(U4hq@#I(oF1j~Q2;L;p{ zA5I}^O^l)?3G{wV`BLj&!pFqj&t`q{1H#^^tRb&wkJ+W`X5qFfioTmkVKrZjY(gS0 zYxfO&nFAeEQyz#r7M0%<^J zCpq*tk*e?o{o(=NUcQc8zxT*2pW*FzJ=?1`Jz2|J<^6tG>F-WU9zlne4kRr#N%3@T z0>M61OH`?vsU$dxLKqa&id zg{GmYN2wsaH9!5b7Rs~sYWC>fpHV_uJCoKG6d&VWO0f$V60x*Ii$IJm z&{!(!MI&cb+a}uQ_b3i|-kjLDttGXi<${Foe7OzqG+}IL~XpJ?+{=ym?s|?oeT?9|bXZx21s|ei3i3 z=YbwzVv@jKRS2NLW6W-Foye^e&-S2OYW<8PXUv`jt828e_%%8u(QJr8r1zG2opmhL z?MRk2PQaJU^{46jRH_J_f1$~=_v!bMl1XG#!R@cyEdY9=(V@X_(dR*duC3pGakqrLyxXnR|Q^sYC7UD*qyjAXk+HR zm-$!lpjcT0AwUgJk|n_qx!9_vhhmTn(Hz(MVSD*y=MgnghP_XUQ{$`-ZK<(u4dy_? z;V4ix;v_1QO$)#Byij$h-1c-BzHCI=6IVOr?)*eLPk&3uIB-a=G&rF^ov!u8kx|sP z?IRWSN8i zzToLj_KD3rCV!xofmSXL)0pu1FWH7_oOub z@})tw6&u%piJmQ`-Aw^TOEI)}BW{7YSAH&F=W>N6Xy?vR&&XO&!O;M*2$1Tk+>7rb z_U{*GiTU)QggLz3-5rwxZexTV%rEWfrsXdcJx@v~M0!^k@|Fwg?!%|rFQ;|`)vh9S zcww^36o6)+iX$~%ON^_=uB3+|R0b{%HmC03#t`*Ru0CfM~D!=p1o9+S03GiSSzDC<Vs?0Pq9hx>&I?CP7L%nZe3GZJ?$)pgri?XBq$A zW7f~glto)y;NDG+FO#zOgi2EhVspqxsn<2wI>}JuDX>4D0(iArE(rLsYWkux%>3$c zGf`z;Kb6uZN_^6z&OJ=ThnI1`ai4$d^#A+~J+sE$?t>1TB36ml%x6(#AckL# z4y&;KLwKp#BL2&P1~x~_BVW2(qKNuY-^TF{%;gTqd~#nw>Wg)?#R383JW@FkIKw3V zzH3qRwA9zhT%&g?LaEZmxMeVCfL^)S)b+Jz=BXM)Q~T|Rg@>uRiiSwf6OmtL(yd*@ zJ=_e$xRzoi4Ugq1?^`@isC+v;untkg`Uu6fKiG}okDtMkQ6TTu6$@6=*X6Winm=b! z2pA>sl#8jkJNWXMNZrEdV7yT+?db3yy8KcjA;=lrZdiwH4njX|xH>~|#8eEqpqU>s z9~sBl-NAA(_%ARj;n>G71;3t*JNS<-L=tpxt z{Ptx2U?(;Ro)lX)$9!cDU7_%e%PCjx_Fj+j=pMjEmkg*l{od3#+1h zhVzL9>Lq1QvpUdxJwphL4`4d)uJU>Vz)p%xvk_g;!drMIhZ^5Kd)~i(8ZWECPHOP( zx>Xm@4S9+B`3yoe)BvyC3Ke91Ye!rs!(Jf2((C9~C!Z%F2~=wkj6F&UzK|I%y8H3q z_J>y$Q|Sh@z>vPuo)zrB51VQl)L1*f}lmeBjeHSX~aMqL!niibE_gN)bl zaP)4Ok>UM-PbDY6xxx=L1)Qz?bpBLt72>?^KSkr**MrC)^X%;f zq#wSoG+FE@Oy>-Lngj3sV)G*B3-M{xCD>74bWO^$;7YcM0zW53W`o zvGj$Z?Wkig`p&YpcZJfh30SRxW5@Nm2G2Af8MAf@12)cMs)0 zU(Wo_mnJ;GDb%a!t|8)Ul#K`MUAD~K-aW1|tv33N&-ULa_MduEr`sC_*82~0etGmC zc;sc5JJX+VMnNrum3~HhPYzsv{o_2v8Tq4TDDfW*MD)Uc&*%z@!w*}5My|>FXJ}3a zz+PZML4Cqn$bWU5+=DdejY^6eB0T*%nYfX-%yB;@0bt z@g*$g7uRs==aSQ(%#}6A6%-%3>*hnJQ0_>Q7R;Dk2)ljyt!PzUiOY-U0dh}+Fx+dG^`q<8KWQh(QU(TY`m&S}FyX29k+D(4eq+_`t zK;9xDB6C4teTj`;2&KA3 zt1|P+`DmZ@dc{&A=Z@uy7n}*Yn6Hrn2ZYitP%~|vKCrW{YFTm82d9w5)uH z$N_eZ+3;wL=awWSjPh^=Vy2uJai^pVyG<2Pf}4;Cbp9s8zVSk|F``t+*7c9EMo$5s zDq&uP%f1@O2GMsE7nh`Kde+m^3leI2l0p*>aIZl0$m2r}Lxl~e zZ+-e0%!J5q==eF>SJnHrT&J4`S7GTS90})zt?;sA7bb+!H%Bzg8Id ztcWYpTu}Bo$e@iyR4;lqN>Ln$SWLKUKTj*zw4Cv*fVQY9O85QgUK&Hm;kf%2%er0o1e^mjh5u-&H|C~szs1&iQk zFjt;9>b`Z!XSfV|$}CB}5Tvp~qS0Yd$Hb81o<4((Noa*q%q6bn)4ny1V5;v5HvAGP z1^%IFWy&&Cz-1F^)sM|Fn$whc?<7^H0E3t5#4R;ckawDTd#s0hPNJeOjEFWr3BFy;1K? zgBa1l4t)-&ttE-=Say7Zsy%kZ5!)BFrwX<)980=e_+UTFYiyh?Xa&X?ylc=AXym3N zO26okzjpCfP_L>dl&)*(M%xU2xOEL;T>0a_jimR()}^J1c_9~TkbSBCnR=4Kh!LkX zp_@g_j=Ha8`Kv$*0ulVMRL@09D=HEe;~F{E8q4c|9Of+X*Ohab$1ue)K28ahq-D{i zD^HY$Qu}U_nuw*s#<66;%j0?e2j6R<`KWMEsfg!|U?2Sa0y;^MrQ7S>@0Dw8dUB?N zf5X1f?j18G2NUez4&lh(Lp*|h~^Qc@mMYk z1Z4@_A703J($lOiyzuc7Qv5iiJC9PFGVL%PTjX06a6OQ;3la(g@XTvTK2NE%5T|$e zPrgh|PfzVO8-enJ!or+{%Cp$=d~SAfh2CIkg}Cpp^9(Pa`=IxviRVE&0`-lbEB6%z zgx$aM$z>I8ssyY`{ccg-d0^>VpDA(i8xc@>Y{8U?Rxtmv3|T9JOuNeshd7An}Ep*H*k}%%F42-n5f-7D7+X?^ei0`Zre_rNF_0F!C@lB{HH2v#u`mT zbSiaAxI&|hFxl*q`s}=~Q(S?{bJ=rg>9b|@=LyPf?Pz9ETU)291gj;@|En1!J}_S* z)wYf>6Hr_pM{0B$y&8@vZ5pU;?y#Jb;_I7Op?r-=r3RQEoykaFF+YtTE5V_&h3t}d zZ%SXimy{Sumu!W7wA3=7XfjftnjZ^7mHGFZ-lnR}jB~SbWo1de0YS6~kz_$s6v;2@ zt{#8XBh9BgCDj&xWZozp0&54L-WJ~K0{z*gST}d){8N*enuW)omT>kJnLn~>E75N| ztX@B&y=n69%UV})-!6?8wRJ0k@B4Kj%Ihf(@f?Jr`1Y$T}u)b5bDm@ zZ81KI_i!T}Jp|wX2VkIo=1K39?6KV8bitk9o9~gt%>PQ?Nf!$8sjzrYCTn4W2zp~m z=_1A)$jV;{H`*CuGmgy{7)nD)TVT+c6|u$nY7-@xL(?`Jy7xO9Tch*FV|10Q`pzl7 z_CatksWbuNINawD3hW#M%u?+atF+T$hq>T`7reeTblf7aVY`IYd=7#duNJmJ6N6dq zZ9#YE_wdUOXz+JFVZCpsofbfe@TT`8R1gd{$bV+KwLTbW@V8oG->A>eFy{(PY-0Xh zzt1BRD{gL;S~3~eJp`DcsLTlhY`v&EBdIT=%UcZ`$BgZyc$u(v4ssz-S=Fe~mqe%KGT%XXp~&>V#XJpm}1F zjBN4C1(A6YhZfl?@hp$M3a3OxJZY~Ns5ZpN$>8aCV(pS3b8V?Vc1v&XZD62Yd0w`P z>Gnhm+X};D4926wL@`Its^~z3DyNV~4-Og+co@F(sqcith*QPR0Mbf)v6M*2USo-B zsNZ=jQPvm&KnZoq%J5Eoxm(xOw#-jWR(?(SlYIsXerzZ2J(3zC>=5Y}-?HPun(A`O z=^{L4Lagsb-3=9%o$`o!v_X4BX~)>WfEYwwx7XC9VWWUyshll)6IX8iC*7hwPyo2? z6aC-Yt&iv#k~ciH!u>W7k}A>EAw3hD5!36#lU$xw1jV!IWIwV&S`iP0Rgmfou)gq? z8$mn=q=n_;`1rUEr?2&~Nl9Xuk(H}zY$7WnK1BfLk1v;tMxp#H5{o=9(La)@Be=LY zi8G9``SK)Lxu1L#uR!4-Kq{~x#IG$I>$E`kJinx>vY-PyK)cc0a_Y!rEG7y6krD8%Q|o@oagU>FNd(5!yX{Hp{-3 zR^bTnG8fc}LTh(P=VeD^UY0b?`YIUQ5r?~2fe{d~?WVsQZ0`}Lnfb{v4bDUH3)r5o zr5U2hvVp6s-Px{B)+-zoe*zOqrCXMC!fS4IdBzJ22IY+I)nJ`x~XS`!kw|5+&uvHDH?+fo`U>76;!~a-nHy*Z=2v=gDE@R9DsSy&gB2)U82oV?agC53RX#Uqd^Bd&{+hzf@iS|T zw|P**CegKZ@=HIc7Q9j}D>y%S^(?(QKx|U2ms2OcdQ^T_rA#CGOkX+{SElvCxYwV;FcWILBIh&PbWg^tJH{wwsE__krN0+B5uW%gHWcjv;zXTtc;XJ{N*=ZW3?s z;s4I3>tVET7GHURtEy4;yGb<+KB_9Xp}v2=A#btm8}Gx*96^tg-#weJv}L)d`})!0 zrsl^H#CS(*OGYAU!Z4RP(X{h{5>FyXFL5-=2%@vq8D89GS0l~3Fb}8Ky2Y&WBAU)c z3P*`L?Q^N+UE3OrzYNEq*pgvH(o%tGXkXbI_nTsy25UjPYqq=qh%Vg9m?h@jRAfp4 z0mKPS`jjwb%|}%Dpjg94$fl%GuGBJ5Phj0uv-e2VWwS4;#K2dn8hh(wIrtWCW8?(p z+R&JymANiQ>FWGc96@!3Yg=iB5iH+6a9#7e1zE;mt!xGy`b7H&VtmG=D}zH5Q;4L4 z*f`$B$o@-}$kp(yo;Y>qKF3Gz6mIE>nyZ{aTNf=?OmgDB^TC7f)CMi%gF`lZ@N)+) zf4p^W$?`1N{**nVjVq0cS!IfCvio$AD>3aJnG_~C*JvdBfL|3G? zttCL-6RtZ@0Qp=|01N;I9Zo;lm|v?E2F4^x80ZxS6s9Kih=uN5;{HT6^Bd5EEK^cE z36<4M9e$^>RAtmXb|)zi%nUBvziUSKp*jy`lM2yn+B6Q z?{r`mt*jkIb#cR^z2D%mSz||k8QpNgjv`;ZY8iL_x&}(6!V*y_S~F>uddVgY%P5uL)(z62P7FL&- z3FyEbeR0*!3B^z1215INe_kX#owbsLX{zG&z5aV4D)KILvW5}}jdKGs(-;Cz8rubTDM)&C4-;3+rbCddu4|ge@|0iH!I< zLQzxis0jVaRliBA=#@j2-o+J0=N87$L*D$Hq51277Ww{r#`pGR*)uP`^U?h;Po?c# z*j^`G-h>r!D!+Q%s%_!0!rgc7zB#tS&i>;+um1n_@lQT^Eqj>CgHR*bN%=$+?T80x zaRcO*U%fh%ivmdD-BJ1J9k&i=eI|^G2si$*`PcB9e}A6KXLq}N+D6QyC7OnIAPp<# zDnd?rJTILy<+cWlK4=hZUJ1!h9Tx*q?` zil)kI_Dll!_IQuSP~JB6u}(kIOq^*dy9JYAtt%=jUKfPgyy@|M)l*I&l+!$>#63z* zKdZnOUo7$F$c*E);P>|Qj3GdsOuO=&B9_lOsok-a^$d7xHeZm zcS&7R?5(CB%gG7v9;RcN>%JZm(s^t~`E9j%j9SU%LdHbNr`N;k2(~vtC&}tzr!2V; zUq-Aver0&n#Y>R9oL{>#Vt`qWf{{X7!V!n--`c*Nq(^@6q{HacKik;;*$aX!s44Ak zeq^2asIsPXaHS)zl+CYtV*PLWo$xoqV}34wE~cFwf@)F}#e%ym6Z6W-Qk6cToGF9- zU|0}orPHSJwOxgsb7w#+R?)eH=0J2SEQ*O3n4d{38_^2wrXa*(0pL?5#;TG3`uwFv zNHaHV4Q5l$Dq^XNGy5xK(Ia7Axz&T7Ecz57D~@T2kP2`&2zq)6S-0PYhW*|NGJve} zw`<&2ljyosQN{vrG-XX(<)%Hiyu1L~NmcWwMK7OFrk0)}AI39@K;N7*J zGf91p!eha{U5p3&xF;a%kS1v7WAp}DQgAH?k6kuEtkNbX*~yZp@nN1EKUta6S+4#M zzt92SKP#ZnzDOm=2#Om1Gd@Gr21l!8lib4$a;cB$J}F-vUj+7y2=f=y z2K0hu$*2O5apDrk{vljPyi#%)YW0}+hkmO_LYq6U?;EU(LSFz`^bSnxJ0531?Ms6u zjZN{|M!I+;ay(Q)NntksB)&XV!7j;toJjaVlye4bqGU#yUcP3w`%8~ct8AI=OqHqZ+@G;(T&8v7FnUG4`7L*%KFnz+R4)ErqHpHd6YN@%okh zzj9l(d)1MI@`!yNAW9@5nPcS}2l3jD+K-0%_^qm?k3H*6NbD}3m@n$A*G-+Z{-?K) zjq?{pv4X(`H<)=E{h0Sw{A5DgN7eRk*SgCnIuL;IwAYck9>fwMPSPzbLQ8Qc zYkbXXit$afb2V}lwEy%&80{oCPK4w6Ste}~TZa9T_Uq?(;ZI7cip?JzLj6Oq@>lB2 z&l(S}mL!P^-^~IHj;kElbQr$_vC}f?=g8A~2j&2o1iUiJNP`-;SspsHS!pNfONTu< zR2F=2qi%^)!cmiY|I5J5I{&W5vHEKZq7S~5&3j9@@5ygDUA4B9N-&U+=BgK&UU&J45m$F}Y(dcJVZ*>v1FL*5r6O~TQ|+b> zydi};0r=THzp!$X`RmOz`S}RX6K}VN(}zHI%S-wDxIESp(oC9EB@$i6;YWXZ_Ux=2 ze{FWZ()p>(O}HYh2kS#}x6}S0Ik_DCY z%P{xLJq5fs)iQ11Szy$KTS6NA%-{M(Ke?$TvJql&gez}7{cm$k0-D7VLZ7{)kW2jM zU@3Qj6+XRKoRF4{o8R*0ZH5&=LD0BTqykVe2J&rw8VW?ds)4?*lA)TF7E9dN}wwD{|We{=heG>f9`eQjVThevr6uCDVmh~2EUzHRtU%NV_w{K;a z%h}mO5IdNw3N^VmmF8MS6b9jlF4Y=>9DUU({>bCc|Zhl07tzQlA9x1IKHr7+70nxvF zP(G&O?IqRJB)UVn!%{A=JVlBxnhEv0UB`$Mu7~{nr+3`A?~15JrS8+zny_gnOA$}@hr?d6SVr$qPp0-j{U{g5))h2w zd-E!v?MzjDE}%>ZcOn5J;7Cq(;<8tsdeLUwQryRZAQqz`_?{a&&)tq~w$)j#J=xW@ zO7B~~rzp|Z+DyLVpYoXroa=w(pi=mI%C93SWpPa6*fENTP}Fg(+9ij1+!7ZC?0@zvCGzEm}_!AZ&_R*aDB%7|B{QD5ubk!p!kLF7ymf-H$d z=Gc5`%fj}=mxI2z^MBB+8$*{ysKE4c=ZjM48h~kWA-;(V27^E0aAChLiSXK|)`cvO z8dfSLLsu#dFtg;m?%-gJnI7ZdOg)3SBO7PA7VgnG56X;A2phMJ`T7z%-D<>}rbV&j^smb#WWE$VJJZqDZ?rUsrDhRI(1_^^s&lN=5E!Ry z3$lh`7Iq7z#JFm(l1MSdC&jvpr*P7_?&{dkmfimF+q4gcU>HiCBG4(-JS)^aa?odN z^*HZO8P)z8WrF8p;1H`c7%$0-Xs{C2`{H=1;9wZ+5c=ubg$JC}>YtB|bfTyqPazxL z=O!ijycn|e*Aao*R)cM&37cS(6<%sn$FwPy20#igY}Hc#Zq5(cOJ{60k=U|C0+9Q( zi`XpwY~k;d+)HWy=CRC!OO%jGJPp#+TX|S&OpRM!4-~AnoG4-F@G!$}Zi}MYldHab zo0EFA{5zjtS=mBp#o@qAQ6w*Sc3*?-th*TV_#c1$IN8@NWki4&C?5k;hxVrw`KXuo zr-+41R*Vz+)WG$zv5T=omkr)c-@?AiAHxuyRwt3Pzy|u8MJe6w5FrY30}ACS{Op94 z8ta~MS|0hh-vA9y=SAl){63lv!+gYXIaYzB*t~b4KQ%J+daDz88!db?dw|YY z4&KO6(+x&SSLknE{Jc?jsp?~+0l*MqiCB-X{atLJEHPU&>4uiwVmUSMlZaiOhPOO~ zeR|WgW{+Esuw|^{90dxjYzS!S9x-aaF;6DlTCeTt8DVv0PZ54?h6u7`bwzIw+U_u5 zsHVHQw8db%vAXrr(QV9mW(?hBX;)~h`( xzjyyh=US4>dJg94!|LwmsK+7CnUpGRNZI{UJ(#zA^YPXN*FP9Tx8_AD0L zy^cq>TJGcoTI>_}cOT3N-}lVhPZMzOy_#vB{?pl#(gHHcbrP^@ALon~`M^yLdfJ6T zQh)hLe00@TmL(kEL?X$LD8yxFmB{62*^{vSx!HJ4k{(;>;*rC%43IgW>^$$&P|8~xj{Ws!nEfQx^=hL38) zt-p)eP1I$k_8ENw2hZF&Fu_lae&>q`oL-zfGP4Af8#MdF?l^R z`2+2f)Fq>u0|8@`g>e!wd!{F$zfo6IWt8ffwBVnGdon0-;TpCzT*uZ{#pXt$pArn# zb4KLevqV@#rvc1h4yrd{a>qj`=D1VP?%-2-VmUnIE9uLnuNUu?>}kzUEjSS;5om zWd7551f-T}XeM2{FqeZF2%`5i$>efburTPt=DAxQs*0U2va_S!MZn@7d6wj#nxYUr zXFo#iGIJiriSfub#iaOBNi)6+74umuS}X02O-@dgh-Cs1M`GvKP--eI8~5!=tz)EE z8VnFo%MWQJ>UjU7XI|F+!4q~BIJ)XEndOKEsgyr7u+b2+7@=2Sx2=2{q~@3i?QO~5 zWL!5zUT1p$EAYx!Q&SfZScpryv5pX&EO|r$#Vuwg|Fsb*@kZM}{+Ai0;NKnm`cMkQ zuk4<_!u(1X58!+3TEae&hr%U)mGtM(Be`&Y76|s^TwhUF@9^{t>FwRh)L;r4+gNyC zh*Qh&7CoLsen_9Xxu2R}4Og1WpH_Z>+`Dd`JDLkvw1<$$FpR#qZR>%~__96p+hv$j zId;n)9+cP1=J+_p5_zgcpHKHV+85YSCso}2+x2VX(;x2!&g@CUG9RpvBgxR-gDVT8 zH`ZcKjlZgzA%i3-)0TKJ#O$+a@p&_N*U%}SIlUF5c0ylY~vd&P3`JIp{b6k3WI zDa_fcHww4<61OcpdiGTx0HSq2j-&f0gFq~PUL4cK0kkSC&To4-5eWS{FKs>b>)48H zprIh`L3rIU!p=FS?(mTHP>+g|d%8mfYUlYXD%~0m3!;$QG0t)rZ|VoTH7M2*VWjq7 zLq96qU@bvEld1+f3~mf;3oxs)3zhSidSUg{NFaL_Q0E6(v{`Hc5Y7q<&^CQ7(V7yp=R_p!z1KrF{@rI0QF}tHee}*R zP^St(wC0ym(!&jE`4i0jrp2-a!iEpNNpgsrGe5Y%z7c9-Webnv(7_}^MfWyIoB6I{ z43KG+zJ0L7h->SRo~rG$Rx5v;|AYz_4X++C<>n3P@x$-+Dyx2;S%l)rp)zwP5Ln)^A@|9;L?oE9eO;G>wnnuodVWv470F z`T7S@IS?(Rwl0I1M8S)bEN6l0%jA9WG}nk+7dT7h9cHt0PtTvFKmCQwn*JL1 z?|h){M>!!95bRQZAOvO{js}*Gi>BVFzM<^@DZj{nCVMsF%ikJ=&NNVMD^9D8Rr5&qkO?^$O4HT z76vSx-}wVYGqi*P=q^n#=z4%R$f9F=17DlX40A8dX%bd(B!}VLtnA`z`jOAmR?G8e<0$bql-hO}SU+?lj+tzgH#C3# zJhq;JsK*zUxPi`HzEN$eSYu_THg$?NNfPV#qlW2q7N6w&V-8)(sI74LEO+c+BpSe&nvtXt;J3r^x~)RnHQ9Aem9EuEMjP zdd>U!&pmmkBpju|Td_bO?NzUtkVB{3Ha@m_N$C%Cr>9--&^oq*L*hDzk?^Hk!!>Rr zQh5{5b|7fwKhk`!U)<{pGffQ45HL@ipO*NYIlP0ha7;+#g$o4fh_w&)2WB5QR(Gov&dumE=q`EKzbnOvE{EKorp7*v0#lO6re)E%+~I zF*m?j%oOyabowd9^THTP`i7KTQHQq8KTN^FFHzGF-AP66-N|`6sjTZ7N>`#GTuM@b zK)Co)Zw968e~Qy%=g6{#ydNq9f)J8+N4l|vai{2vVdz#p-3^#CBEM+s4H}U~?}q+S zmIU@m5fXVy*!%6u%~$1!>JtO?-80ulTK>@vhO4I!8BSQMC^?gd$l?+yE4)IC&1~y| zu?`o8GX*{6Bs17$T++q3@d61BYape+=4`F1Yt zXHY;N3A1}=2ZxMDy_Y^F$^f&Scu;~5+Jwpvu-l$qX?2zOtJ~>h zf|A;<;5+X-k(Fktgi12WV|u|kIc?O?R1Fj)y@B+e96ZS(IyC)vbU0o4>#p+x@J{qyx}Sk&D>4+>5nBpo^%~;)ZI6 zkX#-w1@y1NP}yC2U`B|R!p0|8i?cqM3XB`KkM?xpaT zMqn@NoS8j|YhxqonfH(+Vv!okB4W}R3+okmA`@#p5 zY;ZF3VdY7X5Wq#jD50zCTf@Jz^;`eW*2DiZTmPqoXVzkS@V0X$Bcf?(dMk3I;q%Nu z+V$`;UPNb*){}9Qe4bVGTX(8!ykyJS(WNjv2U(26rAqD@1+Hn>X>1d=hl0<4^ z8Gif)!-jR2G%VQXtE=~WWJoI{%KXiztMh-8fs>inTH-MU(|HG)7Y6^E0o6L(9MjS+ z7|D$)bRLi5ecgR`i|?{ijU>3~cf}WC-li7psk9ypMG~a)w(lG%)*JvW zE#)%J%!7tX-$>#mzKF1`8~@WQ{qH~jpG~!EfW0nZKgSoLjaom1Y8VwwZpL8Dslk=%T5Y058^P@b-2q)-X1 z&S+*bcwfsX)uy^-tu898VB~^4-xt@Fmp`uiU%&mo+%(?|@CvdjJkM!;?Dfv|SL>VL z%XF7Tc3r_ibHwYv`F>_!2mSa2=lfBw)ykL(u!;={yMZ9cB0Zs}OwAvEbeA(VQTiiU#N4Pkf_GOE72JqeX9$6 zB7e{j1zr$j&sY)W^i>@%UUgXWX6{s%vhGxN)hU+!ncMs**~}p%V}w1MBL=kuzS&J! z-WCE$P@4a{-V`;gyoT)(VY>)&O0P(dfvrvGaPM?a;RRgH+su~(4gT@ze0-$l!y`Q? zFhOMOt@D$uamk<%G)s2#Fll=9gOdikG-asrtS)wop#|C{YLBs>92@Kb>NK^opCz%r zQgYU>7_EnV zW%oV3)y!B7sK(QiNpo(VagXrqG5~Uea~^|0fyK;s_Vw9+1F4}5wX0C&REM(pAARux z=;Jl#d811knQ3qvf0EhH4d*C)N^7IySvu-1ezugJT=0H}(;C$jwlB3N%Pob+90dl6 z?c`1$JHKbwCw@MQ?}@c}K+?5W@4eE4VmS<;lEVnMW^AcEtk0p8B~MH+3sS{D`bG-| zo=esN@a4fV+&(GVcw*pi4IbTc(+diZugH&#x!{ za+Q8ma4IMl=N|SbrtD864DJ=~Qnp`E6dm1a5e)dYozOk_g_ z5NdfATTL!xYq z^l*#_<7H)ArF#j(_sR&&JO)A*Giax_Px{#JC z?2Bs4Cbne2$Wk3rp`9*&fBgQM`MYJ3P^L-J$_tm`4U@R`0RU{x$vI2KE%fQ40D04B z>g(@2!k-7Y7s0}tOoA-yd|GIJZ1A#YJtS^mD^O0M{_2Nxr_S0qQ`xi*ceTtI%20e= z#Q}X29mktxd5ea}A^Di=ZqD-Os>h7iOX?9h#lr~CXy&lG+oEq64nJA#%CUUtyF-15 z0d)-36cwk8q-$&ZU-&2)4Nf^qfsVmTZVl7+}J)#Xda}eQ@w|^Q?h6atU3|} z*SpW`lL|Vb@abCrCPhg%Xr5|>VeKlDts3*}+bMPWr95+~kp5)VqY9g-snJhcNj$r7 z3ls}TEWZl`bWfLvr9zU0l5T_UZ1~F9X1`383@e#4oHR3dQ@j2Xw@l>T1R`3amACiR+BquSnG-p2-0+bj|I z8E_~94R&?qD(~KIZ+8sR?u}P%yWHfTspJ6^66%Mjr4^f+{q9*FPa81QE& extends Parser, FormatProvider { - -} -``` - -It combines the `Parser` interface - -```java -@FunctionalInterface -public interface Parser { - T parse(String text); -} -``` - -and the `FormatProvider` interface - -```java -public interface FormatProvider { - - String getFormat(); - -} -``` - -The `Parser` interface parses text strings to produce instances of the type T. - -The `FormatProvider` provides text instructions for the AI Model to format the output so that it can be parsed into the type T by the `Parser`. -These text instructions are most often appended to the end of the user input to the AI Model. - - -== Available Implementations - -The `OutputParser` interface has the following available implementations. - - -* `BeanOutputParser`: Specifies the JSON schema for Java class and uses `DRAFT_2020_12` of the JSON schema specification as OpenAI has indicated this would give the best results. -The JSON output of the AI Model is then deserialized to a Java object, aka `JavaBean`. -* `MapOutputParser`: Similar to `BeanOutputParser` but the JSON payload is deserialized into a `java.util.Map` instance. -* `ListOutputParser`: Specifies the output to be a comma delimited list. - - -There has been considerable effort in recent OpenAI models to improve the model's ability to return JSON by simply specifying 'return in JSON', but not all models support such direct support for returning structured data. - - -== Example Usage - -You can run a fully working example that demonstrates the use of `BeanOutputParser` as part of the https://github.com/Azure-Samples/spring-ai-azure-workshop[Spring AI Azure Workshop]. -Part of this workshop code is reproduced below. - -The use case for the example is to use the AI Model to generate the filmography for an actor. - -The User prompt used is - -``` -String userMessage = """ - Generate the filmography for the actor {actor}. - {format} - """; -``` - -The class `ActorsFilms` shown below - -```java -public class ActorsFilms { - - private String actor; - - private List movies; - - // getters and toString omitted -} -``` - -Here is a controller class that shows these classes in use - - -```java - @GetMapping("/ai/output") - public ActorsFilms generate(@RequestParam(value = "actor", defaultValue = "Jeff Bridges") String actor) { - var outputParser = new BeanOutputParser<>(ActorsFilms.class); - - String userMessage = - """ - Generate the filmography for the actor {actor}. - {format} - """; - - PromptTemplate promptTemplate = new PromptTemplate(userMessage, Map.of("actor", actor, "format", outputParser.getFormat() )); - Prompt prompt = promptTemplate.create(); - Generation generation = chatClient.call(prompt).getResult(); - - ActorsFilms actorsFilms = outputParser.parse(generation.getOutput().getContent()); - return actorsFilms; - } -``` - - - - - - - - - diff --git a/spring-ai-docs/src/main/antora/modules/ROOT/pages/api/structured-output-converter.adoc b/spring-ai-docs/src/main/antora/modules/ROOT/pages/api/structured-output-converter.adoc new file mode 100644 index 000000000..aa15e12cd --- /dev/null +++ b/spring-ai-docs/src/main/antora/modules/ROOT/pages/api/structured-output-converter.adoc @@ -0,0 +1,207 @@ +[[StructuredOutputConverter]] + += Structured Output Converter + +NOTE: As of 02.05.2024 the old `OutputParser`, `BeanOutputParser`, `ListOutputParser` and `MapOutputParser` classes are deprecated in favor of the new `StructuredOutputConverter`, `BeanOutputConverter`, `ListOutputConverter` and `MapOutputConverter` implementations. +Later are drop-in replacements for the former ones and provide the same functionality. The reason for the change was primarily naming, as there isn't any parsing being done, but also have aligned with the Spring `org.springframework.core.convert.converter` package brining in some improved functionality. + +The ability of LLMs to produce structured outputs is important for downstream applications that rely on reliably parsing output values. +Developers want to quickly turn results from an AI model into data types, such as JSON, XML or Java Classes, that can be passed to other application functions and methods. + +The Spring AI `Structured Output Converters` help to convert the LLM output into a structured format. +As shown in the following diagram, this approach operates around the LLM text completion endpoint: + +image::structured-output-architecture.jpg[Structured Output Converter Architecture, width=900, align="center"] + +Generating structured outputs from Large Language Models (LLMs) using generic completion APIs requires careful handling of inputs and outputs. The structured output converter plays a crucial role before and after the LLM call, ensuring the desired output structure is achieved. + +Before the LLM call, the converter appends format instructions to the prompt, providing explicit guidance to the models on generating the desired output structure. These instructions act as a blueprint, shaping the model's response to conform to the specified format. + +After the LLM call, the converter takes the model's output text and transforms it into instances of the structured type. This conversion process involves parsing the raw text output and mapping it to the corresponding structured data representation, such as JSON, XML, or domain-specific data structures. + +TIP: The `StructuredOutputConverter` is a best effort to convert the model output into a structured output. +The AI Model is not guaranteed to return the structured output as requested. +The model may not understand the prompt or be unable to generate the structured output as requested. +Consider implementing a validation mechanism to ensure the model output is as expected. + +TIP: The `StructuredOutputConverter` is not used for LLM xref:api/functions.adoc[Function Calling], as this feature inherently provides structured outputs by default. + +== Structured Output API + +The `StructuredOutputConverter` interface allows you to obtain structured output, such as mapping the output to a Java class or an array of values from the text-based AI Model output. +The interface definition is: + +[source,java] +---- +public interface StructuredOutputConverter extends Converter, FormatProvider { + +} +---- + +It combines the Spring https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/convert/converter/Converter.html[Converter] interface and the `FormatProvider` interface + +[source,java] +---- +public interface FormatProvider { + String getFormat(); +} +---- + +The following diagram shows the data flow when using the structured output API. + +image::structured-output-api.jpg[Structured Output API, width=900, align="center"] + + +The `FormatProvider` supplies specific formatting guidelines to the AI Model, enabling it to produce text outputs that can be converted into the designated target type `T` using the `Converter`. Here is an example of such formatting instructions: + +---- + Your response should be in JSON format. + The data structure for the JSON should match this Java class: java.util.HashMap + Do not include any explanations, only provide a RFC8259 compliant JSON response following this format without deviation. +---- + +The format instructions are most often appended to the end of the user input using the xref:api/prompt.adoc#_prompttemplate[PromptTemplate] like this: + +[source,java] +---- + StructuredOutputConverter outputConverter = ... + String userInputTemplate = """ + ... user text input .... + {format} + """; // user input with a "format" placeholder. + Prompt prompt = new Prompt( + new PromptTemplate( + userInputTemplate, + Map.of(..., "format", outputConverter.getFormat()) // replace the "format" placeholder with the converter's format. + ).createMessage()); +---- + +The Converter is responsible to transform output text from the model into instances of the specified type `T`. + + +=== Available Converters + +Currently, Spring AI provides `AbstractConversionServiceOutputConverter`, `AbstractMessageOutputConverter`, `BeanOutputConverter`, `MapOutputConverter` and `ListOutputConverter` implementations: + +image::structured-output-hierarchy4.jpg[Structured Output Class Hierarchy, width=900, align="center"] + +* `AbstractConversionServiceOutputConverter` - Offers a pre-configured link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/convert/support/GenericConversionService.html[GenericConversionService] for transforming LLM output into the desired format. No default `FormatProvider` implementation is provided. +* `AbstractMessageOutputConverter` - Supplies a pre-configured https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/jms/support/converter/MessageConverter.html[MessageConverter] for converting LLM output into the desired format. No default `FormatProvider` implementation is provided. +* `BeanOutputConverter` - Configured with a designated Java class (e.g., Bean), this converter employs a `FormatProvider` implementation that directs the AI Model to produce a JSON response compliant with a `DRAFT_2020_12`, `JSON Schema` derived from the specified Java class. Subsequently, it utilizes an `ObjectMapper` to deserialize the JSON output into a Java object instance of the target class. +* `MapOutputConverter` - Extends the functionality of `AbstractMessageOutputConverter` with a `FormatProvider` implementation that guides the AI Model to generate an RFC8259 compliant JSON response. Additionally, it incorporates a converter implementation that utilizes the provided `MessageConverter` to translate the JSON payload into a `java.util.Map` instance. +* `ListOutputConverter` - Extends the `AbstractConversionServiceOutputConverter` and includes a `FormatProvider` implementation tailored for comma-delimited list output. The converter implementation employs the provided `ConversionService` to transform the model text output into a `java.util.List`. + + +== Using Converters + +The following sections provide guides how to use the available converters to generate structured outputs. + +=== Bean Output Converter + + +The following example shows how to use `BeanOutputConverter` to generate the filmography for an actor. + +The target record representing actor's filmography: + +[source,java] +---- +record ActorsFilms(String actor, List movies) { +} +---- + +Here is how to apply the BeanOutputConverter: + +[source,java] +---- +BeanConverter beanOutputConverter = + new BeanOutputConverter<>(ActorsFilms.class); + +String format = beanOutputConverter.getFormat(); + +String actor = "Tom Hanks"; + +String template = """ + Generate the filmography of 5 movies for {actor}. + {format} + """; + +Generation generation = chatClient.call( + new Prompt(new PromptTemplate(template, Map.of("actor", actor, "format", format)).createMessage())).getResult(); + +ActorsFilms actorsFilms = beanOutputConverter.convert(generation.getOutput().getContent()); +---- + +=== Map Output Converter + +Following sniped shows how to use `MapOutputConverter` to generate a list of numbers. + +[source,java] +---- +MapOutputConverter mapOutputConverter = new MapOutputConverter(); + +String format = mapOutputConverter.getFormat(); +String template = """ + Provide me a List of {subject} + {format} + """; +PromptTemplate promptTemplate = new PromptTemplate(template, + Map.of("subject", "an array of numbers from 1 to 9 under they key name 'numbers'", "format", format)); +Prompt prompt = new Prompt(promptTemplate.createMessage()); +Generation generation = chatClient.call(prompt).getResult(); + +Map result = mapOutputConverter.convert(generation.getOutput().getContent()); +---- + +=== List Output Converter + +Following snippet shows how to use `ListOutputConverter` to generate a list of ice cream flavors. + +[source,java] +---- +ListOutputConverter listOutputConverter = new ListOutputConverter(new DefaultConversionService()); + +String format = listOutputConverter.getFormat(); +String template = """ + List five {subject} + {format} + """; +PromptTemplate promptTemplate = new PromptTemplate(template, + Map.of("subject", "ice cream flavors", "format", format)); +Prompt prompt = new Prompt(promptTemplate.createMessage()); +Generation generation = this.chatClient.call(prompt).getResult(); + +List list = listOutputConverter.convert(generation.getOutput().getContent()); +---- + +== Supported AI Models + +The following AI Models have been tested to support List, Map and Bean structured outputs. + +[cols="2,5"] +|==== +| Model | Integration Tests / Samples +| xref:api/chat/openai-chat.adoc[OpenAI] | link:https://github.com/spring-projects/spring-ai/blob/main/models/spring-ai-openai/src/test/java/org/springframework/ai/openai/chat/OpenAiChatClientIT.java[OpenAiChatClientIT] +| xref:api/chat/anthropic-chat.adoc[Anthropic Claude 3] | link:https://github.com/spring-projects/spring-ai/blob/main/models/spring-ai-anthropic/src/test/java/org/springframework/ai/anthropic/AnthropicChatClientIT.java[AnthropicChatClientIT.java] +| xref:api/chat/azure-openai-chat.adoc[Azure OpenAI] | link:https://github.com/spring-projects/spring-ai/blob/main/models/spring-ai-azure-openai/src/test/java/org/springframework/ai/azure/openai/AzureOpenAiChatClientIT.java[AzureOpenAiChatClientIT.java] +| xref:api/chat/mistralai-chat.adoc[Mistral AI] | link:https://github.com/spring-projects/spring-ai/blob/main/models/spring-ai-mistral-ai/src/test/java/org/springframework/ai/mistralai/MistralAiChatClientIT.java[MistralAiChatClientIT.java] +| xref:api/chat/ollama-chat.adoc[Ollama] | link:https://github.com/spring-projects/spring-ai/blob/main/models/spring-ai-ollama/src/test/java/org/springframework/ai/ollama/OllamaChatClientIT.java[OllamaChatClientIT.java] +| xref:api/chat/vertexai-gemini-chat.adoc[Vertex AI Gemini] | link:https://github.com/spring-projects/spring-ai/blob/main/models/spring-ai-vertex-ai-gemini/src/test/java/org/springframework/ai/vertexai/gemini/VertexAiGeminiChatClientIT.java[VertexAiGeminiChatClientIT.java] +| xref:api/chat/bedrock/bedrock-anthropic.adoc[Bedrock Anthropic 2] | link:https://github.com/spring-projects/spring-ai/blob/main/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/anthropic/BedrockAnthropicChatClientIT.java[BedrockAnthropicChatClientIT.java] +| xref:api/chat/bedrock/bedrock-anthropic3.adoc[Bedrock Anthropic 3] | link:https://github.com/spring-projects/spring-ai/blob/main/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/anthropic3/BedrockAnthropic3ChatClientIT.java[BedrockAnthropic3ChatClientIT.java] +| xref:api/chat/bedrock/bedrock-cohere.adoc[Bedrock Cohere] | link:https://github.com/spring-projects/spring-ai/blob/main/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/cohere/BedrockCohereChatClientIT.java[BedrockCohereChatClientIT.java] +| xref:api/chat/bedrock/bedrock-llama.adoc[Bedrock Llama] | link:https://github.com/spring-projects/spring-ai/blob/main/models/spring-ai-bedrock/src/test/java/org/springframework/ai/bedrock/llama/BedrockLlamaChatClientIT.java[BedrockLlamaChatClientIT.java.java] +|==== + +== Build-in JSON mode + +Some AI Models provide dedicated configuration options to generate structured (usually JSON) output. + +* xref:api/chat/openai-chat.adoc[OpenAI] - provides a `spring.ai.openai.chat.options.responseFormat` options specifying the format that the model must output. Setting to `{ "type": "json_object" }` enables JSON mode, which guarantees the message the model generates is valid JSON. +* xref:api/chat/ollama-chat.adoc[Ollama] - provides a `spring.ai.ollama.chat.options.format` option to specify the format to return a response in. Currently the only accepted value is `json`. +* xref:api/chat/mistralai-chat.adoc[Mistral AI] - provides a `spring.ai.mistralai.chat.options.responseFormat` option to specify the format to return a response in. Setting to `{ "type": "json_object" }` enables JSON mode, which guarantees the message the model generates is valid JSON. + + + + + +