Caila Java client
Обращаться к сервисам в Caila из программы на Java или Kotlin удобнее с помощью специальной клиентской библиотеки. Caila SDK можно использовать для целей:
- обращения к сервисам на платформе Caila
- создания новых сервисов для Caila
- написания сложных клиентских приложений
SDK доступно на GitHub: https://github.com/just-ai/mlp-java-sdk
Примеры кода с использованием SDK здесь: https://github.com/just-ai/mlp-java-sdk/tree/release/mlp-examples
Подробнее про SDK можно прочитать в соответствующем разделе.
В этой статье мы рассмотрим несколько простых примеров, как вызвать Caila-сервис из программы на Java.
Пример вызова через MlpClientSDK
Добавьте зависимость на mlp-java-sdk.
<repositories>
<repository>
<id>justai-nexus</id>
<url>https://nexus-open.just-ai.com/repository/maven-releases/</url>
</repository>
</repositories>
<dependency>
<groupId>com.mlp</groupId>
<artifactId>mlp-sdk</artifactId>
<version>1.0.0</version>
</dependency>
Установите значение переменной окружения MLP_CLIENT_TOKEN — поместите в неё API-ключ для доступа к Caila.
export MLP_CLIENT_TOKEN=<API-токен>
Пример обращения к сервису vectorizer-caila-roberta через стандартный Caila GRPC клиент.
// Импорт клиента Caila
import com.mlp.sdk.MlpClientSDK
import com.mlp.sdk.MlpExecutionContext.Companion.systemContext
import com.mlp.sdk.utils.JSON
import kotlinx.coroutines.runBlocking
// Объявление вспомогательных классов
data class VectorizerRequest(val texts: List<String>)
data class VectorizerEmbeddings(val vector: List<Double>)
data class VectorizerResponse(val embedded_texts: List<VectorizerEmbeddings>)
fun main() = runBlocking {
// Установка параметров запроса
val account = "just-ai"
val model = "vectorizer-caila-roberta"
// Инициализация клиента
val sdk = MlpClientSDK(context = systemContext)
// Отправка запроса и вывод ответа
val req = VectorizerRequest(texts = listOf("hello"))
val res = sdk.predict(account, model, JSON.stringify(req))
println(res)
// Завершение работы клиента
sdk.shutdown()
}