A unified cross-platform AI client supporting seamless transitions between standard cloud APIs and on-device, offline execution of custom and uncensored language models.
翻译准备中
开发工具GitHub @orailnoor自行安装运营者未确认
试用过了吗? 点一下就好,无需登录。
尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗A production-ready, cross-platform AI chat client built with Flutter. It unifies local on-device LLM inference (Android) with cloud API access, giving users full control over how their models run.
Image generation tested on Moto G71 (Snapdragon), Oneplus 10r (Mediatek), Pixel 6A (Tensor), Poco F1 (Snapdragon), Samsung s23 (Snapdragon) 4 steps fast
Generated on pixel 6 with 20 step
package:httpflutter_background_service + flutter_local_notifications┌─────────────────────────────────────────────────────────────┐
│ UI Layer │
│ ChatView / ModelView / ServerView / SettingsView │
└──────────────────────────┬──────────────────────────────────┘
│
┌──────────────────────────▼──────────────────────────────────┐
│ Controllers (GetX) │
│ ChatController · TaskController · ModelController │
│ SettingsController · HomeController │
└──────────────────────────┬──────────────────────────────────┘
│
┌──────────────────────────▼──────────────────────────────────┐
│ Services │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────┐ │
│ │ InferenceService│ │ CloudService │ │DownloadSvc │ │
│ │ (local GGUF) │ │ (OpenAI/Claude/ │ │ (model dl) │ │
│ │ │ │ Gemini/Kimi) │ │ │ │
│ └─────────────────┘ └─────────────────┘ └─────────────┘ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────┐ │
│ │ HiveService │ │ DeviceInfoSvc │ │ExecutionSvc │ │
│ │ ( persistence) │ │ (RAM/GPU tier) │ │ (bg tasks) │ │
│ └─────────────────┘ └─────────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────────┘
The app uses llama_flutter_android, a custom Flutter plugin wrapping llama.cpp for ARM64 devices. At runtime it:
generateChat() with native chat-template support (ChatML, Llama-3, Gemma, Phi).Idle detection (5s) and hard timeouts (180s) keep the UX responsive even on underpowered hardware.
CloudService normalizes four different API shapes into a single interface:
/v1/chat/completionsgenerateContent with inline image base64API keys are stored in Hive and never transmitted anywhere except to the provider's endpoint.
Local inference is conditionally compiled:
inference_android.dart (full llama.cpp engine)inference_stub.dart (cloud-only, local coming soon)inference_android.dart (full llama.cpp engine via Metal GPU)The InferenceService exposes supportsLocalInference so the UI can hide local-model UI on unsupported platforms.
| Platform | Local Inference | Cloud APIs | Notes |
|---|---|---|---|
| Android | ✅ Yes | ✅ Yes | CPU offload via NEON; minSdk 28 |
| iOS | ✅ Yes | ✅ Yes | Metal GPU acceleration |
| Web | ❌ No | ✅ Yes | Cloud-only (local coming soon) |
The iOS/iPad release is distributed as a sideloadable IPA file. Due to the RAM requirements for local models, iPad is the recommended iOS target, but it can be installed on iPhones.
Here is how you can install the app using AltStore and AltServer:
Prerequisites:
以上为 README 的开头部分。其余内容请阅读原文。 查看完整 README ↗