‘Panduan Menu Makanan’ AI Generatif yang menyesuaikan makanan yang Anda inginkan

MEI 16, 2023
Avneet Singh Product Manager Google Partner Innovation

Tim Google Partner Innovation sedang mengembangkan serangkaian template AI Generatif yang menampilkan berbagai kemungkinan ketika menggabungkan Model Bahasa Besar dengan Google API dan teknologi terkini untuk menyelesaikan kasus penggunaan industri tertentu.

generativeAIRecipe1

Ringkasan

Kita semua menggunakan internet untuk mencari resep, dan kita semua menggunakan internet untuk mencari saran ketika menghadapi tantangan baru dalam kehidupan. Namun, bagaimana jika dengan menggunakan AI Generatif, kita dapat menggabungkan kekuatan super ini dan menciptakan koki pribadi unik yang akan mendengarkan bagaimana hari Anda, bagaimana perasaan Anda, apa yang Anda pikirkan…lalu menciptakan hidangan baru dan kreatif dengan bahan-bahan unik berdasarkan suasana hati Anda.

generativeAIRecipe2

MoodFood memberikan cara yang menyenangkan untuk menemukan resep tradisional, bertindak sebagai ‘Food Therapist’ dengan bertanya kepada pengguna bagaimana perasaan mereka atau apa yang ingin mereka rasakan, dan menghasilkan resep jenaka yang terinspirasi oleh hidangan klasik seperti ‘Heartbreak Soup’ atau ‘Monday Blues Lasagne’ hingga ‘resep’ untuk kehidupan nyata agar membuat calon Ibu Mertua Anda terkesan.

Dalam contoh di atas, pengguna memberikan input tentang kepanikan mereka dan perlu membuat ibu pacar mereka terkesan, jadi pengalaman kami merekomendasikan ‘My Future Mother-in-Law's Chicken Soup’, resep baru dan nama hidangan yang dihasilkan hanya berdasarkan input pengguna. MoodFood kemudian menghasilkan ‘kartu‘ resep grafis dan daftar bahan/resep yang diformat yang dapat digunakan untuk diserahkan ke situs mitra untuk dipenuhi.

Potensi Kasus Penggunaan berawal dari penemuan produk yang belum pernah ada. Menanyakan suasana hati pengguna dapat berupa memunculkan rekomendasi lagu di aplikasi musik, tujuan perjalanan untuk mitra pariwisata, atau resep aktual untuk dipesan dari aplikasi Pengiriman Makanan. Template ini juga dapat digunakan sebagai mekanisme penemuan untuk kasus penggunaan eCommerce dan Retail. LLM membuka dunia eksplorasi dan kemungkinan baru. Kami ingin pengguna melihat kekuatan LLM untuk menggabungkan aneka bahan yang dikenal, menempatkannya dalam konteks yang sangat berbeda seperti suasana hati dan menciptakan hal baru yang dapat dicoba pengguna!

Implementasi

Kami ingin mengeksplorasi bagaimana kami dapat menggunakan PaLM API dengan cara yang berbeda melalui beragam pengalaman, sehingga kami menggunakan API tersebut beberapa kali untuk tujuan yang berbeda. Misalnya, menghasilkan respons yang lucu, membuat resep, membuat format terstruktur, menjadi pengaman, dan lain sebagainya.

generativeAIRecipe3

Dalam demo saat ini, kami menggunakan LLM empat kali. Pertama, mendorong LLM untuk menjadi kreatif dan menciptakan resep untuk pengguna berdasarkan input dan konteks pengguna. Prompt kedua memformat respons json. Prompt ketiga memastikan penamaan sudah sesuai sebagai pengaman. Prompt terakhir mengubah resep yang tidak terstruktur menjadi resep JSON yang diformat.

Salah satu pekerjaan developer yang dapat dibantu LLM adalah pemformatan data. Developer dapat menggunakan PaLM API dengan sumber teks apa pun untuk membentuk data teks ke dalam berbagai format yang diinginkan, misalnya, JSON, Markdown, dll.

Untuk menghasilkan respons lucu sambil mempertahankan respons dalam format yang kami inginkan, kami memanggil PaLM API beberapa kali. Agar input lebih acak, kami menggunakan “temperature” yang lebih tinggi untuk model, dan menurunkan temperature untuk model saat memformat respons.

Dalam demo ini, kami ingin PaLM API menampilkan resep dalam format JSON, jadi kami melampirkan contoh respons yang diformat ke permintaan tersebut. Ini hanyalah panduan kecil untuk LLM tentang cara menjawab dalam format secara akurat. Namun, pemformatan JSON dalam resep cukup memakan waktu dan mungkin menjadi masalah saat menghadapi pengalaman pengguna. Untuk mengatasi hal ini, kami mengambil respons lucu hanya untuk menghasilkan pesan reaksi (yang membutuhkan waktu lebih singkat) pada saat bersamaan dengan pembuatan resep JSON. Kami me-render respons reaksi terlebih dahulu setelah menerimanya karakter per karakter, sambil menunggu respons resep JSON. Hal ini untuk mengurangi rasa cemas terhadap respons yang memakan waktu.

