Hacker News

mariobm
FunctionGemma 270M Model blog.google

canyon28917 hours ago

Hi all, I'm a research lead on this model. Same as every model release post, I enjoy working at Google for a multitude of reasons, and opinions here are my own.

Happy to answer whatever technical questions I can!

A4ET8a8uTh0_v28 hours ago

<< You are ready to fine-tune: You need the consistent, deterministic behavior that comes from fine-tuning on specific data, rather than the variability of zero-shot prompting. << You prioritize local-first deployment: Your application requires near-instant latency and total data privacy, running efficiently within the compute and battery limits of edge devices.

Thank you. I felt that was a very under appreciated direction ( most of the spotlight seemed to be on 'biggest' models ).

mrinterweb14 hours ago

I have often wondered how much a specialized local LLM could benefit an agentic tool like Gemini CLI. I would think there could be a good win for speed and minimizing token use if coding agents used a local model. A local model could handle a lot of the low level system interaction type tasks and then send the prompts that require deeper reasoning to frontier models. It seems wasteful and slow to use frontier models to figure out how to grep a codebase, run tests, git diff, etc.

Might Gemini CLI offload some of its prompts to FunctionGemma?

canyon28913 hours ago

I want to say so much right now but I can't :)

The most generic thing I can say is I really do like working at Google because its one of the few (maybe only) company that has models of all sizes and capabilities. Because of this research and product development is insanely fun and feels "magical" when things just click together.

Keep following the Google Developer channels/blogs whatever. Google as a whole is pushing hard in this space and I personally think is building stuff that felt like science fiction just 3 years ago.

xnx16 hours ago

Cool game! Amazing it can run in the browser. My mind was blown when I saw you could give goal based commands vs prescriptive ones. https://huggingface.co/spaces/webml-community/FunctionGemma-...

canyon28916 hours ago

So I didn't even know this was going to be made until recently, and when I saw it, it also blew my mind. I didn't realize how far along web ml community had pushed things, and was impressed by the creativity of the HF folks with visuals and "game flow".

Personally speaking its really neat to see other people who take these models and run with them, creating things I could haven't have imagined. I'm hoping many others in the open community do the same in the coming weeks and the new year

exacube15 hours ago

Some fine tuning data questions:

i see the the dataset Google published in this notebook https://github.com/google-gemini/gemma-cookbook/blob/main/Fu... -- from looking at the dataset on huggingface, it looks synthetically generated.

1. do you recommend any particular mix or focus in the dataset for finetuning this model, without losing too much generality?

2. do you have any recommendations for how many examples per-tool?

thank you for your (and your teams) work!

canyon28914 hours ago

> Do you recommend any particular mix or focus in the dataset for finetuning this model, without losing too much generality?

Astute questions, there's sort of two ways to think about finetuning, 1. Obliterate any general functionality and train the model on your general commands 2. As you asked maintain generality trying to preserve initial model ability

For 2 typically low learning rate or LORA is a good strategy. We show an example in our the finetuning tutorial in the blog.

> 2. do you have any recommendations for how many examples per-tool? This depends on the tool complexity and the variety of user inputs. So a simple tool like turn_flashlight_on(), with no args, will get taught quickly, especially if say you're only prompting in English.

But if you have a more complex function like get_weather(lat, lon, day, region, date) and have prompts coming in in English, Chinese, Gujarati and spanish, the model needs to do a lot more "heavy lifting" to both translate a request and fill out a complex query. We know as programmers date by themselves are insanely complex in natural language (12/18/2025 vs 18/12/2025).

To get this right it'll help the model if it was trained on data that shows it the versions of variations of inputs possible.

Long answer but I hope this makes sense.

exacube8 hours ago

it does; thanks so much, appreciate it!

NitpickLawyer16 hours ago

Wen gemma4? :)

But on a serious note, I'm happy to see more research going into vSLMs (very small...) My "dream" scenario is to have the "agentic" stuff run locally, and call into the "big guns" as needed. Being able to finetune these small models on consumer cards is awesome, and can open up a lot of niche stuff for local / private use.

canyon28916 hours ago

Trust me as a daily at home Gemma user myself, I'm just excited for what's upcoming as you are, maybe even more because I have some hints for what's to come.

>My "dream" scenario is to have the "agentic" stuff run locally, and call into the "big guns" as needed.

FunctionGemma 270m is your starter pack for this, train your own functions to call out to whatever larger models you choose. It's been quite effective my testing, and the finetuning guides should show you how to add in your own capabilities.

