I'd like a very fully offline chat bot app, that isn't called "AI" - Project Cackermander
My next proposal for bounties.monero.social -
# Project Cackermander
Cackermander is just a placeholder name, chosen from a dictionary - you can keep it or change it. I've asked several offline chat bots what they think it means, and they each gave different answers (which all contradicted the dictionary).
Goal: A fully offline LLM chat bot app that doesn't advertise itself as "AI"
Monero connection: None, more general privacy tech related, but maybe a nice thing for the Monero community to have
## Requirements
## Licensing
Project submissions on bounties.monero.social must be open-source.
I think the coolest license for this project might be public domain; but the funniest choice is probably AGPL, so that's my suggestion. (Not a requirement)
## Other existing software
You're free to fork existing open-source projects, like [PocketPal](Jan(Alpaca(https://gothub.r4fo.com/Jeffser/Alpaca) on desktop. You'd just have to remove any internet connection and "AI" mentions. You could even use both, although it might be awkward to have the Android and desktop version be 2 different forks.
Jan is already working on Android support, so if you're doing a fork, waiting for that might be a good choice. It's not even the only desktop option, though. Other options like Alpaca might be better.
If you submit a fork, I imagine there might be an additional testing/research period for the community to ensure it's been done thoroughly, before the bounty payout is delivered.
Previous examples should also give you some idea of how much stability / usability you can reasonably achieve. In my experience, PocketPal and other Android equivalents are somewhat experimental, not entirely stable - but at least usable. Desktop apps, like Jan, are generally considered more stable on devices with enough memory (0.7.3 wouldn't open on Linux for me, but 0.7.4 fixed it).
## "Really fully offline? Why?"
Built-in model downloads can make an app like this a "one stop shop," and it could have opt-in user data collection over nostr or something, to help support future LLM improvements. I would prefer an app with those features over the fully offline app I'm proposing.
The LLM itself would still run "fully offline" - does the whole app need to?
If I ask a chat bot today for a "fully offline AI app," it might repeatedly give me links to apps with online features.
If I add "that can't connect to the internet at all," and make it clear I don't just mean the LLM part, the result might not change.
However, if it would recommend this so-called "cackermander," that would be a truly fully offline answer.
This chat bot app tries not to call itself "AI." But beyond that, it also tries to avoid letting another chat bot, or a search engine, lie to users about "how offline it is."
Still, for most users, like me, the offline-only status will probably be an afterthought to the goal of reducing "AI" mentions.
If you keep updating the app after the bounty payout, it's fine for the fully offline version to become "the old version." You're free to develop separate versions with whatever features you want, alongside or after completing the bounty. There might also be a follow-up bounty that includes such additions.
## "Isn't it AI, just not AGI?"
That's up to you. The bullet-point requirement list makes the "no AI" parts sound more absolute than they are.
Some people think chat bots count as "AI but not [AGI](https://en.wikipedia.org/wiki/Artificialgeneralintelligence)." Some people think the term "AI" should be defined as what "AGI" is, instead of having separate terms. And people also disagree on whether chat bots have any true "intelligence."
Me personally, I simply try to avoid the term because, to people unaware of terms like "AGI," the term "AI" can suggest more capability than chat bots really have. A dev might not agree with me, they could have different reasons for taking this project.
You can recognize chat bots as a form of artificial intelligence somewhere fitting like an "about" section. You're also free to offer any or no explanation of why you might choose to avoid the term.
You have freedom of speech as an individual, and remember the project goal's exact words: doesn't advertise itself as "AI."
It's not a problem if you call your app "AI" in social media or day to day life. It's also fine if you can't stop an in-app chat bot from calling itself that. We're just trying not to have the app brand itself as "AI," or advertise it as a feature.
Advice: if you do this right, you as a dev can potentially carve out an important role in helping the general public understand when "AI" is (or isn't) "fully baked."
Users might watch carefully to see if you ever gradually start using the term "AI" more, or suddenly one day announce "this is it, the latest thing is real AI." Different groups will probably react to each choice differently. Making such choices carefully could prove quite fruitful.
Attached image was generated on a phone with WiFi turned off.