I got a AbstractMethodError when I call DashScope Chat Model for getting keyword of a document
the code like below
` public static void main(String[] args) {
DashScopeApi dashScopeApi = new DashScopeApi("7777777777");
DashScopeChatOptions options = DashScopeChatOptions.builder()
.withModel("qwen2-vl-7b-instruct")
.withTemperature(0.7f)
.build();
DashScopeChatModel chatModel = new DashScopeChatModel(dashScopeApi,options);// initialize your chat model
KeywordMetadataEnricher enricher = new KeywordMetadataEnricher(chatModel, 5);
Document doc = new Document("This is a document about artificial intelligence and its applications in modern technology.");
List<Document> enrichedDocs = enricher.apply(List.of(doc));
Document enrichedDoc = enrichedDocs.get(0);
String keywords = (String) enrichedDoc.getMetadata().get("excerpt_keywords");
System.out.println("Extracted keywords: " + keywords);
}`
the exception as:
/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home/bin/java -javaagent:/Applications/IntelliJ IDEA er
Exception in thread "main" java.lang.AbstractMethodError: Method com/alibaba/cloud/ai/dashscope/chat/DashScopeChatOptions.getToolContext()Ljava/util/Map; is abstract
at com.alibaba.cloud.ai.dashscope.chat.DashScopeChatOptions.getToolContext(DashScopeChatOptions.java)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:688)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:770)
at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:183)
I also encountered the same problem and later discovered that in spring-ai-alibaba-core-1.0-02.1. jar, There is no getToolContext method in the com.alibaba.cloud.ai.dashscope.chat.DashScopeChatOptionsclass.
I got a AbstractMethodError when I call DashScope Chat Model for getting keyword of a document
the code like below
` public static void main(String[] args) {
the exception as:
/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home/bin/java -javaagent:/Applications/IntelliJ IDEA er Exception in thread "main" java.lang.AbstractMethodError: Method com/alibaba/cloud/ai/dashscope/chat/DashScopeChatOptions.getToolContext()Ljava/util/Map; is abstract at com.alibaba.cloud.ai.dashscope.chat.DashScopeChatOptions.getToolContext(DashScopeChatOptions.java) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:688) at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:770) at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:183)
my pom: