搜图引擎Javasdk

groot 45f5477f71 Fix a bug of collection schema cache for V1 and V2 (#1447) 7 kuukautta sitten
.github 9dd6d230f0 Add checkHealth/getPersistentSegmentInfo/getQuerySegmentInfo/transferNode interfaces (#1373) 9 kuukautta sitten
doc 96874ab954 Update doc (#1035) 1 vuosi sitten
examples 210e93f897 Fix a bug of SearchResultsWrapper.getRowRecords() that returns wrong data for output fields (#1443) 7 kuukautta sitten
sdk-bulkwriter 4fb6310ed9 BulkWriter supports Int8Vector (#1440) 7 kuukautta sitten
sdk-core 45f5477f71 Fix a bug of collection schema cache for V1 and V2 (#1447) 7 kuukautta sitten
tests 98775b9029 Make CreateSchema() to be static (#1398) 9 kuukautta sitten
.gitignore 1044dc68d9 Change example code path (#1295) 1 vuosi sitten
.gitmodules a14f8e93cd Split to 2 packages (#1224) 1 vuosi sitten
CHANGELOG.md f60245e6c3 Prepare for v2.6.0 (#1431) (#1432) 7 kuukautta sitten
CODE_REVIEW.md d041eef7f7 Add code review.md (#216) 4 vuotta sitten
CONTRIBUTING.md 38971b3c3c add CONTRIBUTING.md 6 vuotta sitten
DEVELOPMENT.md a14f8e93cd Split to 2 packages (#1224) 1 vuosi sitten
LICENSE d986181d72 Initial commit 6 vuotta sitten
OWNERS 166b8381de Add maintainer member (#327) 3 vuotta sitten
README.md 6d55b59c39 Add Development section to README.md (#1436) 7 kuukautta sitten
docker-compose.yml 45f5477f71 Fix a bug of collection schema cache for V1 and V2 (#1447) 7 kuukautta sitten
pom.xml f60245e6c3 Prepare for v2.6.0 (#1431) (#1432) 7 kuukautta sitten

README.md

Milvus Java SDK

Maven Central

Java SDK for Milvus. To contribute to this project, please read our contribution guidelines first.

Getting started

Prerequisites

-   Java 8 or higher
-   Apache Maven or Gradle

The following table shows compatibilities between Milvus and Java SDK.

Milvus version Java SDK version
2.0 2.0.4
2.1 2.1.0-beta4
2.2.0 ~ 2.2.8 2.2.0 ~ 2.2.5
>= 2.2.9 2.2.7 ~ 2.2.15
2.3.x 2.3.11
2.4.x 2.4.11
2.5.x 2.5.10
2.6.x 2.6.0

Install Java SDK

You can use Apache Maven or Gradle add Milvus SDK to your project.

  • Apache Maven

        <dependency>
            <groupId>io.milvus</groupId>
            <artifactId>milvus-sdk-java</artifactId>
            <version>2.6.0</version>
        </dependency>
    
  • Gradle/Groovy

    ```groovy
    implementation 'io.milvus:milvus-sdk-java:2.6.0'
    ```
    
  • Gradle/Kotlin

    ```kotlin
    implementation("io.milvus:milvus-sdk-java:2.6.0")
    ```
    

From v2.5.2, milvus Java SDK is split into two packages: milvus-sdk-java and milvus-sdk-java-bulkwriter, because BulkWriter requires quite a lot of dependencies. If you don't need BulkWriter tool, you can ignore the milvus-sdk-java-bulkwriter package. To use BulkWriter, import milvus-sdk-java-bulkwriter to your project.

  • Apache Maven

     <dependency>
         <groupId>io.milvus</groupId>
         <artifactId>milvus-sdk-java-bulkwriter</artifactId>
         <version>2.6.0</version>
     </dependency>
    
  • Gradle/Groovy

     implementation 'io.milvus:milvus-sdk-java-bulkwriter:2.6.0'
    
  • Gradle/Kotlin

     implementation("io.milvus:milvus-sdk-java-bulkwriter:2.6.0")
    

Examples

Please refer to examples folder for Java SDK examples.

Documentation

Troubleshooting

  • If you encounter the following error when running your application:

    Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
    

    This is because SLF4J jar files need to be added into your application's classpath. SLF4J is required by Java SDK for logging purpose.

To fix this issue, you can use Apache Maven or Gradle to download the required jar files.

- Apache Maven

    ```xml
     <dependency>
         <groupId>org.slf4j</groupId>
         <artifactId>slf4j-api</artifactId>
         <version>1.7.30</version>
     </dependency>
    ```

- Gradle/Groovy

     ```groovy
     compile group: 'org.slf4j', name: 'slf4j-api', version: '1.7.30'
     ```
- Gradle/Kotlin

    ```kotlin
    implementation("org.slf4j:slf4j-api:1.7.30")
    ```

Development

For developers interested in contributing to the Milvus Java SDK, please refer to our DEVELOPMENT.md file. This document provides detailed instructions on:

  • Setting up your development environment
  • Cloning the repository
  • Building the SDK
  • Updating Milvus proto files
  • Running tests
  • Contributing guidelines

We welcome contributions from the community!