23
Beginner questions thread (self.localllama)
submitted 9 months ago by noneabove1182 to c/localllama

Trying something new, going to pin this thread as a place for beginners to ask what may or may not be stupid questions, to encourage both the asking and answering.

Depending on activity level I'll either make a new one once in awhile or I'll just leave this one up forever to be a place to learn and ask.

When asking a question, try to make it clear what your current knowledge level is and where you may have gaps, should help people provide more useful concise answers!

all 22 comments
sorted by: hot top controversial new old
[-] lynx 4 points 9 months ago

Question: What is the best self hosted coding assistant?

The (only) project i found, that does what i want:

It works ok for the most part. The problem i have with it is that inline completion is more annoying then helpful, because the AI only sees the last few lines that you wrote and therefore does not know the larger context of the project.

I also found this project, it looks promising. Has anyone tested it? Can you separate the server from the client?

Are there other projects that integrate well into an IDE?

[-] noneabove1182 4 points 9 months ago

I've had decent results with continue, it's similar to copilot and actually works decently with local models lately:

https://github.com/continuedev/continue

[-] lynx 4 points 9 months ago

Thanks for the suggestion, I tried it and the diff view is very good. The setup was not really easy for my local models, but after i set it up, it was really fast. The biggest problem with the tool is that the open source models are not that good, i tried if it could fix a bug in my code and it was only able to make it worse. On a more positive note, you at least do not need to copy all text over to another window and it is great for generating boilerplate code nearly flawlessly every time.

[-] noneabove1182 4 points 9 months ago

Yeah definitely need to still understand the open source limits, they're getting pretty dam good at generating code but their comprehension isn't quite there, I think the ideal is eventually having 2 models, one that determines the problem and what the solution would be, and another that generates the code, so that things like "fix this bug" or more vague questions like "how do I start writing this app" would be more successful

[-] [email protected] 4 points 9 months ago

Knowledge level: Enthusiastic spectator, I don't make or finetune llms, but I do watch AI news, try out local llms, and use things like Github copilot and chat gpt.

Question: Is it better to use code llama 34b or llama2 13b for a non coding related task?

