Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ The app combines a variety of different Google technologies, such as:
## Setup and installation

1. Clone the repository.
2. Create a [Firebase project](https://firebase.google.com/products/vertex-ai-in-firebase) and
2. Create a [Firebase project](https://firebase.google.com/products/firebase-ai-logic) and
generate a `google-services.json` file.
Replace the current placeholder app/google-services.json file with your own json file created
above. Be sure to enable Vertex AI SDK.
Expand All @@ -51,4 +51,4 @@ See [Contributing](CONTRIBUTING.md).
## License

Androidify 2.0 is licensed under the [Apache License 2.0](LICENSE). See the `LICENSE` file for
details.
details.
2 changes: 1 addition & 1 deletion app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ dependencies {

implementation(platform(libs.firebase.bom))
implementation(libs.firebase.crashlytics)
implementation(libs.firebase.vertexai)
implementation(libs.firebase.ai)
implementation(libs.firebase.app.check)
implementation(libs.firebase.config)
implementation(libs.firebase.appcheck.debug)
Expand Down
2 changes: 1 addition & 1 deletion core/network/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ dependencies {
implementation(libs.coil.compose.http)
implementation(libs.coil.gif)
implementation(platform(libs.firebase.bom))
implementation(libs.firebase.vertexai)
implementation(libs.firebase.ai)
implementation(libs.firebase.analytics) {
exclude(group = "com.google.guava")
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,19 +22,20 @@ import com.android.developers.androidify.model.ImageValidationError
import com.android.developers.androidify.model.ValidatedDescription
import com.android.developers.androidify.model.ValidatedImage
import com.google.firebase.Firebase
import com.google.firebase.vertexai.GenerativeModel
import com.google.firebase.vertexai.ImagenModel
import com.google.firebase.vertexai.type.HarmBlockThreshold
import com.google.firebase.vertexai.type.HarmCategory
import com.google.firebase.vertexai.type.ImagenPersonFilterLevel
import com.google.firebase.vertexai.type.ImagenSafetyFilterLevel
import com.google.firebase.vertexai.type.ImagenSafetySettings
import com.google.firebase.vertexai.type.PublicPreviewAPI
import com.google.firebase.vertexai.type.SafetySetting
import com.google.firebase.vertexai.type.Schema
import com.google.firebase.vertexai.type.content
import com.google.firebase.vertexai.type.generationConfig
import com.google.firebase.vertexai.vertexAI
import com.google.firebase.ai.GenerativeModel
import com.google.firebase.ai.ImagenModel
import com.google.firebase.ai.type.HarmBlockThreshold
import com.google.firebase.ai.type.HarmCategory
import com.google.firebase.ai.type.ImagenPersonFilterLevel
import com.google.firebase.ai.type.ImagenSafetyFilterLevel
import com.google.firebase.ai.type.ImagenSafetySettings
import com.google.firebase.ai.type.PublicPreviewAPI
import com.google.firebase.ai.type.SafetySetting
import com.google.firebase.ai.type.Schema
import com.google.firebase.ai.type.content
import com.google.firebase.ai.type.generationConfig
import com.google.firebase.ai.ai
import com.google.firebase.ai.type.GenerativeBackend
import kotlinx.serialization.json.Json
import kotlinx.serialization.json.booleanOrNull
import kotlinx.serialization.json.decodeFromJsonElement
Expand Down Expand Up @@ -73,7 +74,7 @@ class FirebaseAiDataSourceImpl @Inject constructor(
private val remoteConfigDataSource: RemoteConfigDataSource,
) : FirebaseAiDataSource {
private fun createGenerativeTextModel(jsonSchema: Schema, temperature: Float? = null): GenerativeModel {
return Firebase.vertexAI.generativeModel(
return Firebase.ai(backend = GenerativeBackend.vertexAI()).generativeModel(
modelName = remoteConfigDataSource.textModelName(),
generationConfig = generationConfig {
responseMimeType = "application/json"
Expand All @@ -91,7 +92,7 @@ class FirebaseAiDataSourceImpl @Inject constructor(
}

private fun createGenerativeImageModel(): ImagenModel {
return Firebase.vertexAI.imagenModel(
return Firebase.ai(backend = GenerativeBackend.vertexAI()).imagenModel(
remoteConfigDataSource.imageModelName(),
safetySettings =
ImagenSafetySettings(
Expand Down
4 changes: 2 additions & 2 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ coreKtx = "1.15.0"
coreSplashscreen = "1.0.1"
crashlytics = "3.0.3"
espressoCore = "3.6.1"
firebaseBom = "33.13.0"
firebaseBom = "33.14.0"
firebaseConfigKtx = "22.1.1"
googleServices = "4.4.2"
hiltAndroid = "2.56.2"
Expand Down Expand Up @@ -107,7 +107,7 @@ firebase-bom = { module = "com.google.firebase:firebase-bom", version.ref = "fir
firebase-config = { module = "com.google.firebase:firebase-config" }
firebase-config-ktx = { group = "com.google.firebase", name = "firebase-config-ktx", version.ref = "firebaseConfigKtx" }
firebase-crashlytics = { module = "com.google.firebase:firebase-crashlytics" }
firebase-vertexai = { module = "com.google.firebase:firebase-vertexai" }
firebase-ai = { module = "com.google.firebase:firebase-ai" }
hilt-android = { group = "com.google.dagger", name = "hilt-android", version.ref = "hiltAndroid" }
hilt-android-testing = { group = "com.google.dagger", name = "hilt-android-testing", version.ref = "hiltAndroid" }
hilt-compiler = { group = "com.google.dagger", name = "hilt-compiler", version.ref = "hiltAndroid" }
Expand Down