generativeAIRecipe4

Jika ada tugas yang membutuhkan sedikit lebih banyak kreativitas sambil mempertahankan respons dalam format yang telah ditentukan, kami mendorong developer untuk memisahkan tugas utama ini menjadi dua subtugas. Satu untuk respons kreatif dengan pengaturan temperature yang lebih tinggi, sementara tugas lainnya mendefinisikan format yang diinginkan dengan pengaturan temperature rendah, guna menyeimbangkan output.

Prompting

Prompting adalah teknik yang digunakan untuk menginstruksikan model bahasa besar (LLM) untuk menjalankan tugas tertentu. Aktivitas ini melibatkan penyediaan LLM dengan teks singkat yang menjabarkan tugas, bersama dengan informasi relevan yang mungkin diperlukan LLM untuk menyelesaikan tugas. Dengan PaLM API, prompting mengambil 4 bidang sebagai parameter: context, messages, temperature, dan candidate_count.

  • Parameter context berarti konteks percakapan. Parameter ini digunakan untuk memberi LLM pemahaman percakapan yang lebih baik.
  • Parameter messages berarti serangkaian pesan chat dari masa lalu hingga sekarang yang bergantian antara pengguna (author=0) dan LLM (author=1). Pesan pertama selalu dari pengguna.
  • Parameter temperature berarti bilangan mengambang antara 0 dan 1. Makin tinggi temperature-nya, makin kreatif responsnya. Makin rendah temperature-nya, makin besar kemungkinan responsnya benar.
  • Parameter candidate_count berarti jumlah tanggapan yang akan ditampilkan oleh LLM.

Di Mood Food, kami menggunakan prompting untuk menginstruksikan PaLM API. Kami memintanya untuk bertindak sebagai koki yang kreatif dan seru serta menampilkan resep yang tak terbayangkan berdasarkan pesan pengguna. Kami juga memintanya untuk memformat tampilan dalam 4 bagian: reaction, name, ingredients, instructions, dan descriptions.

  • Reaction adalah respons lucu langsung terhadap pesan pengguna dengan cara yang sopan namun menghibur.
  • Name: nama resep. Kami memberitahu PaLM API untuk menghasilkan nama resep dengan kata-kata yang sopan dan tidak lagi menyinggung.
  • Ingredients: Daftar bahan beserta takarannya
  • Description: deskripsi makanan yang dihasilkan oleh PaLM API

generativeAIRecipe5

Integrasi Pihak Ketiga

PaLM API menawarkan layanan sematan untuk memfasilitasi integrasi PaLM API dengan data pelanggan. Untuk memulai, Anda hanya perlu menyiapkan database sematan data mitra menggunakan layanan sematan PaLM API.

generativeAIRecipe6

Ketika pengguna mencari informasi terkait makanan atau resep setelah terintegrasi, PaLM API akan mencari di ruang penyematan untuk menemukan hasil ideal yang sesuai dengan kueri mereka. Selain itu, dengan mengintegrasikan dengan shopping API yang disediakan oleh mitra kami, kami juga dapat memungkinkan pengguna untuk langsung membeli bahan dari situs web mitra melalui antarmuka chat.

Kemitraan

Swiggy, platform pemesanan dan pengiriman makanan online India, mengungkapkan kegembiraan mereka ketika mempertimbangkan kasus penggunaan yang dimungkinkan oleh pengalaman seperti MoodFood.

“Kami senang dengan potensi AI Generatif untuk mengubah cara kami berinteraksi dengan pelanggan dan penjual di platform kami. Moodfood memiliki potensi untuk membantu kami lebih mendalami produk dan layanan yang kami tawarkan dengan cara yang menyenangkan dan menarik"- Madhusudhan Rao, CTO, Swiggy

Mood Food akan dibuat open source sehingga Developer dan Startup bisa membangun berdasarkan pengalaman yang telah kami ciptakan. Tim Google Partner Innovation juga akan terus membangun fitur dan alat bermitra dengan pasar lokal untuk memperluas penelitian & pengembangan yang sudah berjalan. Lihat project ini di GitHub di sini.

Ucapan Terima kasih

Kami ingin berterima kasih atas kontribusi yang tak ternilai dari rekan-rekan kami dalam project ini: KC Chung, Edwina Priest, Joe Fry, Bryan Tanaka, Sisi Jin, Agata Dondzik, Sachin Kamaladharan, Boon Panichprecha, Miguel de Andres-Clavera.