LLMFarm is an iOS and MacOS app to work with large language models (LLM). It allows you to load different LLMs with certain parameters.With LLMFarm, you can test the performance of different LLMs on iOS and macOS and find the most suitable model for your project.
Based on ggml and llama.cpp by Georgi Gerganov.
Also used sources from:
- rwkv.cpp by saharNooby
- Mia by byroneverson
- LlamaChat by alexrozanski
- MacOS (13+)
- iOS (16+)
- Various inferences
- Various sampling methods
- Metal (dont work on intel Mac)
- Model setting templates
- LoRA adapters support
- LoRA finetune support
- LoRA export as model support
- Restore context state
- Apple Shortcuts
- LLaMA 1,2,3
- Gemma
- Phi models
- GPT2 + Cerebras
- Starcoder(Santacoder)
- Falcon
- MPT
- Bloom
- StableLM-3b-4e1t
- Qwen
- Yi models
- Deepseek models
- Mixtral MoE
- PLaMo-13B
- Mamba
- RWKV (20B tokenizer)
- GPTNeoX
- Replit
- LLaVA 1.5 models, LLaVA 1.6 models
- BakLLaVA
- Obsidian
- ShareGPT4V
- MobileVLM 1.7B/3B models
- Yi-VL
- Moondream
Note: For Falcon, Alpaca, GPT4All, Chinese LLaMA / Alpaca and Chinese LLaMA-2 / Alpaca-2, Vigogne (French), Vicuna, Koala, OpenBuddy (Multilingual), Pygmalion/Metharme, WizardLM, Baichuan 1 & 2 + derivations, Aquila 1 & 2, Mistral AI v0.1, Refact, Persimmon 8B, MPT, Bloom select llama inferece
in model settings.
- Temperature (temp, tok-k, top-p)
- Tail Free Sampling (TFS)
- Locally Typical Sampling
- Mirostat
- Greedy
- Grammar (dont work for GPTNeoX, GPT-2, RWKV)
- Classifier-Free Guidance
You can find answers to some questions in the FAQ section.
When creating a chat, a JSON file is generated in which you can specify additional inference options. The chat files are located in the "chats" directory. You can see all inference options here.
You can download some of the supported models here.
llmfarm_core
has been moved to a separate repository. To build llmfarm, you need to clone this repository recursively:
git clone --recurse-submodules https://github.com/guinmoon/LLMFarm