Speaking from the research side its incredible how so many small models, not just Gemma, are achieving performance levels of must larger models from just a year or two ago. It's personally why I stay in this space.

all212 hours ago

I'd be curious to hear more about this 'small model calls out to larger model' thing. Are there demos out there showing this in use?

vessenes15 hours ago

Hey! Love the Gemma series. Question that came to mind reading the announcement post - the proposal there is that you can use this as a local backbone and have it treat a larger model as a 'tool call' when more reasoning is needed.

In my mind we want a very smart layer frontier model orchestrating, but not slowing everything down by doing every little thing; this seems like the opposite - a very fast layer that can be like "wait a minute, I'm too dumb for this, need some help".

My question is - does the Gemma team use any evaluation around this particular 'call a (wiser) friend' strategy? How are you thinking about this? Is this architecture flow more an accommodation to the product goal - fast local inference - or do you guys think it could be optimal?

canyon28915 hours ago

We evaluate many things that you alluded to, such as speed on device, output correctness, and also "is this something that would be useful" the last one being a bit abstract.

The way we think about it is what do we think developers and users need, and is there a way we can fill that gap in a useful way. With this model we had the hypothesis you had, there are fantastic larger models out there pushing the frontier of AI capabilities, but there's also a nice for smaller customizable model that's quick to run and quick to tune.

