Skip to content

Clean Architecture + MVI + Jetpack Compose + Gemini + Hilt + Coroutines

Notifications You must be signed in to change notification settings

magneto3572/ToraAi

Repository files navigation

ToraAi

ToraAi is an AI-powered application built on Gemini. It leverages the capabilities of Gemini for conversational interactions. The application provides users with various predefined prompts to get started, allowing for seamless interactions with the AI.

Overview

ToraAi is an AI-driven application designed to offer a user-friendly interface for interacting with advanced AI capabilities. Leveraging Gemini, users can engage in conversations, ask questions, and perform various tasks using natural language commands.

The application is built upon the MVI (Model-View-Intent) design pattern, emphasizing a clear separation of concerns and facilitating a reactive programming approach. It incorporates Clean Architecture principles, ensuring modularity, scalability, and maintainability of the codebase. Additionally, adhering to SOLID principles helps in keeping the codebase flexible and robust.

Installation

Open the local.properties file in the root directory of the project.

Add your Gemini API key to the gemini_api_key property:

gemini_api_key=YOUR_GEMINI_API_KEY

Usage

Interacting with ToraAi is straightforward. To initiate a conversation, provide a prompt to ToraAi, and it will respond accordingly, leveraging the context provided by the prompt. Follow-up questions can be asked to engage in multi-turn chat sessions.

Ask Tora:
In this section, users can start conversations by posing questions or prompts to ToraAi. Users can expect responses tailored to the context of their queries.

Image Ai:
While the Image Ai section focuses on image-related tasks, such as object recognition or classification, it does not facilitate multi-turn chat sessions. Users can input image queries, and ToraAi will provide relevant information or analysis.

Summarised:
Similarly, the Summarised section is designed for summarizing text or documents. Users can input text to be summarized, and ToraAi will generate a concise summary based on the input. However, this section does not support multi-turn conversations.

For multi-turn chat sessions, users are encouraged to utilize the Ask Tora section, where they can engage in dynamic conversations with ToraAi by providing prompts and follow-up questions.

Features

ToraAi currently incorporates two models for various tasks. We are excited to announce that we are planning to add a ChatGPT-based model for more dynamic and engaging conversations. Stay tuned for updates and more exciting features!

Sample Snapshot

Smaple Video

recording_compressed.mp4

Contributing

We welcome contributions from the community to help improve Tora. Whether it's bug fixes, Adding feature, or improvements, your contributions are highly appreciated. Please fork this repository, make your changes, and submit a pull request.

Contact

For any queries or suggestions feel free to reach at consult@logoredefined.com or bishal.singh.3572@gmail.com