diff --git a/core/deployment/src/main/java/io/quarkiverse/langchain4j/deployment/ToolProcessor.java b/core/deployment/src/main/java/io/quarkiverse/langchain4j/deployment/ToolProcessor.java index 3421e4c3e..d50160c32 100644 --- a/core/deployment/src/main/java/io/quarkiverse/langchain4j/deployment/ToolProcessor.java +++ b/core/deployment/src/main/java/io/quarkiverse/langchain4j/deployment/ToolProcessor.java @@ -60,7 +60,6 @@ import io.quarkiverse.langchain4j.runtime.tool.JsonNumberSchemaObjectSubstitution; import io.quarkiverse.langchain4j.runtime.tool.JsonObjectSchemaObjectSubstitution; import io.quarkiverse.langchain4j.runtime.tool.JsonReferenceSchemaObjectSubstitution; -import io.quarkiverse.langchain4j.runtime.tool.JsonSchemaElementObjectSubstitution; import io.quarkiverse.langchain4j.runtime.tool.JsonStringSchemaObjectSubstitution; import io.quarkiverse.langchain4j.runtime.tool.ToolInvoker; import io.quarkiverse.langchain4j.runtime.tool.ToolMethodCreateInfo; @@ -358,8 +357,6 @@ public ToolsMetadataBuildItem filterOutRemovedTools( recorderContext.registerSubstitution(JsonReferenceSchema.class, JsonReferenceSchemaObjectSubstitution.Serialized.class, JsonReferenceSchemaObjectSubstitution.class); - recorderContext.registerSubstitution(JsonSchemaElement.class, JsonSchemaElementObjectSubstitution.Serialized.class, - JsonSchemaElementObjectSubstitution.class); recorderContext.registerSubstitution(JsonStringSchema.class, JsonStringSchemaObjectSubstitution.Serialized.class, JsonStringSchemaObjectSubstitution.class); Map> metadataWithoutRemovedBeans = beforeRemoval.getMetadata().entrySet() diff --git a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonArraySchemaObjectSubstitution.java b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonArraySchemaObjectSubstitution.java index 1a12644ae..b4e5a69f0 100644 --- a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonArraySchemaObjectSubstitution.java +++ b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonArraySchemaObjectSubstitution.java @@ -2,40 +2,27 @@ import dev.langchain4j.model.chat.request.json.JsonArraySchema; import dev.langchain4j.model.chat.request.json.JsonSchemaElement; +import io.quarkus.runtime.ObjectSubstitution; import io.quarkus.runtime.annotations.RecordableConstructor; -public final class JsonArraySchemaObjectSubstitution extends JsonSchemaElementObjectSubstitution { +public class JsonArraySchemaObjectSubstitution + implements ObjectSubstitution { @Override - public JsonArraySchemaObjectSubstitution.Serialized serialize(JsonSchemaElement obj) { - var a = (JsonArraySchema) obj; - return new Serialized(a.description(), a.items()); + public Serialized serialize(JsonArraySchema obj) { + return new Serialized(obj.description(), obj.items()); } @Override - public JsonArraySchema deserialize(JsonSchemaElementObjectSubstitution.Serialized obj) { - var a = (JsonArraySchemaObjectSubstitution.Serialized) obj; + public JsonArraySchema deserialize(Serialized obj) { return JsonArraySchema.builder() - .description(a.description) - .items(a.items) + .description(obj.description) + .items(obj.items) .build(); } - public static final class Serialized extends JsonSchemaElementObjectSubstitution.Serialized { - private final String description; - private final JsonSchemaElement items; - + public record Serialized(String description, JsonSchemaElement items) { @RecordableConstructor - public Serialized(String description, JsonSchemaElement items) { - this.description = description; - this.items = items; - } - - public String getDescription() { - return description; - } - - public JsonSchemaElement getItems() { - return items; + public Serialized { } } } diff --git a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonBooleanSchemaObjectSubstitution.java b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonBooleanSchemaObjectSubstitution.java index 4b50af96d..c69eb773f 100644 --- a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonBooleanSchemaObjectSubstitution.java +++ b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonBooleanSchemaObjectSubstitution.java @@ -1,34 +1,26 @@ package io.quarkiverse.langchain4j.runtime.tool; import dev.langchain4j.model.chat.request.json.JsonBooleanSchema; -import dev.langchain4j.model.chat.request.json.JsonSchemaElement; +import io.quarkus.runtime.ObjectSubstitution; import io.quarkus.runtime.annotations.RecordableConstructor; -public final class JsonBooleanSchemaObjectSubstitution extends JsonSchemaElementObjectSubstitution { +public class JsonBooleanSchemaObjectSubstitution + implements ObjectSubstitution { @Override - public JsonBooleanSchemaObjectSubstitution.Serialized serialize(JsonSchemaElement obj) { - var b = (JsonBooleanSchema) obj; - return new Serialized(b.description()); + public Serialized serialize(JsonBooleanSchema obj) { + return new Serialized(obj.description()); } @Override - public JsonBooleanSchema deserialize(JsonSchemaElementObjectSubstitution.Serialized obj) { - var b = (JsonBooleanSchemaObjectSubstitution.Serialized) obj; + public JsonBooleanSchema deserialize(Serialized obj) { return JsonBooleanSchema.builder() - .description(b.description) + .description(obj.description) .build(); } - public static final class Serialized extends JsonSchemaElementObjectSubstitution.Serialized { - private final String description; - + public record Serialized(String description) { @RecordableConstructor - public Serialized(String description) { - this.description = description; - } - - public String getDescription() { - return description; + public Serialized { } } } diff --git a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonEnumSchemaObjectSubstitution.java b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonEnumSchemaObjectSubstitution.java index ffdaac87e..cff0ef32d 100644 --- a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonEnumSchemaObjectSubstitution.java +++ b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonEnumSchemaObjectSubstitution.java @@ -3,41 +3,27 @@ import java.util.List; import dev.langchain4j.model.chat.request.json.JsonEnumSchema; -import dev.langchain4j.model.chat.request.json.JsonSchemaElement; +import io.quarkus.runtime.ObjectSubstitution; import io.quarkus.runtime.annotations.RecordableConstructor; -public final class JsonEnumSchemaObjectSubstitution extends JsonSchemaElementObjectSubstitution { +public class JsonEnumSchemaObjectSubstitution + implements ObjectSubstitution { @Override - public JsonEnumSchemaObjectSubstitution.Serialized serialize(JsonSchemaElement obj) { - var e = (JsonEnumSchema) obj; - return new Serialized(e.description(), e.enumValues()); + public Serialized serialize(JsonEnumSchema obj) { + return new Serialized(obj.description(), obj.enumValues()); } @Override - public JsonEnumSchema deserialize(JsonSchemaElementObjectSubstitution.Serialized obj) { - var e = (JsonEnumSchemaObjectSubstitution.Serialized) obj; + public JsonEnumSchema deserialize(Serialized obj) { return JsonEnumSchema.builder() - .description(e.description) - .enumValues(e.enumValues) + .description(obj.description) + .enumValues(obj.enumValues) .build(); } - public static final class Serialized extends JsonSchemaElementObjectSubstitution.Serialized { - private final String description; - private final List enumValues; - + public record Serialized(String description, List enumValues) { @RecordableConstructor - public Serialized(String description, List enumValues) { - this.description = description; - this.enumValues = enumValues; - } - - public String getDescription() { - return description; - } - - public List getEnumValues() { - return enumValues; + public Serialized { } } } diff --git a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonIntegerSchemaObjectSubstitution.java b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonIntegerSchemaObjectSubstitution.java index d48223f54..34a363397 100644 --- a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonIntegerSchemaObjectSubstitution.java +++ b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonIntegerSchemaObjectSubstitution.java @@ -1,34 +1,26 @@ package io.quarkiverse.langchain4j.runtime.tool; import dev.langchain4j.model.chat.request.json.JsonIntegerSchema; -import dev.langchain4j.model.chat.request.json.JsonSchemaElement; +import io.quarkus.runtime.ObjectSubstitution; import io.quarkus.runtime.annotations.RecordableConstructor; -public final class JsonIntegerSchemaObjectSubstitution extends JsonSchemaElementObjectSubstitution { +public final class JsonIntegerSchemaObjectSubstitution + implements ObjectSubstitution { @Override - public JsonIntegerSchemaObjectSubstitution.Serialized serialize(JsonSchemaElement obj) { - var i = (JsonIntegerSchema) obj; - return new Serialized(i.description()); + public Serialized serialize(JsonIntegerSchema obj) { + return new Serialized(obj.description()); } @Override - public JsonIntegerSchema deserialize(JsonSchemaElementObjectSubstitution.Serialized obj) { - var i = (JsonIntegerSchemaObjectSubstitution.Serialized) obj; + public JsonIntegerSchema deserialize(Serialized obj) { return JsonIntegerSchema.builder() - .description(i.description) + .description(obj.description) .build(); } - public static final class Serialized extends JsonSchemaElementObjectSubstitution.Serialized { - private final String description; - + public record Serialized(String description) { @RecordableConstructor - public Serialized(String description) { - this.description = description; - } - - public String getDescription() { - return description; + public Serialized { } } } diff --git a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonNumberSchemaObjectSubstitution.java b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonNumberSchemaObjectSubstitution.java index ca9f45816..3c7bf1295 100644 --- a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonNumberSchemaObjectSubstitution.java +++ b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonNumberSchemaObjectSubstitution.java @@ -1,34 +1,26 @@ package io.quarkiverse.langchain4j.runtime.tool; import dev.langchain4j.model.chat.request.json.JsonNumberSchema; -import dev.langchain4j.model.chat.request.json.JsonSchemaElement; +import io.quarkus.runtime.ObjectSubstitution; import io.quarkus.runtime.annotations.RecordableConstructor; -public final class JsonNumberSchemaObjectSubstitution extends JsonSchemaElementObjectSubstitution { +public class JsonNumberSchemaObjectSubstitution + implements ObjectSubstitution { @Override - public JsonNumberSchemaObjectSubstitution.Serialized serialize(JsonSchemaElement obj) { - var n = (JsonNumberSchema) obj; - return new Serialized(n.description()); + public Serialized serialize(JsonNumberSchema obj) { + return new Serialized(obj.description()); } @Override - public JsonNumberSchema deserialize(JsonSchemaElementObjectSubstitution.Serialized obj) { - var n = (JsonNumberSchemaObjectSubstitution.Serialized) obj; + public JsonNumberSchema deserialize(Serialized obj) { return JsonNumberSchema.builder() - .description(n.description) + .description(obj.description) .build(); } - public static final class Serialized extends JsonSchemaElementObjectSubstitution.Serialized { - private final String description; - + public record Serialized(String description) { @RecordableConstructor - public Serialized(String description) { - this.description = description; - } - - public String getDescription() { - return description; + public Serialized { } } } diff --git a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonObjectSchemaObjectSubstitution.java b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonObjectSchemaObjectSubstitution.java index 810686be5..43057f5fe 100644 --- a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonObjectSchemaObjectSubstitution.java +++ b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonObjectSchemaObjectSubstitution.java @@ -5,62 +5,32 @@ import dev.langchain4j.model.chat.request.json.JsonObjectSchema; import dev.langchain4j.model.chat.request.json.JsonSchemaElement; +import io.quarkus.runtime.ObjectSubstitution; import io.quarkus.runtime.annotations.RecordableConstructor; -public final class JsonObjectSchemaObjectSubstitution extends JsonSchemaElementObjectSubstitution { +public class JsonObjectSchemaObjectSubstitution + implements ObjectSubstitution { @Override - public JsonObjectSchemaObjectSubstitution.Serialized serialize(JsonSchemaElement obj) { - var o = (JsonObjectSchema) obj; - return new Serialized(o.description(), o.properties(), o.required(), o.additionalProperties(), o.definitions()); + public Serialized serialize(JsonObjectSchema obj) { + return new Serialized(obj.description(), obj.properties(), obj.required(), obj.additionalProperties(), + obj.definitions()); } @Override - public JsonObjectSchema deserialize(JsonSchemaElementObjectSubstitution.Serialized obj) { - var o = (JsonObjectSchemaObjectSubstitution.Serialized) obj; + public JsonObjectSchema deserialize(Serialized obj) { return JsonObjectSchema.builder() - .description(o.description) - .properties(o.properties) - .required(o.required) - .additionalProperties(o.additionalProperties) - .definitions(o.definitions) + .description(obj.description) + .properties(obj.properties) + .required(obj.required) + .additionalProperties(obj.additionalProperties) + .definitions(obj.definitions) .build(); } - public static final class Serialized extends JsonSchemaElementObjectSubstitution.Serialized { - private final String description; - private final Map properties; - private final List required; - private final Boolean additionalProperties; - private final Map definitions; - + public record Serialized(String description, Map properties, List required, + Boolean additionalProperties, Map definitions) { @RecordableConstructor - public Serialized(String description, Map properties, List required, - Boolean additionalProperties, Map definitions) { - this.description = description; - this.properties = properties; - this.required = required; - this.additionalProperties = additionalProperties; - this.definitions = definitions; - } - - public String getDescription() { - return description; - } - - public Map getProperties() { - return properties; - } - - public List getRequired() { - return required; - } - - public Boolean getAdditionalProperties() { - return additionalProperties; - } - - public Map getDefinitions() { - return definitions; + public Serialized { } } } diff --git a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonReferenceSchemaObjectSubstitution.java b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonReferenceSchemaObjectSubstitution.java index 2182214c9..8b47f85eb 100644 --- a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonReferenceSchemaObjectSubstitution.java +++ b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonReferenceSchemaObjectSubstitution.java @@ -1,32 +1,24 @@ package io.quarkiverse.langchain4j.runtime.tool; import dev.langchain4j.model.chat.request.json.JsonReferenceSchema; -import dev.langchain4j.model.chat.request.json.JsonSchemaElement; +import io.quarkus.runtime.ObjectSubstitution; import io.quarkus.runtime.annotations.RecordableConstructor; -public final class JsonReferenceSchemaObjectSubstitution extends JsonSchemaElementObjectSubstitution { - public JsonReferenceSchemaObjectSubstitution.Serialized serialize(JsonSchemaElement obj) { - var r = (JsonReferenceSchema) obj; - return new Serialized(r.reference()); +public class JsonReferenceSchemaObjectSubstitution + implements ObjectSubstitution { + public Serialized serialize(JsonReferenceSchema obj) { + return new Serialized(obj.reference()); } - public JsonReferenceSchema deserialize(JsonSchemaElementObjectSubstitution.Serialized obj) { - var r = (JsonReferenceSchemaObjectSubstitution.Serialized) obj; + public JsonReferenceSchema deserialize(Serialized obj) { return JsonReferenceSchema.builder() - .reference(r.reference) + .reference(obj.reference) .build(); } - public static final class Serialized extends JsonSchemaElementObjectSubstitution.Serialized { - private final String reference; - + public record Serialized(String reference) { @RecordableConstructor - public Serialized(String reference) { - this.reference = reference; - } - - public String getReference() { - return reference; + public Serialized { } } } diff --git a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonSchemaElementObjectSubstitution.java b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonSchemaElementObjectSubstitution.java deleted file mode 100644 index 82c9d3d2a..000000000 --- a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonSchemaElementObjectSubstitution.java +++ /dev/null @@ -1,86 +0,0 @@ -package io.quarkiverse.langchain4j.runtime.tool; - -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; - -import dev.langchain4j.model.chat.request.json.JsonArraySchema; -import dev.langchain4j.model.chat.request.json.JsonBooleanSchema; -import dev.langchain4j.model.chat.request.json.JsonEnumSchema; -import dev.langchain4j.model.chat.request.json.JsonIntegerSchema; -import dev.langchain4j.model.chat.request.json.JsonNumberSchema; -import dev.langchain4j.model.chat.request.json.JsonObjectSchema; -import dev.langchain4j.model.chat.request.json.JsonReferenceSchema; -import dev.langchain4j.model.chat.request.json.JsonSchemaElement; -import dev.langchain4j.model.chat.request.json.JsonStringSchema; -import io.quarkus.runtime.ObjectSubstitution; - -public sealed class JsonSchemaElementObjectSubstitution - implements ObjectSubstitution - permits JsonArraySchemaObjectSubstitution, - JsonBooleanSchemaObjectSubstitution, - JsonEnumSchemaObjectSubstitution, - JsonIntegerSchemaObjectSubstitution, - JsonNumberSchemaObjectSubstitution, - JsonObjectSchemaObjectSubstitution, - JsonReferenceSchemaObjectSubstitution, - JsonStringSchemaObjectSubstitution { - - // Using ConcurrentHashMap in case multiple threads are using this class at the same time - // Not sure if this will ever happen - private final Map, JsonSchemaElementObjectSubstitution> substitutions = new ConcurrentHashMap<>(8); - - @Override - public JsonSchemaElementObjectSubstitution.Serialized serialize(JsonSchemaElement obj) { - return getSubstitution(obj.getClass()).serialize(obj); - } - - @Override - public JsonSchemaElement deserialize(JsonSchemaElementObjectSubstitution.Serialized obj) { - return getSubstitution(obj.getClass()).deserialize(obj); - } - - private JsonSchemaElementObjectSubstitution getSubstitution(Class clazz) { - return this.substitutions.computeIfAbsent(clazz, c -> { - if (JsonArraySchema.class.isAssignableFrom(c) - || JsonArraySchemaObjectSubstitution.Serialized.class.isAssignableFrom(c)) { - return new JsonArraySchemaObjectSubstitution(); - } else if (JsonBooleanSchema.class.isAssignableFrom(c) - || JsonBooleanSchemaObjectSubstitution.Serialized.class.isAssignableFrom(c)) { - return new JsonBooleanSchemaObjectSubstitution(); - } else if (JsonEnumSchema.class.isAssignableFrom(c) - || JsonEnumSchemaObjectSubstitution.Serialized.class.isAssignableFrom(c)) { - return new JsonEnumSchemaObjectSubstitution(); - } else if (JsonIntegerSchema.class.isAssignableFrom(c) - || JsonIntegerSchemaObjectSubstitution.Serialized.class.isAssignableFrom(c)) { - return new JsonIntegerSchemaObjectSubstitution(); - } else if (JsonNumberSchema.class.isAssignableFrom(c) - || JsonNumberSchemaObjectSubstitution.Serialized.class.isAssignableFrom(c)) { - return new JsonNumberSchemaObjectSubstitution(); - } else if (JsonObjectSchema.class.isAssignableFrom(c) - || JsonObjectSchemaObjectSubstitution.Serialized.class.isAssignableFrom(c)) { - return new JsonObjectSchemaObjectSubstitution(); - } else if (JsonReferenceSchema.class.isAssignableFrom(c) - || JsonReferenceSchemaObjectSubstitution.Serialized.class.isAssignableFrom(c)) { - return new JsonReferenceSchemaObjectSubstitution(); - } else if (JsonStringSchema.class.isAssignableFrom(c) - || JsonStringSchemaObjectSubstitution.Serialized.class.isAssignableFrom(c)) { - return new JsonStringSchemaObjectSubstitution(); - } - - // Handle unsupported types - throw new IllegalArgumentException("Unsupported type: %s".formatted(c.getName())); - }); - } - - public static sealed class Serialized - permits JsonArraySchemaObjectSubstitution.Serialized, - JsonBooleanSchemaObjectSubstitution.Serialized, - JsonEnumSchemaObjectSubstitution.Serialized, - JsonIntegerSchemaObjectSubstitution.Serialized, - JsonNumberSchemaObjectSubstitution.Serialized, - JsonObjectSchemaObjectSubstitution.Serialized, - JsonReferenceSchemaObjectSubstitution.Serialized, - JsonStringSchemaObjectSubstitution.Serialized { - - } -} diff --git a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonStringSchemaObjectSubstitution.java b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonStringSchemaObjectSubstitution.java index f67140600..bbaa7a7df 100644 --- a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonStringSchemaObjectSubstitution.java +++ b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/JsonStringSchemaObjectSubstitution.java @@ -1,34 +1,26 @@ package io.quarkiverse.langchain4j.runtime.tool; -import dev.langchain4j.model.chat.request.json.JsonSchemaElement; import dev.langchain4j.model.chat.request.json.JsonStringSchema; +import io.quarkus.runtime.ObjectSubstitution; import io.quarkus.runtime.annotations.RecordableConstructor; -public final class JsonStringSchemaObjectSubstitution extends JsonSchemaElementObjectSubstitution { +public final class JsonStringSchemaObjectSubstitution + implements ObjectSubstitution { @Override - public JsonStringSchemaObjectSubstitution.Serialized serialize(JsonSchemaElement obj) { - var s = (JsonStringSchema) obj; - return new Serialized(s.description()); + public Serialized serialize(JsonStringSchema obj) { + return new Serialized(obj.description()); } @Override - public JsonStringSchema deserialize(JsonSchemaElementObjectSubstitution.Serialized obj) { - var s = (JsonStringSchemaObjectSubstitution.Serialized) obj; + public JsonStringSchema deserialize(Serialized obj) { return JsonStringSchema.builder() - .description(s.description) + .description(obj.description) .build(); } - public static final class Serialized extends JsonSchemaElementObjectSubstitution.Serialized { - private final String description; - + public record Serialized(String description) { @RecordableConstructor - public Serialized(String description) { - this.description = description; - } - - public String getDescription() { - return description; + public Serialized { } } } diff --git a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/ToolParametersObjectSubstitution.java b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/ToolParametersObjectSubstitution.java index d46a8be89..8c12cd3dd 100644 --- a/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/ToolParametersObjectSubstitution.java +++ b/core/runtime/src/main/java/io/quarkiverse/langchain4j/runtime/tool/ToolParametersObjectSubstitution.java @@ -9,7 +9,14 @@ /** * @deprecated - * @see JsonSchemaElementObjectSubstitution + * @see JsonArraySchemaObjectSubstitution + * @see JsonBooleanSchemaObjectSubstitution + * @see JsonEnumSchemaObjectSubstitution + * @see JsonIntegerSchemaObjectSubstitution + * @see JsonNumberSchemaObjectSubstitution + * @see JsonObjectSchemaObjectSubstitution + * @see JsonReferenceSchemaObjectSubstitution + * @see JsonStringSchemaObjectSubstitution */ @Deprecated(forRemoval = true) public class ToolParametersObjectSubstitution