Context: I'm able to run either model locally, but I can't run the larger 70b model. So I was wondering if running the 34b code llama would be better since it is larger. I heard that models with better coding abilities are better for other types of tasks too and that they are better with logic (I don't know if this is true I just head l heard it somewhere).

[-] noneabove1182 4 points 9 months ago* (last edited 9 months ago)

I feel like for non coding tasks you're sadly better off using a 13B model, codellama lost a lot of knowledge/chattiness from its coding fine tuning

THAT SAID it actually kind of depends on what you're trying to do, if you're aiming for RP don't bother, if you're thinking about summarization or logic tasks or RAG, codellama may do totally fine, so more info may help

If you have 24gb of VRAM (my assumption if you can load 34B) you could also play around with 70B at 2.4bpw using exllamav2 (if that made no sense lemme know if it interests you and I'll elaborate) but it'll probably be slower

[-] [email protected] 3 points 8 months ago

What can I run on a 1080ti and how does it compare to what's available in general?

[-] lynx 6 points 8 months ago

On Huggingface is a space where you can select the model and your graphics card and see if you can run it, or how many cards you need to run it. https://huggingface.co/spaces/Vokturz/can-it-run-llm

You should be able to do inference on all 7b or smaller models with quantization.

[-] [email protected] 4 points 8 months ago

Wow thank you I'll look into it!

[-] [email protected] 3 points 7 months ago

Where is the sweet spot for running CPU bound models? I've just started playing with llama.cpp but the big models do make the cores work pretty hard. Should I look at using quantisation or more fine tuned models for the tasks I care about (developer assistance mainly).

[-] noneabove1182 3 points 7 months ago

If you're using llama.cpp chances are you're already using a quantized model, if not then yes you should be. Unfortunately without crazy fast ram you're basically limited to 7B models if you want any amount of speed (5-10 tokens/s)

[-] [email protected] 3 points 7 months ago

Is there a standard for the suffixes? For example the OpenLlama models here: https://huggingface.co/SlyEcho/open_llama_7b_v2_gguf/tree/main have qN and and then a mix of K, M, 0 and 1 suffixes. The q I assume is the quantisation level but measured how? Does q2 mean t 2bits per weight? That seems very small - and what is it fixed float, integers?

[-] noneabove1182 3 points 7 months ago

Yeah so those are mixed, definitely not putting each individual weight to 2 bits because as you said that's very small, i don't even think it averages out to 2 bits but more like 2.56

You can read some details here on bits per weight: https://huggingface.co/TheBloke/LLaMa-30B-GGML/blob/8c7fb5fb46c53d98ee377f841419f1033a32301d/README.md#explanation-of-the-new-k-quant-methods

Unfortunately this is not the whole story either, as they get further combined with other bits per weight, like q2_k is Q4_K for some of the weights and Q2_K for others, resulting in more like 2.8 bits per weight

Generally speaking you'll want to use Q4_K_M unless going smaller really benefits you (like you can fit the full thing on GPU)

Also, the bigger the model you have (70B vs 7B) the lower you can go on quantization bits before it degrades to complete garbage

[-] [email protected] 3 points 7 months ago

Do you usually have some other front-end over the model? I can run llama.cpp directly in interactive mode but the results are a little underwhelming. However there seem to be various front ends that get better results? Is this down to better prompting and parameter control? I've seen temperature mentioned in relation to ChatGPT but I have no idea what rope and yarn factors are for?

[-] noneabove1182 3 points 7 months ago

I use text-generation-webui mostly. If you're only using GGUF files (llama.cpp), koboldcpp is a really good option

A lot of it is the automatic prompt formatting, there's probably like 5-10 specific formats that are used, and using the right one for your model is very important to achieve optimal output. TheBloke usually lists the prompt format in his model card which is handy

Rope and yarn refer to extending the default context of a model through hacky (but functional) methods and probably deserve their own write up

[-] [email protected] 3 points 3 months ago

Late to the party, I never got FOSAI working until I found LMStudio, but I have 2 questions:

  1. Is there any way I could utilize my GPU, a Radeon RX6800M (12GB VRAM)? I got Mistral-7B doing 5 tokens/s but it's all running on the CPU.

  2. Is there any model specifically for programming questions? This could be of immense help to my projects without having to ask ChatGPT.

[-] [email protected] 3 points 2 months ago

Have you tried the guide on AMD's site? It looks like it's for Windows, and I don't know what you're running. Plus, I use Ollama, so I probably can't be of much help.

For programing, my favorite is Dolphin-Mixtral, but I've had good results with Dolphin-Mistral and Llama2.

[-] [email protected] 2 points 5 months ago

I have two 3090 Turbo GPUs and it seems like oobabooga doesn't split the load between the two cards when I try to run TheBloke/dolphin-2.7-mixtral-8x7b-AWQ.

Does anyone know how to make text generation webui use both cards? Do I need an nvlink between the two cards?

[-] noneabove1182 4 points 5 months ago

You shouldn't need nvlink, I'm wondering if it's something to do with AWQ since I know that exllamav2 and llama.cpp both support splitting in oobabooga

[-] [email protected] 2 points 5 months ago

I think you're right. Saw a post on Reddit basically mentioning the same things I'm seeing.

It looks like autoawq supports it but it might be an issue with how oobabooga implements it or something...

this post was submitted on 02 Oct 2023
23 points (96.0% liked)

LocalLLaMA

2105 readers
2 users here now

Community to discuss about LLaMA, the large language model created by Meta AI.

This is intended to be a replacement for r/LocalLLaMA on Reddit.

founded 1 year ago
MODERATORS