What is optimal then ultimately falls to you and your use cases (which I'm guessing at here), you have options now between Gemini and Gemma.

vessenes13 hours ago

Thanks - yeah, I'm capable of assessing for my own use cases. I guess I was trying to muse out-loud about whether there's a useful benchmark to be made or published out of these assessments. There are a number of architectures where there's a 'fast loop' and then a slow loop. Robotics comes to mind. I think training the ability to be like 'uh oh, better get over to slow good thinking' into the fast loop models is likely to be super useful.

mudkipdev12 hours ago

If I have a simple mainly question-answering AI using only a couple of tools (web search), am I better off starting with Gemma or FunctionGemma?

canyon2897 hours ago

It depends on a couple of things. If you expect reasoning or frontier level chat abilities then larger Gemma models or Gemini is better.

Another hard constraint is context limit, Gemma 270m is at 32k so if the search results returned are massive then this not a great model. The larger 4b+ Gemma models have 128k, and Gemini token window is in the millions

xnx16 hours ago

Not FunctionGemma related, but would love to see an open weights model from Google for speech to text transcription (diarization, timestamps, etc.).

Whisper is old and resource intensive for the accuracy it provides.

canyon28914 hours ago

I'm not specifically promising anything but I do want to say 2026 is going to be a great year! Many of my colleagues are shipping models too, such as t5gemma which is on the front page, and I'm personally excited to see what we're all collectively going to release in the coming year.

mentalgear14 hours ago

Much-appreciate the focus on local-first (on-device) ! I'm wondering how your approach differs from (or integrates with) something like "Differentiable Programming for LLM Tool Selection" https://viksit.substack.com/p/optimizing-tool-selection-for-...

canyon28913 hours ago

I've only just skimmed this blog post but if I'm reading correctly FunctionGemma can work just like what's intended here, a "contextless" tool router.

Going one level up you as a developer have a choice how much context you want to provide to the model. Philipp Schmid wrote a good blog post about this, titling this "context engineering". I like his idea because instead of just blindly throwing stuff into a model's context window and hoping to get good performance, it encourages folks to think more about how what's going into the context in each turn.

https://www.philschmid.de/context-engineering

Similarly I think the blog post you linked has a similar sentiment. There's nuanced approaches that can yield better results if an engineering mindset is applied.

zikani_0315 hours ago

Thanks for all the great work. How good is the model at composing actions and is there a way to say, give the model ability to scope actions, for example if actions are related to permissions or some other context? Would one need to pass the role or permission as context or finetune separately?

I hope those questions make sense

canyon28915 hours ago

> How good is the model at composing actions?

I think you mean taking the results of one function call and putting it into another? We saw some promise but didn't heavily train for this use case in the base model. The thing we noticed with the 270m sized models, and the performance expectations of AI models in 2025, is that these size models perform best for _specific users_ when finetuned to that specific use case.

What I suggest is mocking some data either by hand or using some automated tool and finetuning in this kind of use case and using the finetuning colab setup.

> is there a way to give the model ability to scope action for example if actions are related to permissions

Permissions depend on your system architecture more than the model. The model itself just takes in tokens and outputs tokens. Permissions are defined by your security/system setup in which the model itself is running.

lukeinator4216 hours ago

Very cool! I was wondering, is a separate model performing speech recognition for the voice demos such as the game? The FunctionGemma model card only seems to show text input/output.

canyon28915 hours ago

Yes a separate model is performing ASR in this case. Gemma270m (base, function, and others) are not multimodal out of the box.

That being said if someone in the community wanted to use other encoders like siglip and plug them into Gemma270m to make it multimodal that'd be a great way to have fun over break and build up an AI Eegineer resume :)

cbabraham11 hours ago

hi! Does this bring us closer to a gemini-cli like experience using a local modal that can run on a macbook pro? It felt like gemma3n was already 'smart' enough it just wasn't tuned for tool use.

canyon2897 hours ago

Its definitely a step in that direction. I use Gemma models on my local macbook all the time and am personally excited to have this one available for me at home now as well

carlcortright16 hours ago

Very cool model! Congrats on the work!

canyon28916 hours ago

Thank you much for the kind words

ekianjo8 hours ago

Does this require webgpu to run on the browser?

Someone13 hours ago

FTA: In our "Mobile Actions" evaluation, fine-tuning transformed the model’s reliability, boosting accuracy from a 58% baseline to 85%. This confirms that for edge agents, a dedicated, trained specialist is an efficient path to production-grade performance.

I would be wary of having a LLM with 85% accuracy call tools on my system. Isn’t that fairly far away from production-grade performance?

I also don’t see that the fact that accuracy can be boosted from 50% to 85% is any indication that it can be boosted further.

all212 hours ago

There are ways around this. You can push the success rate close to 100% if you use chain of thought and a quorum selection. It isn't great, and it slows response times, but if 85% isn't good enough, you just need to flip the coin about 5 times to get nearly(!) guaranteed results.

spoj6 hours ago

Coin flipping works only if the fails are roughly independent. More important is the complexity ceiling above which they fail all the time.

xnx15 hours ago

Unbelievable shipping velocity from Google in December, and it sounds like they're not done for the week: https://x.com/osanseviero/status/2001723652635541566

canyon28914 hours ago

:popcorn gif:

eachro15 hours ago

Do you think this would be appropriate for a command line tool that hits various apis as the function calls? Ex: "what's the weather in SF tomorrow?" Or "daily price change of apple, Tesla stock for past week"? (Let's assume I have documented the apis thoroughly somewhere that the model has access to or fine tuned it on this data)

milenf15 hours ago

Hi, also on the FunctionGemma team! Something like this would be a good use case for the model. Based on how complicated the API is you might need to finetune it (we released a colab that guides you through the experience + how to export/run it locally). Generally better tool descriptions help although if it is something very complicated finetuning would be better.

[deleted]15 hours agocollapsed

syntaxing12 hours ago

I’ve been wanting to fine tune models for home assistant but unsure how to get some synthetic data, any recommendations?

allenporter8 hours ago

Check out the approach here: https://github.com/allenporter/home-assistant-datasets and the reports/ directory has a leaderboard for function calling. I'm curious to see how well this model does.

wds9 hours ago

I've found this dataset specifically for Home Assistant with over 32k examples: https://huggingface.co/datasets/acon96/Home-Assistant-Reques...

nateb202216 hours ago

gessha8 hours ago

My brain didn’t realize that the parameters were megabytes and not gigabytes and my reaction went from “meh” to “holy bananas!”

Great work from the Google ML teams, I’ll be trying this model out.

andai12 hours ago

Hot take: Dodgy small/fast/cheap LLM in a While True approx. equals AGI for most real world tasks.

gavmor7 hours ago

I have not found this to be the case but, then again, a lot has changed in the last year.

SpaceManNabs15 hours ago

can you run this from n8n?

canyon28915 hours ago

I just looked through their webpage and github and I'm not sure. But maybe someone should make a feature request!

https://github.com/n8n-io/n8n

[deleted]12 hours agocollapsed

orliesaurus15 hours ago

edit: Im so dumb...

canyon28915 hours ago

Its already on the phone! Check out the demo videos and colab that show you how to load this model onto a device relatively easily.

On this project I was lucky enough to work with the Google AI Edge team who have deep expertise in edge deployments on device. Check out this app they built which loads in the Gemma 270m models and runs them on your phone.

https://play.google.com/store/apps/details?id=com.google.ai....

You also can finetune your own models and load them onto device with the same workflow. Scroll to the bottom to see the instructions and a screenshot example https://ai.google.dev/gemma/docs/mobile-actions

hn-front (c) 2024 voximity
source