Run these commands step by step in the terminal.
1. Brew install LLM
brew install llm
2. Install llm-gpt4all
llm install llm-gpt4all
3. List the models
llm models list
You should see an output like this:
OpenAI Chat: gpt-3.5-turbo (aliases: 3.5, chatgpt)
OpenAI Chat: gpt-3.5-turbo-16k (aliases: chatgpt-16k, 3.5-16k)
OpenAI Chat: gpt-4 (aliases: 4, gpt4)
OpenAI Chat: gpt-4-1106-preview (aliases: gpt-4-turbo, 4-turbo, 4t)
OpenAI Chat: gpt-4-32k (aliases: 4-32k)
OpenAI Completion: gpt-3.5-turbo-instruct (aliases: 3.5-instruct, chatgpt-instruct)
LlamaGGUF: gguf
gpt4all: all-MiniLM-L6-v2-f16 - SBert, 43.76MB download, needs 1GB RAM
gpt4all: replit-code-v1_5-3b-q4_0 - Replit, 1.74GB download, needs 4GB RAM
gpt4all: orca-mini-3b-gguf2-q4_0 - Mini Orca (Small), 1.84GB download, needs 4GB RAM
gpt4all: mpt-7b-chat-merges-q4_0 - MPT Chat, 3.54GB download, needs 8GB RAM
gpt4all: orca-2-7b - Orca 2 (Medium), 3.56GB download, needs 8GB RAM
gpt4all: rift-coder-v0-7b-q4_0 - Rift coder, 3.56GB download, needs 8GB RAM
gpt4all: em_german_mistral_v01 - EM German Mistral, 3.83GB download, needs 8GB RAM
gpt4all: mistral-7b-instruct-v0 - Mistral Instruct, 3.83GB download, needs 8GB RAM
gpt4all: mistral-7b-openorca - Mistral OpenOrca, 3.83GB download, needs 8GB RAM
gpt4all: gpt4all-falcon-q4_0 - GPT4All Falcon, 3.92GB download, needs 8GB RAM
gpt4all: gpt4all-13b-snoozy-q4_0 - Snoozy, 6.86GB download, needs 16GB RAM
gpt4all: wizardlm-13b-v1 - Wizard v1.2, 6.86GB download, needs 16GB RAM
gpt4all: orca-2-13b - Orca 2 (Full), 6.86GB download, needs 16GB RAM
gpt4all: nous-hermes-llama2-13b - Hermes, 6.86GB download, needs 16GB RAM
gpt4all: starcoder-q4_0 - Starcoder, 8.37GB download, needs 4GB RAM
5. Install run a Chat
You can play around with the different models but this one seems to work for me.
llm chat -m mistral-7b-openorca
write a python function that calculates n fibonacci numbers
It will download the model:
100%|█████████████████████████████████████| 4.11G/4.11G [02:07<00:00, 32.1MiB/s]
Output:
Sure, here's a Python function to calculate the first `n` Fibonacci numbers:
\```python
def fibonacci(n):
if n <= 0 or n > 100:
raise ValueError("Invalid input. Please provide an integer between 1 and
100.")
a, b = 0, 1
for i in range(n + 1):
yield a
a, b = b, a + b
\```
This function uses the Fibonacci sequence definition: each number is the sum of
the two preceding ones. It starts with `a=0`, `b=1`, and then iterates through
the sequence by adding the current value of `a` to `b`. The `yield` statement
returns the values in the sequence, so you can use this function as a generator
or an iterator:
\```python
for number in fibonacci(5):
print(number) # Outputs: 0 1 1 2 3
\```
If `n` is greater than 100, the function raises a ValueError to indicate that it
cannot handle such input.
Running this indeed gives the correct function. Enjoy!