Membuat Aplikasi Content Generator sederhana dengan Gemini AI

Cara Membuat Aplikasi Content Generator Sederhana dengan Gemini AI

Pendahuluan

 Generative AI adalah salah satu cabang dari artificial intelligence atau kecerdasan buatan yang dapat menghasilkan atau membuat berbagai tipe konten, mulai dari teks, gambar, audio, hingga video. Akhir-akhir ini generative AI semakin populer dengan adanya Chat GPT dan Bard yang dapat menghasilkan berbagai konten berbasis teks dan Dall-E yang menghasilkan konten berbasis gambar.  Bahkan Generative AI juga bisa memeberi tahu kita cara membuat aplikasi yang akan kita segera bahas. Tentu masih banyak lagi produk generative AI lainnya di luar sana, tetapi beberapa yang sudah disebutkan adalah yang paling populer. 

Namun, selain yang sudah disebutkan, ada model AI baru yang diperkenalkan oleh Google dengan kemampuan generative AI juga. Model tersebut bernama Gemini. Model Gemini yang diperkenalkan oleh Google ini memiliki tiga varian, yaitu Gemini Ultra, Gemini Pro, dan Gemini Nano. 

Setiap variannya memiliki peruntukan dan kemampuannya masing-masing. Gemini Ultra adalah model dengan kemampuan paling tinggi untuk tugas yang kompleks, Gemini Pro adalah model terbaik untuk mengerjakan berbagai tugas, dan Gemini Nano adalah model paling ringan dan efisien yang bisa langsung dijalankan pada mobile device.

Nah, dalam artikel ini kita akan belajar cara membuat aplikasi content generator sederhana dengan menggunakan model Gemini Nano.

Persiapan 

  • Android Studio

Untuk mengikuti proses pembuatan aplikasi content generator sederhana ini, sebenarnya bisa saja menggunakan Android Studio versi stable terbaru (Hedgehog 2023.1.1). Namun, akan lebih mudah lagi jika kita menggunakan Android studio versi canary (Jellyfish 2023.3.1). Hal ini karena pada versi tersebut sudah tersedia starter project khusus untuk menggunakan Gemini API. Untuk mengunduh Android studio versi Jellyfish, kamu bisa langsung menuju halaman Android Studio Preview Release dan pilih Canary build.

💻 Mulai Belajar Pemrograman

Belajar pemrograman di Dicoding Academy dan mulai perjalanan Anda sebagai developer profesional.

Daftar Sekarang
  • Membuat Project Baru

Setelah berhasil mengunduh dan menginstal Android Studio Jellyfish, selanjutnya mari kita membuat project baru.

Buka Android Studio → Pilih New Project → Pilih Gemini API Starter dan klik Next.
cara membuat project baru

Selanjutnya kita tinggal sesuaikan saja kolom yang ingin diubah. Contohnya di bawah ini. Jika sudah, klik Next.

Konfigurasi project baru

Selanjutnya kita akan diminta Gemini API Key. Untuk mendapatkan API key, kamu bisa klik bagian Generate API Key with Google AI Studio.

Input API Key

Kita akan diarahkan ke halaman dengan tampilan seperti di bawah ini. Setelah itu,  generate API key dengan klik Create API key in new Project atau Create API in existing project.

cara me-generate API Key untuk aplikasi kita

Setelah API key berhasil dibuat, langsung copy kemudian paste di kolom Android Studio sebelumnya.

Salin API Key

Terakhir, klik Finish kemudian tunggu proses build project selesai.

  • Menjalankan Project Baru

Secara default, ketika kita membuat aplikasi dengan starter project Gemini API, sudah tersedia layout dan logic yang bisa digunakan untuk merangkum teks yang dimasukkan. Tanpa mengubah satu baris kode pun kita sudah bisa menggunakan kecanggihan AI dari Gemini. Berikut adalah tampilan saat pertama kali dijalankan.

Starter project Gemini API

Cara Membuat Aplikasi Content Generator

Starter yang dibuat secara default akan menggunakan Kotlin sebagai salah satu dari macam-macam bahasa pemrograman untuk pengembangan aplikasi mobile. Sementara itu, tampilannya sendiri sudah menggunakan UI tools yang baru untuk Android, yaitu Jetpack Compose.

Pada artikel ini, kita akan mengubah starter project yang hanya bisa merangkum teks input menjadi content generator sederhana dengan beberapa masukan, seperti topik, tone, format, dan panjang konten. Hasil dari aplikasi yang akan kita buat sebagai berikut.

Cara membuat aplikasi content generator

  • Mengubah File SummarizeUiState.kt

Pertama-tama, hal yang kita ubah adalah SummarizeUiState menjadi ContentGeneratorUiState dan menyesuaikan isinya menjadi seperti berikut.


