The Mycroft Personal Server - Starting the Conversation

I would LOVE the idea - but I’m actually fearful that this will be feature creep bogging you down.
I’m a privacy freak myself so I’d definitely use it. However, not if it means the product will be less polished because of that.

I’d recommend trying to establish what the core product should be for it’s next development phase.
Seeing that many skills right now are just simple keyword triggers which you can easily clone with “Voice Attack” (basically not requiring a voice assistant at all!) I’d love for mycroft to actually work better and more natural (conversational) before ever even attempting investing tons of effort into a localized server technology.

What is the core product that needs to work brilliantly?
Examples to think about: home automation, media control, setting up reminders, interaction with other “personal assistants” (mobile phones, other mycrofts etc.)

Would a something like the AMD Ryzen 2400G or 2200G which have a built in GPU and are relatively inexpensive be enough?

Limited compute units plus shared RAM likely mean the 2X00G aren’t that great, but try it and see? There’s some official support for running tensorflow on ROCm:

Forgot the other links:
https://github.com/szilard/benchm-dl (referenced from https://www.reddit.com/r/Amd/comments/7pw33j/did_someone_usetested_an_amd_graphic_card_with/)

1.10 tf docker image for AMD gpu’s:
https://hub.docker.com/r/rocm/tensorflow/

I think that we need to be very mindful of why we would want a private server in the first place. I know there are those that have privacy fears but on account the most likely thing a hacker may intercept is a request for what the time is, then is this really a problem? No, I think the real advantage of a private server is to cut the latency between asking something and Mycroft responding. The advantage can be clearly seen by running the CLI and entering requests on the keyboard. But, if you don’t build yourself a machine with, at least, the same single user performance that the cloud system can muster then the whole point of doing this is lost. Worst still you have a raised electricity bill to add to the mix. Therefore I suggest we wait to find out what the base specification for the hardware platform is before investing in hardware. Those that have hardware already to hand can experiment to help Steve and the team. It would not do well for moral if one sheds out on a stack load of hardware, only to find that either it didn’t suit or it was a massive overkill.

1 Like

I would just like something more responsive than home.mycroft, which I have not had good luck with.

A good portion of the time I try to interact home it I get a pop up which says the service is down, with no explanation on what that means. Will my changes be made eventually, or do I need to do them again? It would be nice to know.

1 Like

I’d like to take part in implementing a personal server. I guess a good starting point would be for you to release the internal api documentation, so we as the community can start rebuilding the internal api. Instead of having to reverse engineer it :slight_smile:

1 Like

There’s currently some information available in our Message Bus documentation;

Hi Steve.
I think a personal server is a great idea.
I’m not a programmer but having been around since MSDOS and DRDOS days, I’m not scared to copy and mess around with lines of code to get simple tasks done.
I use Ubuntu now and often jump into terminal for various basics.
I’d be happy to contribute to a crowdfunded project to develop a server and help knock up some user friendly guides and how-to’s

I wouldn’t think of it as a “personal” server; assuming the final hardware requirement is realisable as a portable device, then there are lots of organisational deployment possibilities, where not only might the need be for something that works without Internet, but also something that is LAN-only for sensitive operations, as well as response time improvements that being local should bring.

1 Like

I would like to add a pinch of salt about docker images, I think it’s a great idea but, it could be great also to have that on more than one plateform, I mean, these days (and more on the days an month to come), there are SBC not-cheap-but-not-very-expensive-either on the market with hardware support for tensorflow (and it does not suck 100W of power).
Maybe doing some Yocto BSP that should compile everything needed to run the “personal server”. (so, the geeks could be geekin’, the no so geeks download a pre made image, and those we run a full fledge server use docker images)

Personally I love the idea of a personal server. However, not many people are going to have a spare GPU computer at home - especially outside of the US. Might it be possible to create a device, or incorporate into one of the Marks (say Mark 3)?

I think this is an exciting idea and something that can really put voice assistants in a place to truly protect people’s privacy.

I’d say that I hope you’ll consider it less a server and more of an appliance. Make sure it has image based updates that are reliable (no apt, no pip). Make sure it has no shell login or root user (no ssh). Make sure the images you expect people to be using at home are the same as those in the cloud (with a different configuration).

