Принимает ли Firebase-AI Java Android SDK только JSONOBjectAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Принимает ли Firebase-AI Java Android SDK только JSONOBject

Сообщение Anonymous »

Ниже приведен код от DOC Firebase-AI, демонстрирующий использование функциональных вызовов с моделью Gemini на Android < /p>
// This function calls a hypothetical external API that returns
// a collection of weather information for a given location on a given date.
// `location` is an object of the form { city: string, state: string }
public JsonObject fetchWeather(Location location, String date) {

// TODO(developer): Write a standard function that would call to an external weather API.

// For demo purposes, this hypothetical response is hardcoded here in the expected format.
return new JsonObject(Map.of(
"temperature", JsonPrimitive(38),
"chancePrecipitation", JsonPrimitive("56%"),
"cloudConditions", JsonPrimitive("partlyCloudy")));
}
< /code>
Поэтому я хочу знать, могу ли я просто вернуть строку JSON или даже любой другой объект, такой как String, Boolean и т. Д. Хотя я не пробовал ничего другого, потому что я не знаю, если не использование jsonObject считается не лучшей практикой
edit
Я попытался вернуть объект Hasmap, и я получил эту ошибку
TypeError: Invalid instance of 'java/util/HashMap' passed for a 'kotlinx/serialization/json/JsonObject'

После дальнейшего изучения по функциям responsepart подписи я обнаружил, что jsonobject является обязательным для использования
$ javap -s -classpath classes.jar com.google.firebase.ai.type.FunctionResponsePart

Compiled from "Part.kt"
public final class com.google.firebase.ai.type.FunctionResponsePart implements com.google.firebase.ai.type.Part {
public com.google.firebase.ai.type.FunctionResponsePart(java.lang.String, kotlinx.serialization.json.JsonObject, java.lang.String);
descriptor: (Ljava/lang/String;Lkotlinx/serialization/json/JsonObject;Ljava/lang/String;)V

public com.google.firebase.ai.type.FunctionResponsePart(java.lang.String, kotlinx.serialization.json.JsonObject, java.lang.String, int, kotlin.jvm.internal.DefaultConstructorMarker);
descriptor: (Ljava/lang/String;Lkotlinx/serialization/json/JsonObject;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V

public final java.lang.String getName();
descriptor: ()Ljava/lang/String;

public final kotlinx.serialization.json.JsonObject getResponse();
descriptor: ()Lkotlinx/serialization/json/JsonObject;

public final java.lang.String getId();
descriptor: ()Ljava/lang/String;

public final com.google.firebase.ai.type.FunctionResponsePart$Internal$FunctionResponse toInternalFunctionCall$com_google_firebase_firebase_ai();
descriptor: ()Lcom/google/firebase/ai/type/FunctionResponsePart$Internal$FunctionResponse;

public com.google.firebase.ai.type.FunctionResponsePart(java.lang.String, kotlinx.serialization.json.JsonObject);
descriptor: (Ljava/lang/String;Lkotlinx/serialization/json/JsonObject;)V
}


Подробнее здесь: https://stackoverflow.com/questions/797 ... ction-call
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»