diff options
author | Jon Bratseth <bratseth@gmail.com> | 2023-04-26 14:38:13 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-26 14:38:13 +0200 |
commit | 072acd73475aae1a882d908d57d28eec31e69c3e (patch) | |
tree | 33ec28c28ff9e2d0badf68df94fff9ec05df5c04 | |
parent | 5b290735b485e20216fac0733c0d44274eec3937 (diff) | |
parent | 901f992bf024fe1b994385ca76b7b59fe2d8a78f (diff) |
Merge pull request #26851 from vespa-engine/bratseth/openai-component
Put the openai client in a separate component
-rw-r--r-- | cloud-tenant-base-dependencies-enforcer/pom.xml | 12 | ||||
-rw-r--r-- | jdisc_core/src/test/java/com/yahoo/jdisc/core/ExportPackagesIT.java | 5 | ||||
-rw-r--r-- | jdisc_core/src/test/resources/exportPackages.properties | 4 | ||||
-rw-r--r-- | model-integration/abi-spec.json | 161 | ||||
-rw-r--r-- | model-integration/pom.xml | 17 | ||||
-rw-r--r-- | model-integration/src/main/java/ai/vespa/llm/generation/Generator.java (renamed from model-integration/src/main/java/ai/vespa/llm/Generator.java) | 2 | ||||
-rw-r--r-- | model-integration/src/main/java/ai/vespa/llm/generation/GeneratorOptions.java (renamed from model-integration/src/main/java/ai/vespa/llm/GeneratorOptions.java) | 2 | ||||
-rw-r--r-- | model-integration/src/main/java/ai/vespa/llm/generation/package-info.java (renamed from model-integration/src/main/java/ai/vespa/llm/client/package-info.java) | 4 | ||||
-rw-r--r-- | model-integration/src/test/java/ai/vespa/llm/generation/GeneratorTest.java (renamed from model-integration/src/test/java/ai/vespa/llm/GeneratorTest.java) | 4 | ||||
-rw-r--r-- | openai-client/abi-spec.json | 29 | ||||
-rw-r--r-- | openai-client/pom.xml | 67 | ||||
-rw-r--r-- | openai-client/src/main/java/ai/vespa/llm/client/openai/OpenAiClient.java (renamed from model-integration/src/main/java/ai/vespa/llm/client/OpenAiClient.java) | 6 | ||||
-rw-r--r-- | openai-client/src/main/java/ai/vespa/llm/client/openai/package-info.java | 11 | ||||
-rw-r--r-- | parent/pom.xml | 12 | ||||
-rw-r--r-- | pom.xml | 3 | ||||
-rw-r--r-- | vespajlib/abi-spec.json | 108 | ||||
-rw-r--r-- | vespajlib/src/main/java/ai/vespa/llm/LanguageModel.java (renamed from model-integration/src/main/java/ai/vespa/llm/LanguageModel.java) | 2 | ||||
-rw-r--r-- | vespajlib/src/main/java/ai/vespa/llm/completion/Completion.java (renamed from model-integration/src/main/java/ai/vespa/llm/Completion.java) | 2 | ||||
-rw-r--r-- | vespajlib/src/main/java/ai/vespa/llm/completion/Prompt.java (renamed from model-integration/src/main/java/ai/vespa/llm/Prompt.java) | 2 | ||||
-rw-r--r-- | vespajlib/src/main/java/ai/vespa/llm/completion/StringPrompt.java (renamed from model-integration/src/main/java/ai/vespa/llm/StringPrompt.java) | 2 | ||||
-rw-r--r-- | vespajlib/src/main/java/ai/vespa/llm/completion/package-info.java | 11 | ||||
-rw-r--r-- | vespajlib/src/main/java/ai/vespa/llm/package-info.java (renamed from model-integration/src/main/java/ai/vespa/llm/package-info.java) | 0 | ||||
-rw-r--r-- | vespajlib/src/main/java/ai/vespa/llm/test/MockLanguageModel.java (renamed from model-integration/src/main/java/ai/vespa/llm/test/MockLanguageModel.java) | 4 | ||||
-rw-r--r-- | vespajlib/src/main/java/ai/vespa/llm/test/package-info.java (renamed from model-integration/src/main/java/ai/vespa/llm/test/package-info.java) | 0 | ||||
-rw-r--r-- | vespajlib/src/test/java/ai/vespa/llm/completion/CompletionTest.java (renamed from model-integration/src/test/java/ai/vespa/llm/CompletionTest.java) | 5 |
25 files changed, 268 insertions, 207 deletions
diff --git a/cloud-tenant-base-dependencies-enforcer/pom.xml b/cloud-tenant-base-dependencies-enforcer/pom.xml index 7971f4eebcf..1f179013b32 100644 --- a/cloud-tenant-base-dependencies-enforcer/pom.xml +++ b/cloud-tenant-base-dependencies-enforcer/pom.xml @@ -235,18 +235,6 @@ <include>org.osgi:org.osgi.compendium:4.1.0:test</include> <include>org.osgi:org.osgi.core:4.1.0:test</include> <include>xerces:xercesImpl:2.12.2:test</include> - - <include>com.squareup.okhttp3:okhttp:3.14.9:test</include> - <include>com.squareup.okio:okio:1.17.2:test</include> - <include>com.squareup.retrofit2:adapter-rxjava2:2.9.0:test</include> - <include>com.squareup.retrofit2:converter-jackson:2.9.0:test</include> - <include>com.squareup.retrofit2:retrofit:2.9.0:test</include> - <include>com.theokanning.openai-gpt3-java:api:${openai-gpt3.version}:test</include> - <include>com.theokanning.openai-gpt3-java:client:${openai-gpt3.version}:test</include> - <include>com.theokanning.openai-gpt3-java:service:${openai-gpt3.version}:test</include> - <include>io.reactivex.rxjava2:rxjava:2.0.0:test</include> - <include>org.reactivestreams:reactive-streams:1.0.3:test</include> - </allowed> </enforceDependencies> </rules> diff --git a/jdisc_core/src/test/java/com/yahoo/jdisc/core/ExportPackagesIT.java b/jdisc_core/src/test/java/com/yahoo/jdisc/core/ExportPackagesIT.java index 7ec3406be1f..a2aade05059 100644 --- a/jdisc_core/src/test/java/com/yahoo/jdisc/core/ExportPackagesIT.java +++ b/jdisc_core/src/test/java/com/yahoo/jdisc/core/ExportPackagesIT.java @@ -78,7 +78,10 @@ public class ExportPackagesIT { } private static Set<String> removeNewPackageOnJava20(Set<String> packages) { - return packages.stream().filter(p -> ! p.contains("java.lang.foreign")).collect(Collectors.toSet()); + return packages.stream() + .filter(p -> ! p.contains("java.lang.foreign")) + .filter(p -> ! p.contains("com.sun.jna")) + .collect(Collectors.toSet()); } private static StringBuilder getDiff(Set<String> actual, Set<String> expected) { diff --git a/jdisc_core/src/test/resources/exportPackages.properties b/jdisc_core/src/test/resources/exportPackages.properties index b49f91842e3..8af15fe591d 100644 --- a/jdisc_core/src/test/resources/exportPackages.properties +++ b/jdisc_core/src/test/resources/exportPackages.properties @@ -1,3 +1,3 @@ #generated by com.yahoo.jdisc.core.ExportPackages -#Wed Jul 20 02:55:26 CEST 2022 -exportPackages=org.osgi.framework; version\="1.10.0", org.osgi.framework.connect; version\="1.0.0", org.osgi.framework.dto; uses\:\="org.osgi.dto"; version\="1.8.0", org.osgi.framework.hooks.bundle; uses\:\="org.osgi.framework"; version\="1.1.0", org.osgi.framework.hooks.resolver; uses\:\="org.osgi.framework.wiring"; version\="1.0.0", org.osgi.framework.hooks.service; uses\:\="org.osgi.framework"; version\="1.1.0", org.osgi.framework.hooks.weaving; uses\:\="org.osgi.framework.wiring"; version\="1.1.0", org.osgi.framework.launch; uses\:\="org.osgi.framework"; version\="1.2.0", org.osgi.framework.namespace; uses\:\="org.osgi.resource"; version\="1.2.0", org.osgi.framework.startlevel; uses\:\="org.osgi.framework"; version\="1.0.0", org.osgi.framework.startlevel.dto; uses\:\="org.osgi.dto"; version\="1.0.0", org.osgi.framework.wiring; uses\:\="org.osgi.framework,org.osgi.resource"; version\="1.2.0", org.osgi.framework.wiring.dto; uses\:\="org.osgi.dto,org.osgi.resource.dto"; version\="1.3.0", org.osgi.resource; version\="1.0.1", org.osgi.resource.dto; uses\:\="org.osgi.dto"; version\="1.0.1", org.osgi.service.packageadmin; uses\:\="org.osgi.framework"; version\="1.2.1", org.osgi.service.startlevel; uses\:\="org.osgi.framework"; version\="1.1.1", org.osgi.service.url; version\="1.0.1", org.osgi.service.resolver; uses\:\="org.osgi.resource"; version\="1.1.1", org.osgi.util.tracker; uses\:\="org.osgi.framework"; version\="1.5.3", org.osgi.dto; version\="1.1.1", org.osgi.service.condition; version\="1.0.0", javax.security.auth.callback; version\="0.0.0.JavaSE_017", javax.security.auth.login; version\="0.0.0.JavaSE_017", javax.net.ssl; version\="0.0.0.JavaSE_017", java.lang.constant; version\="0.0.0.JavaSE_017", java.security.interfaces; version\="0.0.0.JavaSE_017", java.text.spi; version\="0.0.0.JavaSE_017", java.nio.channels.spi; version\="0.0.0.JavaSE_017", java.math; version\="0.0.0.JavaSE_017", java.nio.file; version\="0.0.0.JavaSE_017", java.util.concurrent.atomic; version\="0.0.0.JavaSE_017", java.security.cert; version\="0.0.0.JavaSE_017", java.security.spec; version\="0.0.0.JavaSE_017", java.nio.channels; version\="0.0.0.JavaSE_017", java.time.chrono; version\="0.0.0.JavaSE_017", javax.crypto; version\="0.0.0.JavaSE_017", java.time.zone; version\="0.0.0.JavaSE_017", java.nio.charset; version\="0.0.0.JavaSE_017", java.io; version\="0.0.0.JavaSE_017", java.util.spi; version\="0.0.0.JavaSE_017", java.net; version\="0.0.0.JavaSE_017", javax.security.cert; version\="0.0.0.JavaSE_017", java.lang.annotation; version\="0.0.0.JavaSE_017", javax.security.auth.spi; version\="0.0.0.JavaSE_017", java.util.concurrent; version\="0.0.0.JavaSE_017", java.nio.charset.spi; version\="0.0.0.JavaSE_017", javax.crypto.interfaces; version\="0.0.0.JavaSE_017", java.util; version\="0.0.0.JavaSE_017", java.security; version\="0.0.0.JavaSE_017", java.nio.file.spi; version\="0.0.0.JavaSE_017", java.nio; version\="0.0.0.JavaSE_017", java.util.jar; version\="0.0.0.JavaSE_017", javax.security.auth; version\="0.0.0.JavaSE_017", java.lang.ref; version\="0.0.0.JavaSE_017", java.util.regex; version\="0.0.0.JavaSE_017", java.net.spi; version\="0.0.0.JavaSE_017", java.lang.module; version\="0.0.0.JavaSE_017", java.lang.invoke; version\="0.0.0.JavaSE_017", java.time.format; version\="0.0.0.JavaSE_017", java.util.concurrent.locks; version\="0.0.0.JavaSE_017", java.time.temporal; version\="0.0.0.JavaSE_017", java.util.zip; version\="0.0.0.JavaSE_017", java.nio.file.attribute; version\="0.0.0.JavaSE_017", java.util.random; version\="0.0.0.JavaSE_017", java.text; version\="0.0.0.JavaSE_017", javax.crypto.spec; version\="0.0.0.JavaSE_017", java.util.stream; version\="0.0.0.JavaSE_017", java.time; version\="0.0.0.JavaSE_017", java.lang; version\="0.0.0.JavaSE_017", java.lang.runtime; version\="0.0.0.JavaSE_017", java.util.function; version\="0.0.0.JavaSE_017", javax.net; version\="0.0.0.JavaSE_017", javax.security.auth.x500; version\="0.0.0.JavaSE_017", java.lang.reflect; version\="0.0.0.JavaSE_017", javax.lang.model; version\="0.0.0.JavaSE_017", javax.annotation.processing; version\="0.0.0.JavaSE_017", javax.lang.model.element; version\="0.0.0.JavaSE_017", javax.tools; version\="0.0.0.JavaSE_017", javax.lang.model.type; version\="0.0.0.JavaSE_017", javax.lang.model.util; version\="0.0.0.JavaSE_017", java.awt.datatransfer; version\="0.0.0.JavaSE_017", java.awt.desktop; version\="0.0.0.JavaSE_017", javax.swing.plaf.synth; version\="0.0.0.JavaSE_017", java.beans; version\="0.0.0.JavaSE_017", javax.swing.text.html.parser; version\="0.0.0.JavaSE_017", javax.swing.text.rtf; version\="0.0.0.JavaSE_017", java.awt.font; version\="0.0.0.JavaSE_017", javax.imageio; version\="0.0.0.JavaSE_017", java.awt.im.spi; version\="0.0.0.JavaSE_017", java.applet; version\="0.0.0.JavaSE_017", javax.sound.midi; version\="0.0.0.JavaSE_017", java.awt.dnd; version\="0.0.0.JavaSE_017", javax.swing.text; version\="0.0.0.JavaSE_017", javax.swing.plaf.basic; version\="0.0.0.JavaSE_017", javax.swing.undo; version\="0.0.0.JavaSE_017", javax.swing.plaf; version\="0.0.0.JavaSE_017", javax.swing.filechooser; version\="0.0.0.JavaSE_017", javax.imageio.event; version\="0.0.0.JavaSE_017", javax.sound.sampled; version\="0.0.0.JavaSE_017", javax.print.attribute; version\="0.0.0.JavaSE_017", javax.print; version\="0.0.0.JavaSE_017", javax.swing.plaf.nimbus; version\="0.0.0.JavaSE_017", javax.accessibility; version\="0.0.0.JavaSE_017", java.awt.event; version\="0.0.0.JavaSE_017", javax.swing.text.html; version\="0.0.0.JavaSE_017", javax.imageio.spi; version\="0.0.0.JavaSE_017", javax.swing.border; version\="0.0.0.JavaSE_017", javax.sound.sampled.spi; version\="0.0.0.JavaSE_017", javax.imageio.plugins.bmp; version\="0.0.0.JavaSE_017", java.awt.color; version\="0.0.0.JavaSE_017", java.awt.geom; version\="0.0.0.JavaSE_017", javax.imageio.plugins.jpeg; version\="0.0.0.JavaSE_017", javax.swing.tree; version\="0.0.0.JavaSE_017", javax.imageio.plugins.tiff; version\="0.0.0.JavaSE_017", java.awt.print; version\="0.0.0.JavaSE_017", java.awt.image; version\="0.0.0.JavaSE_017", javax.imageio.metadata; version\="0.0.0.JavaSE_017", javax.swing.table; version\="0.0.0.JavaSE_017", javax.sound.midi.spi; version\="0.0.0.JavaSE_017", javax.print.attribute.standard; version\="0.0.0.JavaSE_017", javax.swing.colorchooser; version\="0.0.0.JavaSE_017", javax.swing; version\="0.0.0.JavaSE_017", java.awt.image.renderable; version\="0.0.0.JavaSE_017", javax.swing.plaf.multi; version\="0.0.0.JavaSE_017", java.awt.im; version\="0.0.0.JavaSE_017", javax.print.event; version\="0.0.0.JavaSE_017", javax.swing.plaf.metal; version\="0.0.0.JavaSE_017", java.beans.beancontext; version\="0.0.0.JavaSE_017", java.awt; version\="0.0.0.JavaSE_017", javax.imageio.stream; version\="0.0.0.JavaSE_017", javax.swing.event; version\="0.0.0.JavaSE_017", java.lang.instrument; version\="0.0.0.JavaSE_017", java.util.logging; version\="0.0.0.JavaSE_017", javax.management.timer; version\="0.0.0.JavaSE_017", javax.management; version\="0.0.0.JavaSE_017", javax.management.relation; version\="0.0.0.JavaSE_017", javax.management.loading; version\="0.0.0.JavaSE_017", javax.management.openmbean; version\="0.0.0.JavaSE_017", java.lang.management; version\="0.0.0.JavaSE_017", javax.management.remote; version\="0.0.0.JavaSE_017", javax.management.monitor; version\="0.0.0.JavaSE_017", javax.management.modelmbean; version\="0.0.0.JavaSE_017", javax.management.remote.rmi; version\="0.0.0.JavaSE_017", javax.naming.event; version\="0.0.0.JavaSE_017", javax.naming.ldap.spi; version\="0.0.0.JavaSE_017", javax.naming; version\="0.0.0.JavaSE_017", javax.naming.spi; version\="0.0.0.JavaSE_017", javax.naming.ldap; version\="0.0.0.JavaSE_017", javax.naming.directory; version\="0.0.0.JavaSE_017", java.net.http; version\="0.0.0.JavaSE_017", java.util.prefs; version\="0.0.0.JavaSE_017", java.rmi.registry; version\="0.0.0.JavaSE_017", javax.rmi.ssl; version\="0.0.0.JavaSE_017", java.rmi.dgc; version\="0.0.0.JavaSE_017", java.rmi; version\="0.0.0.JavaSE_017", java.rmi.server; version\="0.0.0.JavaSE_017", javax.script; version\="0.0.0.JavaSE_017", org.ietf.jgss; version\="0.0.0.JavaSE_017", javax.security.auth.kerberos; version\="0.0.0.JavaSE_017", javax.security.sasl; version\="0.0.0.JavaSE_017", javax.smartcardio; version\="0.0.0.JavaSE_017", java.sql; version\="0.0.0.JavaSE_017", javax.sql; version\="0.0.0.JavaSE_017", javax.sql.rowset.spi; version\="0.0.0.JavaSE_017", javax.sql.rowset.serial; version\="0.0.0.JavaSE_017", javax.sql.rowset; version\="0.0.0.JavaSE_017", javax.transaction.xa; version\="0.0.0.JavaSE_017", javax.xml; version\="0.0.0.JavaSE_017", javax.xml.transform.sax; version\="0.0.0.JavaSE_017", javax.xml.datatype; version\="0.0.0.JavaSE_017", javax.xml.catalog; version\="0.0.0.JavaSE_017", org.w3c.dom.traversal; version\="0.0.0.JavaSE_017", javax.xml.stream.events; version\="0.0.0.JavaSE_017", javax.xml.stream; version\="0.0.0.JavaSE_017", org.xml.sax; version\="0.0.0.JavaSE_017", javax.xml.transform; version\="0.0.0.JavaSE_017", javax.xml.xpath; version\="0.0.0.JavaSE_017", org.w3c.dom.events; version\="0.0.0.JavaSE_017", org.w3c.dom.ranges; version\="0.0.0.JavaSE_017", org.w3c.dom.ls; version\="0.0.0.JavaSE_017", javax.xml.stream.util; version\="0.0.0.JavaSE_017", javax.xml.namespace; version\="0.0.0.JavaSE_017", javax.xml.transform.stax; version\="0.0.0.JavaSE_017", org.xml.sax.helpers; version\="0.0.0.JavaSE_017", org.w3c.dom.views; version\="0.0.0.JavaSE_017", org.w3c.dom.bootstrap; version\="0.0.0.JavaSE_017", org.w3c.dom; version\="0.0.0.JavaSE_017", javax.xml.transform.stream; version\="0.0.0.JavaSE_017", javax.xml.transform.dom; version\="0.0.0.JavaSE_017", javax.xml.validation; version\="0.0.0.JavaSE_017", javax.xml.parsers; version\="0.0.0.JavaSE_017", org.xml.sax.ext; version\="0.0.0.JavaSE_017", javax.xml.crypto.dsig.spec; version\="0.0.0.JavaSE_017", javax.xml.crypto.dsig.keyinfo; version\="0.0.0.JavaSE_017", javax.xml.crypto.dsig.dom; version\="0.0.0.JavaSE_017", javax.xml.crypto.dom; version\="0.0.0.JavaSE_017", javax.xml.crypto; version\="0.0.0.JavaSE_017", javax.xml.crypto.dsig; version\="0.0.0.JavaSE_017", com.sun.java.accessibility.util; version\="0.0.0.JavaSE_017", com.sun.tools.attach.spi; version\="0.0.0.JavaSE_017", com.sun.tools.attach; version\="0.0.0.JavaSE_017", com.sun.source.doctree; version\="0.0.0.JavaSE_017", com.sun.source.tree; version\="0.0.0.JavaSE_017", com.sun.source.util; version\="0.0.0.JavaSE_017", com.sun.tools.javac; version\="0.0.0.JavaSE_017", jdk.dynalink.beans; version\="0.0.0.JavaSE_017", jdk.dynalink.linker.support; version\="0.0.0.JavaSE_017", jdk.dynalink.support; version\="0.0.0.JavaSE_017", jdk.dynalink; version\="0.0.0.JavaSE_017", jdk.dynalink.linker; version\="0.0.0.JavaSE_017", com.sun.net.httpserver; version\="0.0.0.JavaSE_017", com.sun.net.httpserver.spi; version\="0.0.0.JavaSE_017", com.sun.jarsigner; version\="0.0.0.JavaSE_017", jdk.security.jarsigner; version\="0.0.0.JavaSE_017", jdk.javadoc.doclet; version\="0.0.0.JavaSE_017", com.sun.tools.jconsole; version\="0.0.0.JavaSE_017", com.sun.jdi.connect; version\="0.0.0.JavaSE_017", com.sun.jdi.event; version\="0.0.0.JavaSE_017", com.sun.jdi.connect.spi; version\="0.0.0.JavaSE_017", com.sun.jdi; version\="0.0.0.JavaSE_017", com.sun.jdi.request; version\="0.0.0.JavaSE_017", jdk.jfr.consumer; version\="0.0.0.JavaSE_017", jdk.jfr; version\="0.0.0.JavaSE_017", jdk.jshell; version\="0.0.0.JavaSE_017", jdk.jshell.execution; version\="0.0.0.JavaSE_017", jdk.jshell.spi; version\="0.0.0.JavaSE_017", jdk.jshell.tool; version\="0.0.0.JavaSE_017", netscape.javascript; version\="0.0.0.JavaSE_017", com.sun.management; version\="0.0.0.JavaSE_017", jdk.management.jfr; version\="0.0.0.JavaSE_017", jdk.net; version\="0.0.0.JavaSE_017", jdk.nio; version\="0.0.0.JavaSE_017", jdk.nio.mapmode; version\="0.0.0.JavaSE_017", com.sun.nio.sctp; version\="0.0.0.JavaSE_017", com.sun.security.auth.module; version\="0.0.0.JavaSE_017", com.sun.security.auth.login; version\="0.0.0.JavaSE_017", com.sun.security.auth; version\="0.0.0.JavaSE_017", com.sun.security.auth.callback; version\="0.0.0.JavaSE_017", com.sun.security.jgss; version\="0.0.0.JavaSE_017", sun.reflect; version\="0.0.0.JavaSE_017", sun.misc; version\="0.0.0.JavaSE_017", com.sun.nio.file; version\="0.0.0.JavaSE_017", jdk.swing.interop; version\="0.0.0.JavaSE_017", org.w3c.dom.stylesheets; version\="0.0.0.JavaSE_017", org.w3c.dom.html; version\="0.0.0.JavaSE_017", org.w3c.dom.xpath; version\="0.0.0.JavaSE_017", org.w3c.dom.css; version\="0.0.0.JavaSE_017", com.yahoo.jdisc, com.yahoo.jdisc.application, com.yahoo.jdisc.handler, com.yahoo.jdisc.service, com.yahoo.jdisc.statistics, com.yahoo.jdisc.refcount, javax.inject;version\=1.0.0, org.aopalliance.intercept, org.aopalliance.aop, com.google.common.annotations;version\="27.1.0",com.google.common.base;version\="27.1.0",com.google.common.cache;version\="27.1.0";uses\:\="com.google.common.base,com.google.common.collect,com.google.common.util.concurrent",com.google.common.collect;version\="27.1.0";uses\:\="com.google.common.base",com.google.common.escape;version\="27.1.0";uses\:\="com.google.common.base",com.google.common.eventbus;version\="27.1.0",com.google.common.graph;version\="27.1.0";uses\:\="com.google.common.collect",com.google.common.hash;version\="27.1.0";uses\:\="com.google.common.base",com.google.common.html;version\="27.1.0";uses\:\="com.google.common.escape",com.google.common.io;version\="27.1.0";uses\:\="com.google.common.base,com.google.common.collect,com.google.common.graph,com.google.common.hash",com.google.common.math;version\="27.1.0",com.google.common.net;version\="27.1.0";uses\:\="com.google.common.base,com.google.common.collect,com.google.common.escape",com.google.common.primitives;version\="27.1.0";uses\:\="com.google.common.base",com.google.common.reflect;version\="27.1.0";uses\:\="com.google.common.collect,com.google.common.io",com.google.common.util.concurrent;version\="27.1.0";uses\:\="com.google.common.base,com.google.common.collect,com.google.common.util.concurrent.internal",com.google.common.xml;version\="27.1.0";uses\:\="com.google.common.escape", com.google.inject;version\="1.4",com.google.inject.binder;version\="1.4",com.google.inject.matcher;version\="1.4",com.google.inject.multibindings;version\="1.4",com.google.inject.name;version\="1.4",com.google.inject.spi;version\="1.4",com.google.inject.util;version\="1.4", org.slf4j;version\=1.7.32, org.slf4j.spi;version\=1.7.32, org.slf4j.helpers;version\=1.7.32, org.slf4j.event;version\=1.7.32, org.slf4j.impl;version\=1.7.32, org.apache.commons.logging;version\=1.2, org.apache.commons.logging.impl;version\=1.2, org.apache.log4j;version\=1.2.17,org.apache.log4j.helpers;version\=1.2.17,org.apache.log4j.spi;version\=1.2.17,org.apache.log4j.xml;version\=1.2.17, com.yahoo.component.annotation;version\="1.0.0", com.yahoo.config;version\=1.0.0, com.yahoo.vespa.defaults;version\=1.0.0, ai.vespa.http;version\=1.0.0,ai.vespa.validation;version\=1.0.0,com.yahoo.binaryprefix;version\=1.0.0,com.yahoo.collections;version\=1.0.0,com.yahoo.compress;version\=1.0.0,com.yahoo.concurrent.classlock;version\=1.0.0,com.yahoo.concurrent.maintenance;version\=1.0.0,com.yahoo.concurrent;version\=1.0.0,com.yahoo.data.access.simple;version\=1.0.0,com.yahoo.data.access.slime;version\=1.0.0,com.yahoo.data.access;version\=1.0.0,com.yahoo.errorhandling;version\=1.0.0,com.yahoo.exception;version\=1.0.0,com.yahoo.geo;version\=1.0.0,com.yahoo.io.reader;version\=1.0.0,com.yahoo.io;version\=1.0.0,com.yahoo.javacc;version\=1.0.0,com.yahoo.lang;version\=1.0.0,com.yahoo.nativec;version\=1.0.0,com.yahoo.net;version\=1.0.0,com.yahoo.path;version\=1.0.0,com.yahoo.protect;version\=1.0.0,com.yahoo.reflection;version\=1.0.0,com.yahoo.slime;version\=1.0.0,com.yahoo.stream;version\=1.0.0,com.yahoo.system.execution;version\=1.0.0,com.yahoo.system;version\=1.0.0,com.yahoo.tensor.evaluation;version\=1.0.0,com.yahoo.tensor.functions;version\=1.0.0,com.yahoo.tensor.serialization;version\=1.0.0,com.yahoo.tensor;version\=1.0.0,com.yahoo.text.internal;version\=1.0.0,com.yahoo.text;version\=1.0.0,com.yahoo.time;version\=1.0.0,com.yahoo.transaction;version\=1.0.0,com.yahoo.vespa.objects;version\=1.0.0,com.yahoo.yolean.chain;version\=1.0.0,com.yahoo.yolean.concurrent;version\=1.0.0,com.yahoo.yolean.function;version\=1.0.0,com.yahoo.yolean.system;version\=1.0.0,com.yahoo.yolean.trace;version\=1.0.0,com.yahoo.yolean;version\=1.0.0, com.yahoo.log.event;version\=1.0.0,com.yahoo.log.impl;version\=1.0.0,com.yahoo.log;version\=1.0.0, javax.xml.bind;version\="2.3";uses\:\="javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.namespace,javax.xml.stream,javax.xml.transform,javax.xml.validation,org.w3c.dom,org.xml.sax",javax.xml.bind.annotation;version\="2.3";uses\:\="javax.xml.bind,javax.xml.parsers,javax.xml.transform,javax.xml.transform.dom,org.w3c.dom",javax.xml.bind.annotation.adapters;version\="2.3",javax.xml.bind.attachment;version\="2.3";uses\:\="javax.activation",javax.xml.bind.helpers;version\="2.3";uses\:\="javax.xml.bind,javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.stream,javax.xml.transform,javax.xml.validation,org.w3c.dom,org.xml.sax",javax.xml.bind.util;version\="2.3";uses\:\="javax.xml.bind,javax.xml.transform.sax", com.sun.istack;version\="3.0.5";uses\:\="javax.activation,javax.xml.stream,org.xml.sax,org.xml.sax.helpers",com.sun.istack.localization;version\="3.0.5",com.sun.istack.logging;version\="3.0.5",com.sun.xml.bind;uses\:\="org.xml.sax";version\="2.3.0",com.sun.xml.bind.annotation;version\="2.3.0",com.sun.xml.bind.api;uses\:\="org.xml.sax";version\="2.3.0",com.sun.xml.bind.api.impl;version\="2.3.0",com.sun.xml.bind.marshaller;uses\:\="javax.xml.parsers,org.w3c.dom,org.xml.sax,org.xml.sax.helpers";version\="2.3.0",com.sun.xml.bind.unmarshaller;uses\:\="com.sun.xml.bind.v2.runtime.unmarshaller,javax.xml.bind,org.w3c.dom,org.xml.sax";version\="2.3.0",com.sun.xml.bind.util;version\="2.3.0",com.sun.xml.bind.v2;version\="2.3.0",com.sun.xml.bind.v2.model.annotation;uses\:\="com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime";version\="2.3.0",com.sun.xml.bind.v2.model.core;uses\:\="com.sun.xml.bind.v2.model.annotation,com.sun.xml.bind.v2.model.impl,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.runtime,javax.activation,javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.transform";version\="2.3.0",com.sun.xml.bind.v2.model.impl;uses\:\="com.sun.xml.bind.v2.model.annotation,com.sun.xml.bind.v2.model.nav";version\="2.3.0",com.sun.xml.bind.v2.model.nav;uses\:\="com.sun.xml.bind.v2.runtime";version\="2.3.0",com.sun.xml.bind.v2.model.util;uses\:\="javax.xml.namespace";version\="2.3.0",com.sun.xml.bind.v2.runtime;uses\:\="com.sun.xml.bind.v2.model.annotation,javax.activation,javax.xml.bind,javax.xml.bind.annotation.adapters";version\="2.3.0",com.sun.xml.bind.v2.runtime.unmarshaller;uses\:\="javax.xml.bind,org.w3c.dom,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.schemagen.episode;uses\:\="com.sun.xml.txw2,com.sun.xml.txw2.annotation";version\="2.3.0",com.sun.xml.bind.v2.util;uses\:\="javax.xml.parsers,javax.xml.transform,javax.xml.validation,javax.xml.xpath";version\="2.3.0",com.sun.xml.txw2;uses\:\="com.sun.xml.txw2.output,javax.xml.namespace";version\="2.3.0",com.sun.xml.txw2.annotation;version\="2.3.0",com.sun.xml.txw2.output;uses\:\="com.sun.xml.txw2,javax.xml.namespace,javax.xml.stream,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.transform.stream,org.w3c.dom,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers";version\="2.3.0", com.sun.xml.bind;uses\:\="com.sun.xml.bind.v2.runtime.reflect,javax.xml.bind,javax.xml.bind.annotation.adapters,javax.xml.datatype,javax.xml.namespace,javax.xml.stream,org.xml.sax";version\="2.3.0",com.sun.xml.bind.api;uses\:\="com.sun.xml.bind.v2.model.annotation,com.sun.xml.bind.v2.model.runtime,com.sun.xml.bind.v2.runtime,javax.xml.bind,javax.xml.bind.attachment,javax.xml.namespace,javax.xml.stream,javax.xml.transform,org.w3c.dom,org.xml.sax";version\="2.3.0",com.sun.xml.bind.marshaller;version\="2.3.0",com.sun.xml.bind.unmarshaller;uses\:\="org.xml.sax";version\="2.3.0",com.sun.xml.bind.util;uses\:\="com.sun.xml.bind,javax.xml.bind.helpers,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2;uses\:\="com.sun.xml.bind.api,com.sun.xml.bind.v2.model.annotation,javax.xml.bind";version\="2.3.0",com.sun.xml.bind.v2.bytecode;version\="2.3.0",com.sun.xml.bind.v2.model.annotation;uses\:\="com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.runtime";version\="2.3.0",com.sun.xml.bind.v2.model.impl;uses\:\="com.sun.xml.bind.api,com.sun.xml.bind.v2.model.annotation,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.model.runtime,com.sun.xml.bind.v2.runtime,javax.activation,javax.xml.namespace";version\="2.3.0",com.sun.xml.bind.v2.model.runtime;uses\:\="com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.runtime.reflect,javax.xml.bind,javax.xml.namespace,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.runtime;uses\:\="com.sun.istack,com.sun.xml.bind.api,com.sun.xml.bind.marshaller,com.sun.xml.bind.v2.model.annotation,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.model.runtime,com.sun.xml.bind.v2.runtime.output,com.sun.xml.bind.v2.runtime.property,com.sun.xml.bind.v2.runtime.unmarshaller,javax.activation,javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.bind.helpers,javax.xml.namespace,javax.xml.stream,javax.xml.transform,javax.xml.transform.sax,javax.xml.validation,org.w3c.dom,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.runtime.output;uses\:\="com.sun.xml.bind.marshaller,com.sun.xml.bind.v2.runtime,com.sun.xml.fastinfoset.stax,javax.xml.stream,org.jvnet.staxex,org.w3c.dom,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.runtime.property;uses\:\="com.sun.xml.bind.api,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.model.runtime,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.runtime.reflect,com.sun.xml.bind.v2.runtime.unmarshaller,com.sun.xml.bind.v2.util,javax.xml.namespace,javax.xml.stream,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.runtime.reflect;uses\:\="com.sun.xml.bind.api,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.model.runtime,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.runtime.unmarshaller,javax.xml.bind,javax.xml.bind.annotation.adapters,javax.xml.stream,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.runtime.reflect.opt;uses\:\="com.sun.xml.bind.api,com.sun.xml.bind.v2.model.runtime,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.runtime.reflect,javax.xml.stream,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.runtime.unmarshaller;uses\:\="com.sun.xml.bind,com.sun.xml.bind.api,com.sun.xml.bind.unmarshaller,com.sun.xml.bind.util,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.runtime.output,com.sun.xml.bind.v2.runtime.reflect,javax.activation,javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.bind.helpers,javax.xml.namespace,javax.xml.stream,javax.xml.transform,javax.xml.transform.sax,javax.xml.validation,org.w3c.dom,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.schemagen;uses\:\="com.sun.xml.bind.api,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.model.nav,com.sun.xml.txw2.output,javax.xml.bind,javax.xml.namespace";version\="2.3.0",com.sun.xml.bind.v2.schemagen.xmlschema;uses\:\="com.sun.xml.txw2,com.sun.xml.txw2.annotation,javax.xml.namespace";version\="2.3.0",com.sun.xml.bind.v2.util;uses\:\="com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.runtime.unmarshaller,javax.activation,javax.xml.namespace,javax.xml.transform.stream,org.xml.sax";version\="2.3.0", javax.activation;uses\:\="com.sun.activation.registries";version\="1.2",com.sun.activation.viewers;uses\:\="javax.activation";version\="1.2.0",com.sun.activation.registries;version\="1.2.0" +#Tue Apr 25 14:00:54 CEST 2023 +exportPackages=org.osgi.framework; version\="1.10.0", org.osgi.framework.connect; version\="1.0.0", org.osgi.framework.dto; uses\:\="org.osgi.dto"; version\="1.8.0", org.osgi.framework.hooks.bundle; uses\:\="org.osgi.framework"; version\="1.1.0", org.osgi.framework.hooks.resolver; uses\:\="org.osgi.framework.wiring"; version\="1.0.0", org.osgi.framework.hooks.service; uses\:\="org.osgi.framework"; version\="1.1.0", org.osgi.framework.hooks.weaving; uses\:\="org.osgi.framework.wiring"; version\="1.1.0", org.osgi.framework.launch; uses\:\="org.osgi.framework"; version\="1.2.0", org.osgi.framework.namespace; uses\:\="org.osgi.resource"; version\="1.2.0", org.osgi.framework.startlevel; uses\:\="org.osgi.framework"; version\="1.0.0", org.osgi.framework.startlevel.dto; uses\:\="org.osgi.dto"; version\="1.0.0", org.osgi.framework.wiring; uses\:\="org.osgi.framework,org.osgi.resource"; version\="1.2.0", org.osgi.framework.wiring.dto; uses\:\="org.osgi.dto,org.osgi.resource.dto"; version\="1.3.0", org.osgi.resource; version\="1.0.1", org.osgi.resource.dto; uses\:\="org.osgi.dto"; version\="1.0.1", org.osgi.service.packageadmin; uses\:\="org.osgi.framework"; version\="1.2.1", org.osgi.service.startlevel; uses\:\="org.osgi.framework"; version\="1.1.1", org.osgi.service.url; version\="1.0.1", org.osgi.service.resolver; uses\:\="org.osgi.resource"; version\="1.1.1", org.osgi.util.tracker; uses\:\="org.osgi.framework"; version\="1.5.3", org.osgi.dto; version\="1.1.1", org.osgi.service.condition; version\="1.0.0", javax.crypto.interfaces; version\="0.0.0.JavaSE_020", java.util; version\="0.0.0.JavaSE_020", java.security; version\="0.0.0.JavaSE_020", java.nio.file.spi; version\="0.0.0.JavaSE_020", java.nio; version\="0.0.0.JavaSE_020", java.util.jar; version\="0.0.0.JavaSE_020", javax.security.auth; version\="0.0.0.JavaSE_020", java.lang.ref; version\="0.0.0.JavaSE_020", java.util.regex; version\="0.0.0.JavaSE_020", java.net.spi; version\="0.0.0.JavaSE_020", java.lang.module; version\="0.0.0.JavaSE_020", java.lang.invoke; version\="0.0.0.JavaSE_020", java.time.format; version\="0.0.0.JavaSE_020", java.util.concurrent.locks; version\="0.0.0.JavaSE_020", java.time.temporal; version\="0.0.0.JavaSE_020", java.util.zip; version\="0.0.0.JavaSE_020", java.nio.file.attribute; version\="0.0.0.JavaSE_020", java.util.random; version\="0.0.0.JavaSE_020", java.text; version\="0.0.0.JavaSE_020", javax.crypto.spec; version\="0.0.0.JavaSE_020", java.util.stream; version\="0.0.0.JavaSE_020", java.time; version\="0.0.0.JavaSE_020", java.lang; version\="0.0.0.JavaSE_020", java.lang.runtime; version\="0.0.0.JavaSE_020", java.util.function; version\="0.0.0.JavaSE_020", javax.net; version\="0.0.0.JavaSE_020", javax.security.auth.x500; version\="0.0.0.JavaSE_020", java.lang.reflect; version\="0.0.0.JavaSE_020", javax.security.auth.callback; version\="0.0.0.JavaSE_020", javax.security.auth.login; version\="0.0.0.JavaSE_020", javax.net.ssl; version\="0.0.0.JavaSE_020", java.lang.constant; version\="0.0.0.JavaSE_020", java.security.interfaces; version\="0.0.0.JavaSE_020", java.text.spi; version\="0.0.0.JavaSE_020", java.nio.channels.spi; version\="0.0.0.JavaSE_020", java.math; version\="0.0.0.JavaSE_020", java.nio.file; version\="0.0.0.JavaSE_020", java.util.concurrent.atomic; version\="0.0.0.JavaSE_020", java.security.cert; version\="0.0.0.JavaSE_020", java.security.spec; version\="0.0.0.JavaSE_020", java.nio.channels; version\="0.0.0.JavaSE_020", java.time.chrono; version\="0.0.0.JavaSE_020", javax.crypto; version\="0.0.0.JavaSE_020", java.time.zone; version\="0.0.0.JavaSE_020", java.nio.charset; version\="0.0.0.JavaSE_020", java.lang.foreign; version\="0.0.0.JavaSE_020", java.io; version\="0.0.0.JavaSE_020", java.util.spi; version\="0.0.0.JavaSE_020", java.net; version\="0.0.0.JavaSE_020", javax.security.cert; version\="0.0.0.JavaSE_020", java.lang.annotation; version\="0.0.0.JavaSE_020", javax.security.auth.spi; version\="0.0.0.JavaSE_020", java.util.concurrent; version\="0.0.0.JavaSE_020", java.nio.charset.spi; version\="0.0.0.JavaSE_020", javax.tools; version\="0.0.0.JavaSE_020", javax.lang.model.type; version\="0.0.0.JavaSE_020", javax.lang.model.util; version\="0.0.0.JavaSE_020", javax.lang.model; version\="0.0.0.JavaSE_020", javax.annotation.processing; version\="0.0.0.JavaSE_020", javax.lang.model.element; version\="0.0.0.JavaSE_020", java.awt.datatransfer; version\="0.0.0.JavaSE_020", javax.accessibility; version\="0.0.0.JavaSE_020", java.awt.event; version\="0.0.0.JavaSE_020", javax.swing.text.html; version\="0.0.0.JavaSE_020", javax.imageio.spi; version\="0.0.0.JavaSE_020", javax.swing.border; version\="0.0.0.JavaSE_020", javax.sound.sampled.spi; version\="0.0.0.JavaSE_020", javax.imageio.plugins.bmp; version\="0.0.0.JavaSE_020", java.awt.color; version\="0.0.0.JavaSE_020", java.awt.geom; version\="0.0.0.JavaSE_020", javax.imageio.plugins.jpeg; version\="0.0.0.JavaSE_020", javax.swing.tree; version\="0.0.0.JavaSE_020", javax.imageio.plugins.tiff; version\="0.0.0.JavaSE_020", java.awt.print; version\="0.0.0.JavaSE_020", java.awt.image; version\="0.0.0.JavaSE_020", javax.imageio.metadata; version\="0.0.0.JavaSE_020", javax.swing.table; version\="0.0.0.JavaSE_020", javax.sound.midi.spi; version\="0.0.0.JavaSE_020", javax.print.attribute.standard; version\="0.0.0.JavaSE_020", javax.swing.colorchooser; version\="0.0.0.JavaSE_020", javax.swing; version\="0.0.0.JavaSE_020", java.awt.image.renderable; version\="0.0.0.JavaSE_020", javax.swing.plaf.multi; version\="0.0.0.JavaSE_020", java.awt.im; version\="0.0.0.JavaSE_020", javax.print.event; version\="0.0.0.JavaSE_020", javax.swing.plaf.metal; version\="0.0.0.JavaSE_020", java.beans.beancontext; version\="0.0.0.JavaSE_020", java.awt; version\="0.0.0.JavaSE_020", javax.imageio.stream; version\="0.0.0.JavaSE_020", javax.swing.event; version\="0.0.0.JavaSE_020", java.awt.desktop; version\="0.0.0.JavaSE_020", javax.swing.plaf.synth; version\="0.0.0.JavaSE_020", java.beans; version\="0.0.0.JavaSE_020", javax.swing.text.html.parser; version\="0.0.0.JavaSE_020", javax.swing.text.rtf; version\="0.0.0.JavaSE_020", java.awt.font; version\="0.0.0.JavaSE_020", javax.imageio; version\="0.0.0.JavaSE_020", java.awt.im.spi; version\="0.0.0.JavaSE_020", java.applet; version\="0.0.0.JavaSE_020", javax.sound.midi; version\="0.0.0.JavaSE_020", java.awt.dnd; version\="0.0.0.JavaSE_020", javax.swing.text; version\="0.0.0.JavaSE_020", javax.swing.plaf.basic; version\="0.0.0.JavaSE_020", javax.swing.undo; version\="0.0.0.JavaSE_020", javax.swing.plaf; version\="0.0.0.JavaSE_020", javax.swing.filechooser; version\="0.0.0.JavaSE_020", javax.imageio.event; version\="0.0.0.JavaSE_020", javax.sound.sampled; version\="0.0.0.JavaSE_020", javax.print.attribute; version\="0.0.0.JavaSE_020", javax.print; version\="0.0.0.JavaSE_020", javax.swing.plaf.nimbus; version\="0.0.0.JavaSE_020", java.lang.instrument; version\="0.0.0.JavaSE_020", java.util.logging; version\="0.0.0.JavaSE_020", javax.management.remote; version\="0.0.0.JavaSE_020", javax.management.monitor; version\="0.0.0.JavaSE_020", javax.management.modelmbean; version\="0.0.0.JavaSE_020", javax.management.timer; version\="0.0.0.JavaSE_020", javax.management; version\="0.0.0.JavaSE_020", javax.management.relation; version\="0.0.0.JavaSE_020", javax.management.loading; version\="0.0.0.JavaSE_020", javax.management.openmbean; version\="0.0.0.JavaSE_020", java.lang.management; version\="0.0.0.JavaSE_020", javax.management.remote.rmi; version\="0.0.0.JavaSE_020", javax.naming; version\="0.0.0.JavaSE_020", javax.naming.spi; version\="0.0.0.JavaSE_020", javax.naming.event; version\="0.0.0.JavaSE_020", javax.naming.ldap.spi; version\="0.0.0.JavaSE_020", javax.naming.ldap; version\="0.0.0.JavaSE_020", javax.naming.directory; version\="0.0.0.JavaSE_020", java.net.http; version\="0.0.0.JavaSE_020", java.util.prefs; version\="0.0.0.JavaSE_020", javax.rmi.ssl; version\="0.0.0.JavaSE_020", java.rmi.dgc; version\="0.0.0.JavaSE_020", java.rmi; version\="0.0.0.JavaSE_020", java.rmi.server; version\="0.0.0.JavaSE_020", java.rmi.registry; version\="0.0.0.JavaSE_020", javax.script; version\="0.0.0.JavaSE_020", javax.security.auth.kerberos; version\="0.0.0.JavaSE_020", org.ietf.jgss; version\="0.0.0.JavaSE_020", javax.security.sasl; version\="0.0.0.JavaSE_020", javax.smartcardio; version\="0.0.0.JavaSE_020", java.sql; version\="0.0.0.JavaSE_020", javax.sql; version\="0.0.0.JavaSE_020", javax.sql.rowset.spi; version\="0.0.0.JavaSE_020", javax.sql.rowset.serial; version\="0.0.0.JavaSE_020", javax.sql.rowset; version\="0.0.0.JavaSE_020", javax.transaction.xa; version\="0.0.0.JavaSE_020", org.w3c.dom.events; version\="0.0.0.JavaSE_020", org.w3c.dom.ranges; version\="0.0.0.JavaSE_020", org.w3c.dom.ls; version\="0.0.0.JavaSE_020", javax.xml.stream.util; version\="0.0.0.JavaSE_020", javax.xml.namespace; version\="0.0.0.JavaSE_020", javax.xml.transform.stax; version\="0.0.0.JavaSE_020", org.xml.sax.helpers; version\="0.0.0.JavaSE_020", org.w3c.dom.views; version\="0.0.0.JavaSE_020", org.w3c.dom.bootstrap; version\="0.0.0.JavaSE_020", org.w3c.dom; version\="0.0.0.JavaSE_020", javax.xml.transform.stream; version\="0.0.0.JavaSE_020", javax.xml.transform.dom; version\="0.0.0.JavaSE_020", javax.xml.validation; version\="0.0.0.JavaSE_020", javax.xml.parsers; version\="0.0.0.JavaSE_020", org.xml.sax.ext; version\="0.0.0.JavaSE_020", javax.xml; version\="0.0.0.JavaSE_020", javax.xml.transform.sax; version\="0.0.0.JavaSE_020", javax.xml.datatype; version\="0.0.0.JavaSE_020", javax.xml.catalog; version\="0.0.0.JavaSE_020", org.w3c.dom.traversal; version\="0.0.0.JavaSE_020", javax.xml.stream.events; version\="0.0.0.JavaSE_020", javax.xml.stream; version\="0.0.0.JavaSE_020", org.xml.sax; version\="0.0.0.JavaSE_020", javax.xml.transform; version\="0.0.0.JavaSE_020", javax.xml.xpath; version\="0.0.0.JavaSE_020", javax.xml.crypto; version\="0.0.0.JavaSE_020", javax.xml.crypto.dsig; version\="0.0.0.JavaSE_020", javax.xml.crypto.dsig.spec; version\="0.0.0.JavaSE_020", javax.xml.crypto.dsig.keyinfo; version\="0.0.0.JavaSE_020", javax.xml.crypto.dsig.dom; version\="0.0.0.JavaSE_020", javax.xml.crypto.dom; version\="0.0.0.JavaSE_020", com.sun.java.accessibility.util; version\="0.0.0.JavaSE_020", com.sun.tools.attach; version\="0.0.0.JavaSE_020", com.sun.tools.attach.spi; version\="0.0.0.JavaSE_020", com.sun.source.tree; version\="0.0.0.JavaSE_020", com.sun.source.util; version\="0.0.0.JavaSE_020", com.sun.tools.javac; version\="0.0.0.JavaSE_020", com.sun.source.doctree; version\="0.0.0.JavaSE_020", jdk.dynalink.support; version\="0.0.0.JavaSE_020", jdk.dynalink; version\="0.0.0.JavaSE_020", jdk.dynalink.linker; version\="0.0.0.JavaSE_020", jdk.dynalink.beans; version\="0.0.0.JavaSE_020", jdk.dynalink.linker.support; version\="0.0.0.JavaSE_020", com.sun.net.httpserver; version\="0.0.0.JavaSE_020", com.sun.net.httpserver.spi; version\="0.0.0.JavaSE_020", com.sun.jarsigner; version\="0.0.0.JavaSE_020", jdk.security.jarsigner; version\="0.0.0.JavaSE_020", jdk.javadoc.doclet; version\="0.0.0.JavaSE_020", com.sun.tools.jconsole; version\="0.0.0.JavaSE_020", com.sun.jdi; version\="0.0.0.JavaSE_020", com.sun.jdi.request; version\="0.0.0.JavaSE_020", com.sun.jdi.connect; version\="0.0.0.JavaSE_020", com.sun.jdi.event; version\="0.0.0.JavaSE_020", com.sun.jdi.connect.spi; version\="0.0.0.JavaSE_020", jdk.jfr.consumer; version\="0.0.0.JavaSE_020", jdk.jfr; version\="0.0.0.JavaSE_020", jdk.jshell.spi; version\="0.0.0.JavaSE_020", jdk.jshell.tool; version\="0.0.0.JavaSE_020", jdk.jshell; version\="0.0.0.JavaSE_020", jdk.jshell.execution; version\="0.0.0.JavaSE_020", netscape.javascript; version\="0.0.0.JavaSE_020", com.sun.management; version\="0.0.0.JavaSE_020", jdk.management.jfr; version\="0.0.0.JavaSE_020", jdk.net; version\="0.0.0.JavaSE_020", jdk.nio; version\="0.0.0.JavaSE_020", jdk.nio.mapmode; version\="0.0.0.JavaSE_020", com.sun.nio.sctp; version\="0.0.0.JavaSE_020", com.sun.security.auth.login; version\="0.0.0.JavaSE_020", com.sun.security.auth; version\="0.0.0.JavaSE_020", com.sun.security.auth.callback; version\="0.0.0.JavaSE_020", com.sun.security.auth.module; version\="0.0.0.JavaSE_020", com.sun.security.jgss; version\="0.0.0.JavaSE_020", sun.reflect; version\="0.0.0.JavaSE_020", sun.misc; version\="0.0.0.JavaSE_020", com.sun.nio.file; version\="0.0.0.JavaSE_020", jdk.swing.interop; version\="0.0.0.JavaSE_020", org.w3c.dom.xpath; version\="0.0.0.JavaSE_020", org.w3c.dom.css; version\="0.0.0.JavaSE_020", org.w3c.dom.stylesheets; version\="0.0.0.JavaSE_020", org.w3c.dom.html; version\="0.0.0.JavaSE_020", com.yahoo.jdisc, com.yahoo.jdisc.application, com.yahoo.jdisc.handler, com.yahoo.jdisc.service, com.yahoo.jdisc.statistics, com.yahoo.jdisc.refcount, javax.inject;version\=1.0.0, org.aopalliance.intercept, org.aopalliance.aop, com.google.common.annotations;version\="27.1.0",com.google.common.base;version\="27.1.0",com.google.common.cache;version\="27.1.0";uses\:\="com.google.common.base,com.google.common.collect,com.google.common.util.concurrent",com.google.common.collect;version\="27.1.0";uses\:\="com.google.common.base",com.google.common.escape;version\="27.1.0";uses\:\="com.google.common.base",com.google.common.eventbus;version\="27.1.0",com.google.common.graph;version\="27.1.0";uses\:\="com.google.common.collect",com.google.common.hash;version\="27.1.0";uses\:\="com.google.common.base",com.google.common.html;version\="27.1.0";uses\:\="com.google.common.escape",com.google.common.io;version\="27.1.0";uses\:\="com.google.common.base,com.google.common.collect,com.google.common.graph,com.google.common.hash",com.google.common.math;version\="27.1.0",com.google.common.net;version\="27.1.0";uses\:\="com.google.common.base,com.google.common.collect,com.google.common.escape",com.google.common.primitives;version\="27.1.0";uses\:\="com.google.common.base",com.google.common.reflect;version\="27.1.0";uses\:\="com.google.common.collect,com.google.common.io",com.google.common.util.concurrent;version\="27.1.0";uses\:\="com.google.common.base,com.google.common.collect,com.google.common.util.concurrent.internal",com.google.common.xml;version\="27.1.0";uses\:\="com.google.common.escape", com.google.inject;version\="1.4",com.google.inject.binder;version\="1.4",com.google.inject.matcher;version\="1.4",com.google.inject.multibindings;version\="1.4",com.google.inject.name;version\="1.4",com.google.inject.spi;version\="1.4",com.google.inject.util;version\="1.4", org.slf4j;version\=1.7.32, org.slf4j.spi;version\=1.7.32, org.slf4j.helpers;version\=1.7.32, org.slf4j.event;version\=1.7.32, org.slf4j.impl;version\=1.7.32, org.apache.commons.logging;version\=1.2, org.apache.commons.logging.impl;version\=1.2, com.sun.jna;version\=5.11.0, com.sun.jna.ptr;version\=5.11.0, com.sun.jna.win32;version\=5.11.0, org.apache.log4j;version\=1.2.17,org.apache.log4j.helpers;version\=1.2.17,org.apache.log4j.spi;version\=1.2.17,org.apache.log4j.xml;version\=1.2.17, com.yahoo.component.annotation;version\="1.0.0", com.yahoo.config;version\=1.0.0, com.yahoo.vespa.defaults;version\=1.0.0, ai.vespa.http;version\=1.0.0,ai.vespa.llm.completion;version\=1.0.0,ai.vespa.llm.test;version\=1.0.0,ai.vespa.llm;version\=1.0.0,ai.vespa.validation;version\=1.0.0,com.yahoo.binaryprefix;version\=1.0.0,com.yahoo.collections;version\=1.0.0,com.yahoo.compress;version\=1.0.0,com.yahoo.concurrent.classlock;version\=1.0.0,com.yahoo.concurrent.maintenance;version\=1.0.0,com.yahoo.concurrent;version\=1.0.0,com.yahoo.data.access.simple;version\=1.0.0,com.yahoo.data.access.slime;version\=1.0.0,com.yahoo.data.access;version\=1.0.0,com.yahoo.errorhandling;version\=1.0.0,com.yahoo.exception;version\=1.0.0,com.yahoo.geo;version\=1.0.0,com.yahoo.io.reader;version\=1.0.0,com.yahoo.io;version\=1.0.0,com.yahoo.javacc;version\=1.0.0,com.yahoo.lang;version\=1.0.0,com.yahoo.nativec;version\=1.0.0,com.yahoo.net;version\=1.0.0,com.yahoo.path;version\=1.0.0,com.yahoo.protect;version\=1.0.0,com.yahoo.reflection;version\=1.0.0,com.yahoo.slime;version\=1.0.0,com.yahoo.stream;version\=1.0.0,com.yahoo.system.execution;version\=1.0.0,com.yahoo.system;version\=1.0.0,com.yahoo.tensor.evaluation;version\=1.0.0,com.yahoo.tensor.functions;version\=1.0.0,com.yahoo.tensor.serialization;version\=1.0.0,com.yahoo.tensor;version\=1.0.0,com.yahoo.text.internal;version\=1.0.0,com.yahoo.text;version\=1.0.0,com.yahoo.time;version\=1.0.0,com.yahoo.transaction;version\=1.0.0,com.yahoo.vespa.objects;version\=1.0.0,com.yahoo.yolean.chain;version\=1.0.0,com.yahoo.yolean.concurrent;version\=1.0.0,com.yahoo.yolean.function;version\=1.0.0,com.yahoo.yolean.system;version\=1.0.0,com.yahoo.yolean.trace;version\=1.0.0,com.yahoo.yolean;version\=1.0.0, com.yahoo.log.event;version\=1.0.0,com.yahoo.log.impl;version\=1.0.0,com.yahoo.log;version\=1.0.0, javax.xml.bind;version\="2.3";uses\:\="javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.namespace,javax.xml.stream,javax.xml.transform,javax.xml.validation,org.w3c.dom,org.xml.sax",javax.xml.bind.annotation;version\="2.3";uses\:\="javax.xml.bind,javax.xml.parsers,javax.xml.transform,javax.xml.transform.dom,org.w3c.dom",javax.xml.bind.annotation.adapters;version\="2.3",javax.xml.bind.attachment;version\="2.3";uses\:\="javax.activation",javax.xml.bind.helpers;version\="2.3";uses\:\="javax.xml.bind,javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.stream,javax.xml.transform,javax.xml.validation,org.w3c.dom,org.xml.sax",javax.xml.bind.util;version\="2.3";uses\:\="javax.xml.bind,javax.xml.transform.sax", com.sun.istack;version\="3.0.5";uses\:\="javax.activation,javax.xml.stream,org.xml.sax,org.xml.sax.helpers",com.sun.istack.localization;version\="3.0.5",com.sun.istack.logging;version\="3.0.5",com.sun.xml.bind;uses\:\="org.xml.sax";version\="2.3.0",com.sun.xml.bind.annotation;version\="2.3.0",com.sun.xml.bind.api;uses\:\="org.xml.sax";version\="2.3.0",com.sun.xml.bind.api.impl;version\="2.3.0",com.sun.xml.bind.marshaller;uses\:\="javax.xml.parsers,org.w3c.dom,org.xml.sax,org.xml.sax.helpers";version\="2.3.0",com.sun.xml.bind.unmarshaller;uses\:\="com.sun.xml.bind.v2.runtime.unmarshaller,javax.xml.bind,org.w3c.dom,org.xml.sax";version\="2.3.0",com.sun.xml.bind.util;version\="2.3.0",com.sun.xml.bind.v2;version\="2.3.0",com.sun.xml.bind.v2.model.annotation;uses\:\="com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime";version\="2.3.0",com.sun.xml.bind.v2.model.core;uses\:\="com.sun.xml.bind.v2.model.annotation,com.sun.xml.bind.v2.model.impl,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.runtime,javax.activation,javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.namespace,javax.xml.transform";version\="2.3.0",com.sun.xml.bind.v2.model.impl;uses\:\="com.sun.xml.bind.v2.model.annotation,com.sun.xml.bind.v2.model.nav";version\="2.3.0",com.sun.xml.bind.v2.model.nav;uses\:\="com.sun.xml.bind.v2.runtime";version\="2.3.0",com.sun.xml.bind.v2.model.util;uses\:\="javax.xml.namespace";version\="2.3.0",com.sun.xml.bind.v2.runtime;uses\:\="com.sun.xml.bind.v2.model.annotation,javax.activation,javax.xml.bind,javax.xml.bind.annotation.adapters";version\="2.3.0",com.sun.xml.bind.v2.runtime.unmarshaller;uses\:\="javax.xml.bind,org.w3c.dom,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.schemagen.episode;uses\:\="com.sun.xml.txw2,com.sun.xml.txw2.annotation";version\="2.3.0",com.sun.xml.bind.v2.util;uses\:\="javax.xml.parsers,javax.xml.transform,javax.xml.validation,javax.xml.xpath";version\="2.3.0",com.sun.xml.txw2;uses\:\="com.sun.xml.txw2.output,javax.xml.namespace";version\="2.3.0",com.sun.xml.txw2.annotation;version\="2.3.0",com.sun.xml.txw2.output;uses\:\="com.sun.xml.txw2,javax.xml.namespace,javax.xml.stream,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.transform.stream,org.w3c.dom,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers";version\="2.3.0", com.sun.xml.bind;uses\:\="com.sun.xml.bind.v2.runtime.reflect,javax.xml.bind,javax.xml.bind.annotation.adapters,javax.xml.datatype,javax.xml.namespace,javax.xml.stream,org.xml.sax";version\="2.3.0",com.sun.xml.bind.api;uses\:\="com.sun.xml.bind.v2.model.annotation,com.sun.xml.bind.v2.model.runtime,com.sun.xml.bind.v2.runtime,javax.xml.bind,javax.xml.bind.attachment,javax.xml.namespace,javax.xml.stream,javax.xml.transform,org.w3c.dom,org.xml.sax";version\="2.3.0",com.sun.xml.bind.marshaller;version\="2.3.0",com.sun.xml.bind.unmarshaller;uses\:\="org.xml.sax";version\="2.3.0",com.sun.xml.bind.util;uses\:\="com.sun.xml.bind,javax.xml.bind.helpers,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2;uses\:\="com.sun.xml.bind.api,com.sun.xml.bind.v2.model.annotation,javax.xml.bind";version\="2.3.0",com.sun.xml.bind.v2.bytecode;version\="2.3.0",com.sun.xml.bind.v2.model.annotation;uses\:\="com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.runtime";version\="2.3.0",com.sun.xml.bind.v2.model.impl;uses\:\="com.sun.xml.bind.api,com.sun.xml.bind.v2.model.annotation,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.model.nav,com.sun.xml.bind.v2.model.runtime,com.sun.xml.bind.v2.runtime,javax.activation,javax.xml.namespace";version\="2.3.0",com.sun.xml.bind.v2.model.runtime;uses\:\="com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.runtime.reflect,javax.xml.bind,javax.xml.namespace,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.runtime;uses\:\="com.sun.istack,com.sun.xml.bind.api,com.sun.xml.bind.marshaller,com.sun.xml.bind.v2.model.annotation,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.model.runtime,com.sun.xml.bind.v2.runtime.output,com.sun.xml.bind.v2.runtime.property,com.sun.xml.bind.v2.runtime.unmarshaller,javax.activation,javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.bind.helpers,javax.xml.namespace,javax.xml.stream,javax.xml.transform,javax.xml.transform.sax,javax.xml.validation,org.w3c.dom,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.runtime.output;uses\:\="com.sun.xml.bind.marshaller,com.sun.xml.bind.v2.runtime,com.sun.xml.fastinfoset.stax,javax.xml.stream,org.jvnet.staxex,org.w3c.dom,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.runtime.property;uses\:\="com.sun.xml.bind.api,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.model.runtime,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.runtime.reflect,com.sun.xml.bind.v2.runtime.unmarshaller,com.sun.xml.bind.v2.util,javax.xml.namespace,javax.xml.stream,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.runtime.reflect;uses\:\="com.sun.xml.bind.api,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.model.runtime,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.runtime.unmarshaller,javax.xml.bind,javax.xml.bind.annotation.adapters,javax.xml.stream,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.runtime.reflect.opt;uses\:\="com.sun.xml.bind.api,com.sun.xml.bind.v2.model.runtime,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.runtime.reflect,javax.xml.stream,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.runtime.unmarshaller;uses\:\="com.sun.xml.bind,com.sun.xml.bind.api,com.sun.xml.bind.unmarshaller,com.sun.xml.bind.util,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.runtime.output,com.sun.xml.bind.v2.runtime.reflect,javax.activation,javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.bind.helpers,javax.xml.namespace,javax.xml.stream,javax.xml.transform,javax.xml.transform.sax,javax.xml.validation,org.w3c.dom,org.xml.sax";version\="2.3.0",com.sun.xml.bind.v2.schemagen;uses\:\="com.sun.xml.bind.api,com.sun.xml.bind.v2.model.core,com.sun.xml.bind.v2.model.nav,com.sun.xml.txw2.output,javax.xml.bind,javax.xml.namespace";version\="2.3.0",com.sun.xml.bind.v2.schemagen.xmlschema;uses\:\="com.sun.xml.txw2,com.sun.xml.txw2.annotation,javax.xml.namespace";version\="2.3.0",com.sun.xml.bind.v2.util;uses\:\="com.sun.xml.bind.v2.runtime,com.sun.xml.bind.v2.runtime.unmarshaller,javax.activation,javax.xml.namespace,javax.xml.transform.stream,org.xml.sax";version\="2.3.0", javax.activation;uses\:\="com.sun.activation.registries";version\="1.2",com.sun.activation.viewers;uses\:\="javax.activation";version\="1.2.0",com.sun.activation.registries;version\="1.2.0" diff --git a/model-integration/abi-spec.json b/model-integration/abi-spec.json index 0c76ba38660..d3c472778e6 100644 --- a/model-integration/abi-spec.json +++ b/model-integration/abi-spec.json @@ -1,41 +1,5 @@ { - "ai.vespa.llm.Completion$FinishReason" : { - "superClass" : "java.lang.Enum", - "interfaces" : [ ], - "attributes" : [ - "public", - "final", - "enum" - ], - "methods" : [ - "public static ai.vespa.llm.Completion$FinishReason[] values()", - "public static ai.vespa.llm.Completion$FinishReason valueOf(java.lang.String)" - ], - "fields" : [ - "public static final enum ai.vespa.llm.Completion$FinishReason length", - "public static final enum ai.vespa.llm.Completion$FinishReason stop" - ] - }, - "ai.vespa.llm.Completion" : { - "superClass" : "java.lang.Record", - "interfaces" : [ ], - "attributes" : [ - "public", - "final", - "record" - ], - "methods" : [ - "public void <init>(java.lang.String, ai.vespa.llm.Completion$FinishReason)", - "public java.lang.String text()", - "public ai.vespa.llm.Completion$FinishReason finishReason()", - "public static ai.vespa.llm.Completion from(java.lang.String)", - "public final java.lang.String toString()", - "public final int hashCode()", - "public final boolean equals(java.lang.Object)" - ], - "fields" : [ ] - }, - "ai.vespa.llm.Generator" : { + "ai.vespa.llm.generation.Generator" : { "superClass" : "com.yahoo.component.AbstractComponent", "interfaces" : [ ], "attributes" : [ @@ -43,13 +7,13 @@ ], "methods" : [ "public void <init>(ai.vespa.modelintegration.evaluator.OnnxRuntime, com.yahoo.llm.GeneratorConfig)", - "public java.lang.String generate(java.lang.String, ai.vespa.llm.GeneratorOptions)", + "public java.lang.String generate(java.lang.String, ai.vespa.llm.generation.GeneratorOptions)", "public java.lang.String generate(java.lang.String)", "public void deconstruct()" ], "fields" : [ ] }, - "ai.vespa.llm.GeneratorOptions$SearchMethod" : { + "ai.vespa.llm.generation.GeneratorOptions$SearchMethod" : { "superClass" : "java.lang.Enum", "interfaces" : [ ], "attributes" : [ @@ -58,17 +22,17 @@ "enum" ], "methods" : [ - "public static ai.vespa.llm.GeneratorOptions$SearchMethod[] values()", - "public static ai.vespa.llm.GeneratorOptions$SearchMethod valueOf(java.lang.String)" + "public static ai.vespa.llm.generation.GeneratorOptions$SearchMethod[] values()", + "public static ai.vespa.llm.generation.GeneratorOptions$SearchMethod valueOf(java.lang.String)" ], "fields" : [ - "public static final enum ai.vespa.llm.GeneratorOptions$SearchMethod GREEDY", - "public static final enum ai.vespa.llm.GeneratorOptions$SearchMethod CONTRASTIVE", - "public static final enum ai.vespa.llm.GeneratorOptions$SearchMethod BEAM", - "public static final enum ai.vespa.llm.GeneratorOptions$SearchMethod SAMPLE" + "public static final enum ai.vespa.llm.generation.GeneratorOptions$SearchMethod GREEDY", + "public static final enum ai.vespa.llm.generation.GeneratorOptions$SearchMethod CONTRASTIVE", + "public static final enum ai.vespa.llm.generation.GeneratorOptions$SearchMethod BEAM", + "public static final enum ai.vespa.llm.generation.GeneratorOptions$SearchMethod SAMPLE" ] }, - "ai.vespa.llm.GeneratorOptions" : { + "ai.vespa.llm.generation.GeneratorOptions" : { "superClass" : "java.lang.Object", "interfaces" : [ ], "attributes" : [ @@ -76,109 +40,10 @@ ], "methods" : [ "public void <init>()", - "public ai.vespa.llm.GeneratorOptions$SearchMethod getSearchMethod()", - "public ai.vespa.llm.GeneratorOptions setSearchMethod(ai.vespa.llm.GeneratorOptions$SearchMethod)", + "public ai.vespa.llm.generation.GeneratorOptions$SearchMethod getSearchMethod()", + "public ai.vespa.llm.generation.GeneratorOptions setSearchMethod(ai.vespa.llm.generation.GeneratorOptions$SearchMethod)", "public int getMaxLength()", - "public ai.vespa.llm.GeneratorOptions setMaxLength(int)" - ], - "fields" : [ ] - }, - "ai.vespa.llm.LanguageModel" : { - "superClass" : "java.lang.Object", - "interfaces" : [ ], - "attributes" : [ - "public", - "interface", - "abstract" - ], - "methods" : [ - "public abstract java.util.List complete(ai.vespa.llm.Prompt)" - ], - "fields" : [ ] - }, - "ai.vespa.llm.Prompt" : { - "superClass" : "java.lang.Object", - "interfaces" : [ ], - "attributes" : [ - "public", - "abstract" - ], - "methods" : [ - "public void <init>()", - "public abstract java.lang.String asString()", - "public ai.vespa.llm.Prompt append(ai.vespa.llm.Completion)", - "public abstract ai.vespa.llm.Prompt append(java.lang.String)" - ], - "fields" : [ ] - }, - "ai.vespa.llm.StringPrompt" : { - "superClass" : "ai.vespa.llm.Prompt", - "interfaces" : [ ], - "attributes" : [ - "public" - ], - "methods" : [ - "public java.lang.String asString()", - "public ai.vespa.llm.StringPrompt append(java.lang.String)", - "public ai.vespa.llm.StringPrompt append(ai.vespa.llm.Completion)", - "public java.lang.String toString()", - "public static ai.vespa.llm.StringPrompt from(java.lang.String)", - "public bridge synthetic ai.vespa.llm.Prompt append(java.lang.String)", - "public bridge synthetic ai.vespa.llm.Prompt append(ai.vespa.llm.Completion)" - ], - "fields" : [ ] - }, - "ai.vespa.llm.client.OpenAiClient$Builder" : { - "superClass" : "java.lang.Object", - "interfaces" : [ ], - "attributes" : [ - "public" - ], - "methods" : [ - "public void <init>(java.lang.String)", - "public ai.vespa.llm.client.OpenAiClient$Builder model(java.lang.String)", - "public ai.vespa.llm.client.OpenAiClient$Builder echo(boolean)", - "public ai.vespa.llm.client.OpenAiClient build()" - ], - "fields" : [ ] - }, - "ai.vespa.llm.client.OpenAiClient" : { - "superClass" : "java.lang.Object", - "interfaces" : [ - "ai.vespa.llm.LanguageModel" - ], - "attributes" : [ - "public" - ], - "methods" : [ - "public java.util.List complete(ai.vespa.llm.Prompt)" - ], - "fields" : [ ] - }, - "ai.vespa.llm.test.MockLanguageModel$Builder" : { - "superClass" : "java.lang.Object", - "interfaces" : [ ], - "attributes" : [ - "public" - ], - "methods" : [ - "public ai.vespa.llm.test.MockLanguageModel$Builder completer(java.util.function.Function)", - "public void <init>()", - "public ai.vespa.llm.test.MockLanguageModel build()" - ], - "fields" : [ ] - }, - "ai.vespa.llm.test.MockLanguageModel" : { - "superClass" : "java.lang.Object", - "interfaces" : [ - "ai.vespa.llm.LanguageModel" - ], - "attributes" : [ - "public" - ], - "methods" : [ - "public void <init>(ai.vespa.llm.test.MockLanguageModel$Builder)", - "public java.util.List complete(ai.vespa.llm.Prompt)" + "public ai.vespa.llm.generation.GeneratorOptions setMaxLength(int)" ], "fields" : [ ] } diff --git a/model-integration/pom.xml b/model-integration/pom.xml index c96441f11a7..c27ed9d2c31 100644 --- a/model-integration/pom.xml +++ b/model-integration/pom.xml @@ -111,11 +111,6 @@ </dependency> <dependency> - <groupId>com.theokanning.openai-gpt3-java</groupId> - <artifactId>service</artifactId> - </dependency> - - <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>test</scope> @@ -151,18 +146,6 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> - <configuration> - <!-- - openai-gpt3-java depends on a different Jackson version than the one we provide, - which leads to warnings, so we must disable error on warnings. - --> - <compilerArgs> - <arg>-Xlint:all</arg> - <arg>-Xlint:-rawtypes</arg> - <arg>-Xlint:-unchecked</arg> - <arg>-Xlint:-serial</arg> - </compilerArgs> - </configuration> </plugin> <plugin> <groupId>com.github.os72</groupId> diff --git a/model-integration/src/main/java/ai/vespa/llm/Generator.java b/model-integration/src/main/java/ai/vespa/llm/generation/Generator.java index 6b60041947b..f20925b86ee 100644 --- a/model-integration/src/main/java/ai/vespa/llm/Generator.java +++ b/model-integration/src/main/java/ai/vespa/llm/generation/Generator.java @@ -1,4 +1,4 @@ -package ai.vespa.llm; +package ai.vespa.llm.generation; import ai.vespa.modelintegration.evaluator.OnnxEvaluator; import ai.vespa.modelintegration.evaluator.OnnxEvaluatorOptions; diff --git a/model-integration/src/main/java/ai/vespa/llm/GeneratorOptions.java b/model-integration/src/main/java/ai/vespa/llm/generation/GeneratorOptions.java index 8b490a733dd..79b466e5a74 100644 --- a/model-integration/src/main/java/ai/vespa/llm/GeneratorOptions.java +++ b/model-integration/src/main/java/ai/vespa/llm/generation/GeneratorOptions.java @@ -1,4 +1,4 @@ -package ai.vespa.llm; +package ai.vespa.llm.generation; import com.yahoo.api.annotations.Beta; diff --git a/model-integration/src/main/java/ai/vespa/llm/client/package-info.java b/model-integration/src/main/java/ai/vespa/llm/generation/package-info.java index c95f87eec3c..ed3adb2f59e 100644 --- a/model-integration/src/main/java/ai/vespa/llm/client/package-info.java +++ b/model-integration/src/main/java/ai/vespa/llm/generation/package-info.java @@ -1,11 +1,11 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. @ExportPackage @PublicApi -package ai.vespa.llm.client; +package ai.vespa.llm.generation; import com.yahoo.api.annotations.PublicApi; import com.yahoo.osgi.annotation.ExportPackage; /** - * Clients to externally hosted large language models. + * API for generating text with language models. */
\ No newline at end of file diff --git a/model-integration/src/test/java/ai/vespa/llm/GeneratorTest.java b/model-integration/src/test/java/ai/vespa/llm/generation/GeneratorTest.java index c22902b344f..8c9b961f4a8 100644 --- a/model-integration/src/test/java/ai/vespa/llm/GeneratorTest.java +++ b/model-integration/src/test/java/ai/vespa/llm/generation/GeneratorTest.java @@ -1,5 +1,7 @@ -package ai.vespa.llm; +package ai.vespa.llm.generation; +import ai.vespa.llm.generation.Generator; +import ai.vespa.llm.generation.GeneratorOptions; import ai.vespa.modelintegration.evaluator.OnnxRuntime; import com.yahoo.config.ModelReference; import com.yahoo.llm.GeneratorConfig; diff --git a/openai-client/abi-spec.json b/openai-client/abi-spec.json new file mode 100644 index 00000000000..039ca57fc64 --- /dev/null +++ b/openai-client/abi-spec.json @@ -0,0 +1,29 @@ +{ + "ai.vespa.llm.client.openai.OpenAiClient$Builder" : { + "superClass" : "java.lang.Object", + "interfaces" : [ ], + "attributes" : [ + "public" + ], + "methods" : [ + "public void <init>(java.lang.String)", + "public ai.vespa.llm.client.openai.OpenAiClient$Builder model(java.lang.String)", + "public ai.vespa.llm.client.openai.OpenAiClient$Builder echo(boolean)", + "public ai.vespa.llm.client.openai.OpenAiClient build()" + ], + "fields" : [ ] + }, + "ai.vespa.llm.client.openai.OpenAiClient" : { + "superClass" : "java.lang.Object", + "interfaces" : [ + "ai.vespa.llm.LanguageModel" + ], + "attributes" : [ + "public" + ], + "methods" : [ + "public java.util.List complete(ai.vespa.llm.completion.Prompt)" + ], + "fields" : [ ] + } +}
\ No newline at end of file diff --git a/openai-client/pom.xml b/openai-client/pom.xml new file mode 100644 index 00000000000..f4362194b58 --- /dev/null +++ b/openai-client/pom.xml @@ -0,0 +1,67 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>com.yahoo.vespa</groupId> + <artifactId>parent</artifactId> + <version>8-SNAPSHOT</version> + <relativePath>../parent/pom.xml</relativePath> + </parent> + <artifactId>openai-client</artifactId> + <packaging>container-plugin</packaging> + <version>8-SNAPSHOT</version> + + <properties> + <openai-gpt3.version>0.12.0</openai-gpt3.version> + </properties> + + <dependencies> + <dependency> + <groupId>com.theokanning.openai-gpt3-java</groupId> + <artifactId>service</artifactId> + <version>${openai-gpt3.version}</version> + </dependency> + <dependency> + <groupId>com.yahoo.vespa</groupId> + <artifactId>annotations</artifactId> + <version>${project.version}</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>com.yahoo.vespa</groupId> + <artifactId>vespajlib</artifactId> + <version>${project.version}</version> + <scope>provided</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>com.yahoo.vespa</groupId> + <artifactId>bundle-plugin</artifactId> + <extensions>true</extensions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <configuration> + <!-- openai-gpt3-java produces warnings --> + <compilerArgs> + <arg>-Xlint:all</arg> + <arg>-Xlint:-rawtypes</arg> + <arg>-Xlint:-unchecked</arg> + <arg>-Xlint:-serial</arg> + </compilerArgs> + </configuration> + </plugin> + <plugin> + <groupId>com.yahoo.vespa</groupId> + <artifactId>abi-check-plugin</artifactId> + </plugin> + </plugins> + </build> + +</project>
\ No newline at end of file diff --git a/model-integration/src/main/java/ai/vespa/llm/client/OpenAiClient.java b/openai-client/src/main/java/ai/vespa/llm/client/openai/OpenAiClient.java index 3f4475b2482..66be5ff1f69 100644 --- a/model-integration/src/main/java/ai/vespa/llm/client/OpenAiClient.java +++ b/openai-client/src/main/java/ai/vespa/llm/client/openai/OpenAiClient.java @@ -1,9 +1,9 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package ai.vespa.llm.client; +package ai.vespa.llm.client.openai; -import ai.vespa.llm.Completion; +import ai.vespa.llm.completion.Completion; import ai.vespa.llm.LanguageModel; -import ai.vespa.llm.Prompt; +import ai.vespa.llm.completion.Prompt; import com.theokanning.openai.OpenAiHttpException; import com.theokanning.openai.completion.CompletionRequest; import com.theokanning.openai.service.OpenAiService; diff --git a/openai-client/src/main/java/ai/vespa/llm/client/openai/package-info.java b/openai-client/src/main/java/ai/vespa/llm/client/openai/package-info.java new file mode 100644 index 00000000000..8b8b99308b0 --- /dev/null +++ b/openai-client/src/main/java/ai/vespa/llm/client/openai/package-info.java @@ -0,0 +1,11 @@ +// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +@ExportPackage +@PublicApi +package ai.vespa.llm.client.openai; + +import com.yahoo.api.annotations.PublicApi; +import com.yahoo.osgi.annotation.ExportPackage; + +/** + * Client to OpenAi's large language models. + */
\ No newline at end of file diff --git a/parent/pom.xml b/parent/pom.xml index f3b9fc9baeb..6b84137b43b 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -566,17 +566,6 @@ <version>${onnxruntime.version}</version> </dependency> <dependency> - <groupId>com.theokanning.openai-gpt3-java</groupId> - <artifactId>service</artifactId> - <version>${openai-gpt3.version}</version> - <exclusions> - <exclusion> - <groupId>com.fasterxml.jackson.core</groupId> - <artifactId>jackson-databind</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> <groupId>com.yahoo.athenz</groupId> <artifactId>athenz-cert-refresher</artifactId> <version>${athenz.version}</version> @@ -1183,7 +1172,6 @@ <netty.version>4.1.86.Final</netty.version> <netty-tcnative.version>2.0.54.Final</netty-tcnative.version> <onnxruntime.version>1.13.1</onnxruntime.version> <!-- WARNING: sync cloud-tenant-base-dependencies-enforcer/pom.xml --> - <openai-gpt3.version>0.12.0</openai-gpt3.version> <org.json.version>20230227</org.json.version> <org.lz4.version>1.8.0</org.lz4.version> <prometheus.client.version>0.6.0</prometheus.client.version> @@ -91,7 +91,6 @@ <module>jdisc_core_test</module> <module>jrt</module> <module>linguistics</module> - <module>opennlp-linguistics</module> <module>linguistics-components</module> <module>logd</module> <module>logserver</module> @@ -102,6 +101,8 @@ <module>model-integration</module> <module>node-repository</module> <module>node-admin</module> + <module>openai-client</module> + <module>opennlp-linguistics</module> <module>orchestrator-restapi</module> <module>orchestrator</module> <module>parent</module> diff --git a/vespajlib/abi-spec.json b/vespajlib/abi-spec.json index 48d519b3a62..fe07460c20b 100644 --- a/vespajlib/abi-spec.json +++ b/vespajlib/abi-spec.json @@ -3995,5 +3995,113 @@ "public void leaving(com.yahoo.yolean.trace.TraceNode)" ], "fields" : [ ] + }, + "ai.vespa.llm.LanguageModel" : { + "superClass" : "java.lang.Object", + "interfaces" : [ ], + "attributes" : [ + "public", + "interface", + "abstract" + ], + "methods" : [ + "public abstract java.util.List complete(ai.vespa.llm.completion.Prompt)" + ], + "fields" : [ ] + }, + "ai.vespa.llm.completion.Completion$FinishReason" : { + "superClass" : "java.lang.Enum", + "interfaces" : [ ], + "attributes" : [ + "public", + "final", + "enum" + ], + "methods" : [ + "public static ai.vespa.llm.completion.Completion$FinishReason[] values()", + "public static ai.vespa.llm.completion.Completion$FinishReason valueOf(java.lang.String)" + ], + "fields" : [ + "public static final enum ai.vespa.llm.completion.Completion$FinishReason length", + "public static final enum ai.vespa.llm.completion.Completion$FinishReason stop" + ] + }, + "ai.vespa.llm.completion.Completion" : { + "superClass" : "java.lang.Record", + "interfaces" : [ ], + "attributes" : [ + "public", + "final", + "record" + ], + "methods" : [ + "public void <init>(java.lang.String, ai.vespa.llm.completion.Completion$FinishReason)", + "public java.lang.String text()", + "public ai.vespa.llm.completion.Completion$FinishReason finishReason()", + "public static ai.vespa.llm.completion.Completion from(java.lang.String)", + "public final java.lang.String toString()", + "public final int hashCode()", + "public final boolean equals(java.lang.Object)" + ], + "fields" : [ ] + }, + "ai.vespa.llm.completion.Prompt" : { + "superClass" : "java.lang.Object", + "interfaces" : [ ], + "attributes" : [ + "public", + "abstract" + ], + "methods" : [ + "public void <init>()", + "public abstract java.lang.String asString()", + "public ai.vespa.llm.completion.Prompt append(ai.vespa.llm.completion.Completion)", + "public abstract ai.vespa.llm.completion.Prompt append(java.lang.String)" + ], + "fields" : [ ] + }, + "ai.vespa.llm.completion.StringPrompt" : { + "superClass" : "ai.vespa.llm.completion.Prompt", + "interfaces" : [ ], + "attributes" : [ + "public" + ], + "methods" : [ + "public java.lang.String asString()", + "public ai.vespa.llm.completion.StringPrompt append(java.lang.String)", + "public ai.vespa.llm.completion.StringPrompt append(ai.vespa.llm.completion.Completion)", + "public java.lang.String toString()", + "public static ai.vespa.llm.completion.StringPrompt from(java.lang.String)", + "public bridge synthetic ai.vespa.llm.completion.Prompt append(java.lang.String)", + "public bridge synthetic ai.vespa.llm.completion.Prompt append(ai.vespa.llm.completion.Completion)" + ], + "fields" : [ ] + }, + "ai.vespa.llm.test.MockLanguageModel$Builder" : { + "superClass" : "java.lang.Object", + "interfaces" : [ ], + "attributes" : [ + "public" + ], + "methods" : [ + "public ai.vespa.llm.test.MockLanguageModel$Builder completer(java.util.function.Function)", + "public void <init>()", + "public ai.vespa.llm.test.MockLanguageModel build()" + ], + "fields" : [ ] + }, + "ai.vespa.llm.test.MockLanguageModel" : { + "superClass" : "java.lang.Object", + "interfaces" : [ + "ai.vespa.llm.LanguageModel" + ], + "attributes" : [ + "public" + ], + "methods" : [ + "public void <init>(ai.vespa.llm.test.MockLanguageModel$Builder)", + "public java.util.List complete(ai.vespa.llm.completion.Prompt)" + ], + "fields" : [ ] } }
\ No newline at end of file diff --git a/model-integration/src/main/java/ai/vespa/llm/LanguageModel.java b/vespajlib/src/main/java/ai/vespa/llm/LanguageModel.java index 0739162c5ee..829b74f7bf4 100644 --- a/model-integration/src/main/java/ai/vespa/llm/LanguageModel.java +++ b/vespajlib/src/main/java/ai/vespa/llm/LanguageModel.java @@ -1,6 +1,8 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package ai.vespa.llm; +import ai.vespa.llm.completion.Completion; +import ai.vespa.llm.completion.Prompt; import com.yahoo.api.annotations.Beta; import java.util.List; diff --git a/model-integration/src/main/java/ai/vespa/llm/Completion.java b/vespajlib/src/main/java/ai/vespa/llm/completion/Completion.java index 5f483a65186..30645b5151f 100644 --- a/model-integration/src/main/java/ai/vespa/llm/Completion.java +++ b/vespajlib/src/main/java/ai/vespa/llm/completion/Completion.java @@ -1,5 +1,5 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package ai.vespa.llm; +package ai.vespa.llm.completion; import com.yahoo.api.annotations.Beta; diff --git a/model-integration/src/main/java/ai/vespa/llm/Prompt.java b/vespajlib/src/main/java/ai/vespa/llm/completion/Prompt.java index 77093d5e21b..d5d0247d6b0 100644 --- a/model-integration/src/main/java/ai/vespa/llm/Prompt.java +++ b/vespajlib/src/main/java/ai/vespa/llm/completion/Prompt.java @@ -1,5 +1,5 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package ai.vespa.llm; +package ai.vespa.llm.completion; import com.yahoo.api.annotations.Beta; diff --git a/model-integration/src/main/java/ai/vespa/llm/StringPrompt.java b/vespajlib/src/main/java/ai/vespa/llm/completion/StringPrompt.java index 0af8388dfb1..e8392ca992e 100644 --- a/model-integration/src/main/java/ai/vespa/llm/StringPrompt.java +++ b/vespajlib/src/main/java/ai/vespa/llm/completion/StringPrompt.java @@ -1,4 +1,4 @@ -package ai.vespa.llm; +package ai.vespa.llm.completion; import com.yahoo.api.annotations.Beta; diff --git a/vespajlib/src/main/java/ai/vespa/llm/completion/package-info.java b/vespajlib/src/main/java/ai/vespa/llm/completion/package-info.java new file mode 100644 index 00000000000..79898c694ca --- /dev/null +++ b/vespajlib/src/main/java/ai/vespa/llm/completion/package-info.java @@ -0,0 +1,11 @@ +// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +@ExportPackage +@PublicApi +package ai.vespa.llm.completion; + +import com.yahoo.api.annotations.PublicApi; +import com.yahoo.osgi.annotation.ExportPackage; + +/** + * Classes for generating text completions with language models. + */
\ No newline at end of file diff --git a/model-integration/src/main/java/ai/vespa/llm/package-info.java b/vespajlib/src/main/java/ai/vespa/llm/package-info.java index 04fc24c51ee..04fc24c51ee 100644 --- a/model-integration/src/main/java/ai/vespa/llm/package-info.java +++ b/vespajlib/src/main/java/ai/vespa/llm/package-info.java diff --git a/model-integration/src/main/java/ai/vespa/llm/test/MockLanguageModel.java b/vespajlib/src/main/java/ai/vespa/llm/test/MockLanguageModel.java index 54b085a451c..d47f43c55b2 100644 --- a/model-integration/src/main/java/ai/vespa/llm/test/MockLanguageModel.java +++ b/vespajlib/src/main/java/ai/vespa/llm/test/MockLanguageModel.java @@ -1,9 +1,9 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package ai.vespa.llm.test; -import ai.vespa.llm.Completion; import ai.vespa.llm.LanguageModel; -import ai.vespa.llm.Prompt; +import ai.vespa.llm.completion.Completion; +import ai.vespa.llm.completion.Prompt; import com.yahoo.api.annotations.Beta; import java.util.List; diff --git a/model-integration/src/main/java/ai/vespa/llm/test/package-info.java b/vespajlib/src/main/java/ai/vespa/llm/test/package-info.java index 0d51815fd6d..0d51815fd6d 100644 --- a/model-integration/src/main/java/ai/vespa/llm/test/package-info.java +++ b/vespajlib/src/main/java/ai/vespa/llm/test/package-info.java diff --git a/model-integration/src/test/java/ai/vespa/llm/CompletionTest.java b/vespajlib/src/test/java/ai/vespa/llm/completion/CompletionTest.java index 30b1c8c2fb1..1c794c64d1a 100644 --- a/model-integration/src/test/java/ai/vespa/llm/CompletionTest.java +++ b/vespajlib/src/test/java/ai/vespa/llm/completion/CompletionTest.java @@ -1,5 +1,8 @@ -package ai.vespa.llm; +package ai.vespa.llm.completion; +import ai.vespa.llm.completion.Completion; +import ai.vespa.llm.completion.Prompt; +import ai.vespa.llm.completion.StringPrompt; import ai.vespa.llm.test.MockLanguageModel; import org.junit.jupiter.api.Test; |