I would also love to be able to buy a box with whatever hardware you decide that I could place next to my router and would be my “Mycroft Brain.”

I also recently discovered that Docker isn’t useful as an approach for the general Windows user. Windows Pro is required for the latest and greatest Docker to work today, although some are talking about figuring out an option to not need that.

I think the reality we have to plan for is that most “gaming” PCs in the world are still Windows, for now, and that will be a sizable portion of the market for a long time.

I’m opposed to making more hardware as a first step. It is always WAY more difficult than you think.

2 Likes

Sorry if I implied making hardware is the first step, but I think that what is important is taking a strategy of building an appliance rather than a server. You can, for instance, build something like an LXD image that is bootable and usable on a Linux machine, and itself is an appliance. There is no reason you need HW to develop in that manner. The important parts are to not assume any shell access or commands needed to upgrade, maintain or use it. The HW can come later.

Hi Steve, Hello Mycroft crowd,

I just wanted to say hello (first post) and that the possibility to host the necessary services in my own rack was one of the main reasons for kickstarting the campaign.

So yes, this part of the project is really important to me and I think it would also be a good possibility for getting some money in the long term.

I like the idea of paying cash for software maintenance and not via (meta?-)data for a service.

My development know-how is far too old and being honest not worth mentioning but maybe I can help a little bit with my sysadmin & infosec skills.

So, after reading some posts and hopefully find some useful stuff in the document area I hope that I can support a little bit.

regards

Klum Pat

1 Like

But the Personal Server can or cannot be for windows. I mean, I don’t see Windows users -specially the gamers- installing and configuring a server of… well, of nothing at all. They are vastly consumers so I think the personal server must target just Linux, so docker can live perfectly. It comes to my mind the game servers of windows-only games, which are mainly linux servers.

I love the idea of a personal server option. I like to run my own servers, for privacy and control.

I love the idea of home automation but I want it to be made of NoT devices. Network of Things. NOT the Internet of Things. I do not want any of my things on the Internet. Heh.

As for the GPU I can upgrade it, but I am hoping that the RX 460 my home server already has will be enough.

Something like this should be a Virtual Machine application image or a Docker container. But how to provide access to the GPU for OpenCL or CUDA? That might be a challenge.

Steve and Mycroft community,

I too like the idea of a Mycroft personal server.

I backed a company on Wefunder.com called Daplie that is making a personal server called the Connect which is scheduled to be delivered in March. They had a successful Wefunder.

Their website is

and their successfully completed Indiegogo campaign is at

The Connect has no voice component. It does have stackable storage up to 8 Terabytes or you can plug up other storage in the back that Daplie says can be virtually unlimited. Daplie touts the benefits of ownership, ease of use, security and privacy.

Later on Daplie announced a plan to create a digital asset, electronic money thingy called Dapcoin.

Dapcoin is supposed to bring the advantages of blockchain to buying apps for server, getting third party verification that the apps and whole system are legit, and even allow others to put their data on your server for payment in Dapcoin for “sustainable farming.”

One of the two original founders disagreed with this new DapCoin direction, withdrew, and Daplie bought out his interest.

In their Sept Indiegogo update they announced their partnership with a company called NextCloud and that

“NextCloud has a rich app ecosystem with apps like Talk, Calendars, Reminders App, Calendar App, Email App, Notes App, Contacts App, Tasks App (like Trello), News (like Apple or Google News), Document Editing Collaboration App (like Google Drive), Video/Voice Calling App (like Hangouts), Chat App (like Slack).”

Their DapCoin whitepaper

Is a good synopsis of all this and more. It also mentions their partnership with a company called DeNet (decentralized net) which will bring their “exclusive decentralized web hosting service”. DeNet is located in Hong Kong, but all their R & D is done in Russia. Yay.

Love their plans for a personal server and apps, neutral (and ignorant) on DapCoin, and excited about the decentralized web hosting, but bummed and a little paranoid about the R&D being done in Russia.

Just thought I would share this and ask some questions.

Could Mycroft be designed to work with the Connect personal server as well as/instead of working with/being on a Mycroft personal server?

Is my paranoia over one of their partners having R & D located in Russia warranted? I understand if you want to sidestep diagnosing paranoia over the internet. That would be healthy paranoia.

Regards,

Roger