summaryrefslogtreecommitdiffstats
path: root/configdefinitions
diff options
context:
space:
mode:
authorOla Aunrønning <olaa@yahooinc.com>2023-06-08 10:58:17 +0200
committerGitHub <noreply@github.com>2023-06-08 10:58:17 +0200
commit79de2d78433c11932357d0c244704b16fc87da21 (patch)
tree382a06ce4e1217e395fbba25c1ce74a1afaadbe5 /configdefinitions
parent96d3814b80a693ee46640ae89a88fdb2d78dcd40 (diff)
parentd7568f0d450df2287657ac18c37955a1867496f5 (diff)
Merge branch 'master' into olaa/dataplane-proxy-config
Diffstat (limited to 'configdefinitions')
-rw-r--r--configdefinitions/pom.xml4
-rw-r--r--configdefinitions/src/main/java/com/yahoo/embedding/huggingface/package-info.java9
-rw-r--r--configdefinitions/src/main/java/com/yahoo/language/huggingface/config/package-info.java9
-rw-r--r--configdefinitions/src/vespa/CMakeLists.txt6
-rw-r--r--configdefinitions/src/vespa/bert-base-embedder.def32
-rw-r--r--configdefinitions/src/vespa/fleetcontroller.def1
-rw-r--r--configdefinitions/src/vespa/hugging-face-embedder.def31
-rw-r--r--configdefinitions/src/vespa/hugging-face-tokenizer.def13
8 files changed, 104 insertions, 1 deletions
diff --git a/configdefinitions/pom.xml b/configdefinitions/pom.xml
index 51221c4899f..e163f0292b5 100644
--- a/configdefinitions/pom.xml
+++ b/configdefinitions/pom.xml
@@ -32,6 +32,10 @@
<groupId>com.yahoo.vespa</groupId>
<artifactId>bundle-plugin</artifactId>
<extensions>true</extensions>
+ <configuration>
+ <bundleType>CORE</bundleType>
+ <suppressWarningMissingImportPackages>true</suppressWarningMissingImportPackages>
+ </configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
diff --git a/configdefinitions/src/main/java/com/yahoo/embedding/huggingface/package-info.java b/configdefinitions/src/main/java/com/yahoo/embedding/huggingface/package-info.java
new file mode 100644
index 00000000000..7bcc994e616
--- /dev/null
+++ b/configdefinitions/src/main/java/com/yahoo/embedding/huggingface/package-info.java
@@ -0,0 +1,9 @@
+// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+
+/**
+ * @author bjorncs
+ */
+@ExportPackage
+package com.yahoo.embedding.huggingface;
+
+import com.yahoo.osgi.annotation.ExportPackage; \ No newline at end of file
diff --git a/configdefinitions/src/main/java/com/yahoo/language/huggingface/config/package-info.java b/configdefinitions/src/main/java/com/yahoo/language/huggingface/config/package-info.java
new file mode 100644
index 00000000000..fb9048b5fb4
--- /dev/null
+++ b/configdefinitions/src/main/java/com/yahoo/language/huggingface/config/package-info.java
@@ -0,0 +1,9 @@
+// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+
+/**
+ * @author bjorncs
+ */
+@ExportPackage
+package com.yahoo.language.huggingface.config;
+
+import com.yahoo.osgi.annotation.ExportPackage; \ No newline at end of file
diff --git a/configdefinitions/src/vespa/CMakeLists.txt b/configdefinitions/src/vespa/CMakeLists.txt
index 6a737e6f57d..496e92916ee 100644
--- a/configdefinitions/src/vespa/CMakeLists.txt
+++ b/configdefinitions/src/vespa/CMakeLists.txt
@@ -84,4 +84,8 @@ vespa_generate_config(configdefinitions proton.def)
install_config_definition(proton.def vespa.config.search.core.proton.def)
vespa_generate_config(configdefinitions hwinfo.def)
vespa_generate_config(configdefinitions dataplane-proxy.def)
-install_config_definition(dataplane-proxy.def cloud.config.dataplane-proxy.def) \ No newline at end of file
+install_config_definition(dataplane-proxy.def cloud.config.dataplane-proxy.def)
+install_config_definition(hugging-face-embedder.def embedding.huggingface.hugging-face-embedder.def)
+install_config_definition(hugging-face-tokenizer.def language.huggingface.config.hugging-face-tokenizer.def)
+install_config_definition(bert-base-embedder.def embedding.bert-base-embedder.def)
+
diff --git a/configdefinitions/src/vespa/bert-base-embedder.def b/configdefinitions/src/vespa/bert-base-embedder.def
new file mode 100644
index 00000000000..2d8e840377b
--- /dev/null
+++ b/configdefinitions/src/vespa/bert-base-embedder.def
@@ -0,0 +1,32 @@
+
+namespace=embedding
+
+# Wordpiece tokenizer
+tokenizerVocab model
+
+transformerModel model
+
+# Max length of token sequence model can handle
+transformerMaxTokens int default=384
+
+# Pooling strategy
+poolingStrategy enum { cls, mean } default=mean
+
+# Input names
+transformerInputIds string default=input_ids
+transformerAttentionMask string default=attention_mask
+transformerTokenTypeIds string default=token_type_ids
+
+# special token ids
+transformerStartSequenceToken int default=101
+transformerEndSequenceToken int default=102
+
+# Output name
+transformerOutput string default=output_0
+
+# Settings for ONNX model evaluation
+onnxExecutionMode enum { parallel, sequential } default=sequential
+onnxInterOpThreads int default=1
+onnxIntraOpThreads int default=-4 # n=number of threads -> n<0: CPUs/(-n), n==0: CPUs, n>0: n
+# GPU device id, -1 for CPU
+onnxGpuDevice int default=0
diff --git a/configdefinitions/src/vespa/fleetcontroller.def b/configdefinitions/src/vespa/fleetcontroller.def
index 93a20e4ee0d..c3e161eb038 100644
--- a/configdefinitions/src/vespa/fleetcontroller.def
+++ b/configdefinitions/src/vespa/fleetcontroller.def
@@ -29,6 +29,7 @@ master_zookeeper_cooldown_period double default=60.0
## If set to 1, only master will gather state. If set higher, others will
## also do so, prioritizing those fleetcontrollers likely to be the ones to
## take over if the master fails.
+# TODO: Deprecated, not used anymore, remove in Vespa 9
state_gather_count int default=1
## Location of ZooKeeper servers
diff --git a/configdefinitions/src/vespa/hugging-face-embedder.def b/configdefinitions/src/vespa/hugging-face-embedder.def
new file mode 100644
index 00000000000..7ea4227b3cd
--- /dev/null
+++ b/configdefinitions/src/vespa/hugging-face-embedder.def
@@ -0,0 +1,31 @@
+namespace=embedding.huggingface
+
+# Path to tokenizer.json
+tokenizerPath model
+
+# Path to model.onnx
+transformerModel model
+
+# Max length of token sequence model can handle
+transformerMaxTokens int default=512
+
+# Input names
+transformerInputIds string default=input_ids
+transformerAttentionMask string default=attention_mask
+transformerTokenTypeIds string default=token_type_ids
+
+# Output name
+transformerOutput string default=last_hidden_state
+
+
+# Normalize tensors from tokenizer
+normalize bool default=false
+
+poolingStrategy enum { cls, mean } default=mean
+
+# Settings for ONNX model evaluation
+transformerExecutionMode enum { parallel, sequential } default=sequential
+transformerInterOpThreads int default=1
+transformerIntraOpThreads int default=-4
+# GPU device id, -1 for CPU
+transformerGpuDevice int default=0
diff --git a/configdefinitions/src/vespa/hugging-face-tokenizer.def b/configdefinitions/src/vespa/hugging-face-tokenizer.def
new file mode 100644
index 00000000000..18b3631e494
--- /dev/null
+++ b/configdefinitions/src/vespa/hugging-face-tokenizer.def
@@ -0,0 +1,13 @@
+# Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+
+namespace=language.huggingface.config
+
+# The language a model is for, one of the language tags in com.yahoo.language.Language.
+# Use "unknown" for models to be used with any language.
+model[].language string
+# The path to the model relative to the application package root
+model[].path model
+
+addSpecialTokens bool default=true
+maxLength int default=-1
+truncation bool default=false \ No newline at end of file