This is an automated email from the ASF dual-hosted git repository.

fmariani pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 0fffdc33ac1bc156b77de9bd13fea00b6fe35317
Author: Guillaume Nodet <[email protected]>
AuthorDate: Mon Mar 23 21:11:06 2026 +0100

    Add missing configurable properties to Milvus helpers
    
    - MilvusHelperSearch: add offset and consistencyLevel properties
      (consistencyLevel was hardcoded to STRONG)
    - MilvusHelperCreateIndex: add indexName property
    
    Co-Authored-By: Claude Opus 4.6 <[email protected]>
---
 .../milvus/helpers/MilvusHelperCreateIndex.java    | 23 +++++++++++++---
 .../milvus/helpers/MilvusHelperSearch.java         | 31 +++++++++++++++++++++-
 2 files changed, 50 insertions(+), 4 deletions(-)

diff --git 
a/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperCreateIndex.java
 
b/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperCreateIndex.java
index 3f749e802c19..492aded93a52 100644
--- 
a/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperCreateIndex.java
+++ 
b/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperCreateIndex.java
@@ -32,6 +32,7 @@ public class MilvusHelperCreateIndex implements Processor {
 
     private String collectionName = "default_collection";
     private String vectorFieldName = "embedding";
+    private String indexName;
     private String indexType = "IVF_FLAT";
     private String metricType = "COSINE";
     private String extraParam = "{\"nlist\": 128}";
@@ -41,14 +42,19 @@ public class MilvusHelperCreateIndex implements Processor {
         IndexType idxType = IndexType.valueOf(indexType);
         MetricType metric = MetricType.valueOf(metricType);
 
-        CreateIndexParam param = CreateIndexParam.newBuilder()
+        CreateIndexParam.Builder builder = CreateIndexParam.newBuilder()
                 .withCollectionName(collectionName)
                 .withFieldName(vectorFieldName)
                 .withIndexType(idxType)
                 .withMetricType(metric)
                 .withExtraParam(extraParam)
-                .withSyncMode(Boolean.TRUE)
-                .build();
+                .withSyncMode(Boolean.TRUE);
+
+        if (indexName != null && !indexName.isEmpty()) {
+            builder.withIndexName(indexName);
+        }
+
+        CreateIndexParam param = builder.build();
 
         exchange.getIn().setBody(param);
         exchange.getIn().setHeader(MilvusHeaders.ACTION, 
MilvusAction.CREATE_INDEX);
@@ -70,6 +76,17 @@ public class MilvusHelperCreateIndex implements Processor {
         this.vectorFieldName = vectorFieldName;
     }
 
+    public String getIndexName() {
+        return indexName;
+    }
+
+    /**
+     * @param indexName the name to assign to the index (e.g., {@code 
myVectorIndex})
+     */
+    public void setIndexName(String indexName) {
+        this.indexName = indexName;
+    }
+
     public String getIndexType() {
         return indexType;
     }
diff --git 
a/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperSearch.java
 
b/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperSearch.java
index e13e184f8bec..20d66307d317 100644
--- 
a/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperSearch.java
+++ 
b/components/camel-ai/camel-milvus/src/main/java/org/apache/camel/component/milvus/helpers/MilvusHelperSearch.java
@@ -36,6 +36,8 @@ public class MilvusHelperSearch implements Processor {
     private String collectionName = "default_collection";
     private String outputFields = "content";
     private String limit = "10";
+    private String offset = "0";
+    private String consistencyLevel = "STRONG";
     private String filter;
 
     @SuppressWarnings("unchecked")
@@ -55,12 +57,16 @@ public class MilvusHelperSearch implements Processor {
             }
         }
 
+        long searchOffset = Long.parseLong(offset);
+        ConsistencyLevelEnum consistency = 
ConsistencyLevelEnum.valueOf(consistencyLevel);
+
         SearchSimpleParam.Builder builder = SearchSimpleParam.newBuilder()
                 .withCollectionName(collectionName)
                 .withVectors(queryEmbedding)
                 .withLimit(searchLimit)
+                .withOffset(searchOffset)
                 .withOutputFields(fields)
-                .withConsistencyLevel(ConsistencyLevelEnum.STRONG);
+                .withConsistencyLevel(consistency);
 
         if (filter != null && !filter.isEmpty()) {
             builder.withFilter(filter);
@@ -103,6 +109,29 @@ public class MilvusHelperSearch implements Processor {
         this.limit = limit;
     }
 
+    public String getOffset() {
+        return offset;
+    }
+
+    /**
+     * @param offset the number of results to skip as a string (e.g., {@code 
0}, {@code 10})
+     */
+    public void setOffset(String offset) {
+        this.offset = offset;
+    }
+
+    public String getConsistencyLevel() {
+        return consistencyLevel;
+    }
+
+    /**
+     * @param consistencyLevel the Milvus {@link 
io.milvus.common.clientenum.ConsistencyLevelEnum} enum name (e.g.,
+     *                         {@code STRONG}, {@code BOUNDED}, {@code 
EVENTUALLY})
+     */
+    public void setConsistencyLevel(String consistencyLevel) {
+        this.consistencyLevel = consistencyLevel;
+    }
+
     public String getFilter() {
         return filter;
     }

Reply via email to