this post was submitted on 09 Jul 2023
220 points (97.0% liked)

Selfhosted

40042 readers
761 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
220
submitted 1 year ago* (last edited 1 year ago) by [email protected] to c/[email protected]
 

I've recently played with the idea of self hosting a LLM. I am aware that it will not reach GPT4 levels, but beeing free from restraining prompts with confidential data is very nice tool for me to have.

Has anyone got experience with this? Any recommendations? I have downloaded the full Reddit dataset so I could retrain the model on this one as selected communities provide immense value and knowledge (hehe this is exactly what reddit, twitter etc. are trying to avoid...)

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 46 points 1 year ago* (last edited 1 year ago) (2 children)

The best/easiest way to get started with a self-hosted LLM is to check out this repo:

https://github.com/oobabooga/text-generation-webui

Its goal is to be the Automatic1111 of text generators, and it does a fair job at it.

A good model that's said to rival gpt-3.5 is the new Falcon model. The full sized version is too big to run on a single GPU, but the 7b version "only" needs about 16GB.

https://huggingface.co/tiiuae/falcon-7b

There's also the Wizard-uncensored model that is popular.

https://huggingface.co/ehartford/Wizard-Vicuna-13B-Uncensored

There are a ton of models out there with new ones popping up every day. You just need to search around. The oobabooga repo has a few models linked in the readme also.

Edit: there's also h20gpt, which seems really promising. I'm going to try it out in the next couple days.

https://github.com/h2oai/h2ogpt

[–] [email protected] 7 points 1 year ago (1 children)

Note that when using llama-derived models, such as vicuna, you are bound by their license to only use them for "research" purposes.

If you want an unrestricted version, go for open-llama or RedPajama.

Falcon is less restrictive and only wants a cut of profits if they exceed 1 million dollars, but I'd wager that fully unrestricted is the way to go.

[–] [email protected] 7 points 1 year ago (1 children)

Falcon has switched to Apache 2.0 and removed the commercial limit.

[–] [email protected] 6 points 1 year ago

Sorry, I must've missed that somehow, then my comment only applies to llama and its direct derivates.

[–] [email protected] 2 points 1 year ago (2 children)

How do you know how much ram the model needs?

[–] [email protected] 6 points 1 year ago* (last edited 1 year ago)

The model creator usually mentioned it in the readme:

You will need at least 16GB of memory to swiftly run inference with Falcon-7B.

Usually the models support CPU inference. Tremendously slow but works in a pinch.

[–] [email protected] 1 points 1 year ago

There's an average correlation between the models parameters and the execution precision being used (eg. 7b parameters at f16 precision). And then using optimized execution for 8 bit or even 4 bit will reduce memory usage and increase execution time.

It's entirely dependent on the model, the framework, the hardware (CPU vs GPU).

Generally there should be some indication somewhere in the model's repo that states what you need.