惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

I
InfoQ
G
Google Developers Blog
Engineering at Meta
Engineering at Meta
月光博客
月光博客
博客园 - 聂微东
博客园 - Franky
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
有赞技术团队
有赞技术团队
A
About on SuperTechFans
Microsoft Azure Blog
Microsoft Azure Blog
Blog — PlanetScale
Blog — PlanetScale
U
Unit 42
T
Tailwind CSS Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
云风的 BLOG
云风的 BLOG
S
SegmentFault 最新的问题
F
Fortinet All Blogs
H
Help Net Security
J
Java Code Geeks
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 叶小钗
L
LangChain Blog
Martin Fowler
Martin Fowler
N
Netflix TechBlog - Medium

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
Aether: A local Android assistant built with Gemma 4
Arjun Vijay Prakash · 2026-05-25 · via DEV Community

Arjun Vijay Prakash

Gemma 4 Challenge: Build With Gemma 4 Submission

This is a submission for the Gemma 4 Challenge: Build with Gemma 4

What I Built

I built Aether. It is a local Android assistant. It replaces your default cloud assistant with a completely offline alternative. You trigger it just like normal. You hold the power button and Aether pops up instantly. Everything happens directly on your device.

The app registers natively as your default Android assistant using the ACTION_ASSIST intent. It uses the built-in Android speech recognition for voice input.

For the foundation, I used the open source FriedGPT codebase. I stripped out all the old cloud API routes to create a clean boundary for local inference. Your chat history and text data stay entirely on your phone.

Demo

Here is a quick video showing Aether running on a real phone.

Note: the specifications of this phone (2.0GHz CPU and 4.0GB RAM) make the generation of the text slow -- it should work really fast on a "good" phone.

Code

Aether is open source under the Apache 2.0 license. You can check out the architecture and the migration path on GitHub here:

https://github.com/arjuncodess/aether


How I Used Gemma 4

I used the Gemma 4 E2B model for this project. E2B stands for Effective 2 Billion parameters. I downloaded the LiteRT-LM version from Hugging Face. The app loads this model directly from your local storage.

Gemma 4 handles all the text generation right on the phone. It acts as the core brain for the entire chat experience. The new architecture features a huge 128K context window. This means the model easily remembers past messages in your device-local chat history without losing the thread.


Why This Model Fits Perfect for Mobile

Running models on a phone is tough. You have strict memory limits. If an app uses too much RAM, the Android system kills it immediately.

Gemma 4 E2B solves this perfectly. It uses Per-Layer Embeddings and 4-bit weights through LiteRT. This keeps the memory footprint under 1.5GB. The model runs smoothly in the background while you have other apps open.

It also uses a hybrid attention mechanism. It mixes local sliding windows with global attention. You get fast processing speeds without sacrificing context. You get a smart assistant that works instantly even in airplane mode.


Future Roadmap

This current version is just the first step. I have plenty of bugs to track down and fix. I want to improve the UI design and polish this into a daily-driver product.

The next major feature is adding a tool layer. Gemma 4 supports native function calling out of the box. I plan to map those capabilities to offline Android actions. Soon, Aether will set alarms, launch apps, manage your calendar, and control your clipboard.

Giving system access to a local model is incredibly safe. It is far better than handing your personal data over to a massive AI company.

A local model keeps your life private.