DEV Community

Cover image for Fast, Intuitive, Smart: Restaurant search engine with Cloudflare AI
sjdonado
sjdonado

Posted on

Fast, Intuitive, Smart: Restaurant search engine with Cloudflare AI

This is a submission for the Cloudflare AI Challenge.

What We Built

Craving your favorite meal? Our AI-powered search engine makes it easy to find the top 3 restaurants serving it near you. Just enter the dish you're looking for and your location, and let our intelligent algorithm do the rest. Whether it's a local specialty or a global delicacy, our free app will guide you to the perfect spot.

Demo

Searching on culefilo

The Source Code

Cule filo - AI-powered restaurant search engine

Discover the top 3 restaurants serving your favorite food near you. Just enter your craving and location in our free AI-powered app, and start your culinary adventure today!. Our submittion to the Cloudflare AI Challenge.

Demo: https://cule-filo.pages.dev

Screen.Recording.2024-04-13.at.18.09.12.mov

Team: @sjdonado @gjhernandez @krthr

Features

  1. Search your favorite meal Screenshot 2024-04-13 at 17 23 33

  2. Real time search logs Screenshot 2024-04-13 at 17 11 58 Screenshot 2024-04-13 at 17 12 59

  3. See and share your results

Screenshot 2024-04-13 at 17 13 41

Design

graph TD
    A[Start] --> B{Job state?}
    B -->|Created| C[Update job state to Running]
    B -->|Running or Finished| D[Return encoded message]
    C --> E[Search for places with original query]
    E --> F{Number of places found?}
    F -->|Less than 3| G[Generate suggestions list - llama-2-13b-chat-awq]
    F -->|3 or more| H[Enhancing results]
    G --> I{Number of suggestions?}
    I -->|Greater than 0| J[Search for places with suggestions]
    I -->|0| K[Log error]
    J --> L{Number of places found?}
    L -->|Less than 3| G
    L -->|3 or more| H
    H --> M[Fetch

Journey

Our journey in building the "Cule filo" AI-powered restaurant search engine has been an exciting and challenging one. We started by brainstorming ideas on how to leverage Cloudflare's AI capabilities to create a unique and valuable application. After exploring various domains, we settled on the idea of helping users find the best restaurants serving their favorite meals nearby.

To achieve this, we designed a system that combines multiple AI models and services. We used the llama-2-13b-chat-awq model for generating suggestions when the initial search yielded less than 3 results, ensuring that users always receive relevant recommendations. The same model was also employed for selecting appropriate thumbnails for the search results, enhancing the visual appeal and contextual relevance of the displayed images.

For generating informative and concise descriptions of restaurants based on user reviews, we utilized the bart-large-cnn model. This allowed us to provide users with a quick overview of each restaurant's characteristics and customer experiences. To further enrich the search results, we used the uform-gen2-qwen-500m model to generate textual descriptions of restaurant photos, giving users a better sense of the ambiance and offerings of each place.

Throughout the development process, we focused on creating an intuitive and responsive user interface that prioritizes simplicity and ease of use. We implemented real-time search logs to provide transparency and keep users engaged during the search process. Additionally, we integrated search history functionality, allowing users to easily access and revisit their previous searches.

Multiple Models and/or Triple Task Types

Our project, "Cule filo", utilized multiple models per task and incorporated three distinct task types, qualifying it for the additional prize categories.

1) Multiple Models per Task:

  • For the task of generating suggestions when the initial search yields less than 3 results, we employed the llama-2-13b-chat-awq model. This model was also used for selecting appropriate thumbnails for the search results.
  • To generate informative and concise descriptions of restaurants based on user reviews, we utilized the bart-large-cnn model.
  • For generating textual descriptions of restaurant photos, we used the uform-gen2-qwen-500m model.

2) Triple Task Types: Our project incorporated the following three task types:

  • Text Generation: We used the llama-2-13b-chat-awq model to generate suggestions for alternative search queries when the initial search yielded insufficient results. This model was also used to generate captions for the selected thumbnails.
  • Text Summarization: The bart-large-cnn model was employed to summarize user reviews and generate concise descriptions of each restaurant, providing users with a quick overview of the place's characteristics and customer experiences.
  • Image-to-Text: We utilized the uform-gen2-qwen-500m model to convert restaurant photos into textual descriptions, enhancing the richness and contextual relevance of the search results.

What we are proud of

We are particularly proud of the seamless integration of multiple AI models and the overall user experience we have created. Seeing the application come to life and witnessing its ability to help users discover new and exciting dining options has been incredibly rewarding.

Looking ahead, we hope to expand the capabilities of "Cule filo" by incorporating additional features such as personalized recommendations based on user preferences, integration with reservation systems, and support for multiple languages.

The Team



Top comments (3)

Collapse
 
ranjancse profile image
Ranjan Dailata

Sorry, the demo URL is not working - cule-filo.pages.dev/

Collapse
 
sjdonado profile image
sjdonado • Edited

Hi Rajan, the url is culefilo.pages.dev without the dash

Collapse
 
ranjancse profile image
Ranjan Dailata

Thanks, it worked :)