ChatAllamo, powered by Ollama, is a Flutter application, both Android and iOS, designed to facilitate seamless interaction with both provided and privately hosted AI models, including Llama2, Llama3, Mistral, and more.
- Android
- iOS
- Web (not supported)
- Desktop (not supported)
- Generate text from a given prompt
- Stream typing-like animation for generated text
- Abort during generating chat conversation
- List available models and their descriptions
- Switch model in the middle of a conversation
- Local chat history (locally using sqlite)
- Save and load conversations (locally using sqlite)
- Favorite, archive, and delete conversations
- Search conversations based on title
- Upload image to conversation from prompt
- Custom system prompt for generating text
- Markdown support (nicely formatted text)
- Change Ollama server URL customization
- Store uploaded image locally rather than in Firebase Storage
- Edit prompt content for re-generation
- Temperature & model options
- Suggest prompt in empty conversation screen
- Text to speech (read aloud)
- Light and dark mode (only dark mode supported)
You need to configure the firebase with this project. Follow these links:
These will generate the missing firebase_options.dart
file in the lib folder. Then you can run the project.
flutter pub get
flutter run
Chat Allamo offers a default Ollama server URL, provided by the author, which you have the option to customize with your preferred server URL. To do so, follow the steps below:
- Open the Chat Allamo application.
- Click on hamburger menu (three horizontal lines) on the top left corner.
- Click on the settings icon (gear icon) on the bottom left corner.
- Click on the "Configurations" button.
- Change the "Ollama Server URL" to your own server URL.
- Click on the "Save" button.
- Restart the application.
- The generated text animation sometimes disappears in iOS devices.
- The uploaded image will be stored in Firebase Storage. This raises privacy concerns regarding the image's confidentiality.
I am quite new to the Flutter community and would appreciate any contributions to this project. If you have any suggestions or improvements, please feel free to contact me via the following links:
Copyright (c) 2024, Kimleang Kea. All rights reserved.