ContentGeneratorUiState ini akan kita gunakan untuk mengelola state dari UI yang akan dibuat nanti.

  • Menambahkan File GeneraiEnum.kt

Selanjutnya adalah kita menambahkan file GeneraiEnum.kt dengan isi kode berikut.


Dalam file GeneraiEnum.kt di atas ada beberapa enum class, seperti Tone, Format, dan Length yang akan kita gunakan sebagai input untuk mengatur konten yang akan dihasilkan.

  • Mengubah File SummarizeViewModel.kt

Selanjutnya, kita mengubah SummarizeViewModel.kt menjadi ContentGeneratorViewModel.kt. Kemudian, sesuaikan isinya menjadi seperti di bawah ini.


Kode pada ViewModel di atas adalah salah satu bagian paling penting karena kita menggunakan kelas GenerativeModel yang disediakan oleh library Gemini. Pada ViewModel ini juga, ada fungsi generateContent() yang kita buat dengan parameter topic, tone, format, dan length. Parameter-parameter tersebut kemudian diolah menjadi sebuah prompt yang kemudian menjadi argumen untuk model Gemini.

  • Mengubah File MainActivity.kt

Terakhir, kita sesuaikan kode pada MainActivity untuk membuat tampilan seperti yang sudah disiapkan. Pada MainActivity ini, ada beberapa composable function yang akan disesuaikan sebagai berikut.

  • Menyiapkan resource strings.xml.

Sebelum melakukan perubahan pada MainActivity.kt, pertama-tama kita siapkan resource strings.xml terlebih dulu agar pengelolaan teks yang kita gunakan lebih mudah dan konsisten.

  • Menambahkan composable function ContentGenerator.

Di MainActivity, pertama kita menambahkan composable function baru untuk layout form utama kita dengan kode seperti di bawah ini.


Pada pembuatan composable function baru di atas pastikan untuk melakukan import dari resource yang diperlukan agar tidak terjadi error. Misalnya untuk komponen RadioButton kita perlu import dari material3 atau androidx.compose.material3.RadioButton.

  • SummarizeScreen menjadi ContentGeneratorScreen.

Selanjutnya, kita ubah composable SummarizeScreen yang sudah ada sebelumnya menjadi ContentGeneratorScreen. Kemudian kita panggil composable ContentGenerator yang sudah dibuat sebelumnya.

  • SummarizeRoute menjadi ContentGeneratorRoute.

Setelah mengubah SummarizeScreen, lalu kita ubah SummarizeRoute menjadi ContentGeneratorRoute dengan kode seperti di bawah ini.

  • Mengubah class MainActivity

Terakhir, ubah isi dari class MainActivity itu sendiri. Pada bagian ini kita hanya mengubah pemanggil route dari SummarizeRoute menjadi ContentGeneratorRoute dengan parameter object dari ContentGeneratorViewModel.

Menjalankan Aplikasi

Yeay, akhirnya selesai juga. Sekarang saatnya kita coba jalankan project yang kita sudah buat di atas. Jika semuanya lancar, seharusnya tampilannya akan sama persis seperti di bawah ini.

Hasil dari aplikasi content generator

Mari kita coba aplikasi ini dengan membuat konten paragraf pendek bertopik “Gemini AI” dan memiliki tone informatif. Setelah kita klik Generate Content, hasilnya akan seperti di bawah ini.

Percobaan Aplikasi Content Generator

Dengan percobaan di atas, itu sama saja dengan menjalankan Gemini AI dengan sebuah prompt “Compose a short paragraph addressing Gemini AI, employing a informative style”.

Penutup

Akhirnya, kita telah menyelesaikan langkah-langkah untuk membuat aplikasi Generative AI sederhana menggunakan model Gemini di Android Studio. Dari desain antarmuka hingga integrasi model Generative AI, kita telah memahami esensi proses pengembangan aplikasi yang menerapkan kecerdasan buatan.

Untuk pengembangan selanjutnya, kamu bisa eksplorasi konsep-konsep atau contoh-contoh yang telah disediakan oleh tim Android. Gemini sendiri tidak hanya bisa menerima input teks, tetapi bisa mengenali gambar juga. Jadi, kamu bisa coba sekreatif mungkin untuk memanfaatkan model Gemini ini.

Oh iya, jika kamu ingin melihat kodenya secara keseluruhan atau bahkan kontribusi untuk improvement, silakan cek langsung di repository GitHub.

Sekian dulu artikel dari kami, semoga bisa membantu kamu yang sedang belajar. Sampai jumpa dalam artikel selanjutnya!


Belajar Pemrograman Gratis
Belajar pemrograman di Dicoding Academy dan mulai perjalanan Anda sebagai developer profesional.