Ollama: The Ultimate Guide

Your complete roadmap to running large language models locally.

Get Free Toolkit

1. Introduction: What is Ollama?

Ollama is a powerful, open-source tool that helps you run large language models (LLMs) on your computer. This means you can build and test AI tools without needing an internet connection or expensive cloud subscriptions. It's a game-changer for people who work in software development and quality assurance.

Think of it like Docker, but for AI.
Just as Docker packages a full application to make it easy to run, Ollama does the same thing for AI models. It takes care of all the complex parts so you can focus on building and testing your projects.

The main reason QA professionals love Ollama is because it keeps your data private and secure. By running AI models on your own machine, your confidential information never leaves your computer. This makes it a perfect solution for testing and building secure local AI applications.

2. Local vs. Cloud: A Head-to-Head Comparison

Choosing between local and cloud AI is a major decision for any QA professional. While cloud solutions offer simplicity and massive scalability, a local setup gives you complete control. This comparison highlights why running models locally with Ollama is a powerful option for your daily work, especially for testing, security, and cost control.

Privacy
Cost
Control
Speed
Scalability

3. The Ollama Advantage

Unmatched Privacy & Security

Your data never leaves your computer. This is essential for handling confidential test data and proprietary code without risk.

Zero Cost to Run

There are no API fees or usage costs. After the initial model download, you can run as many tests and queries as you want without worrying about a bill.

Offline Capability

All models run entirely offline. You can test and develop your AI applications anywhere, without needing a reliable internet connection.

Complete Control

You have full control over the models, their versions, and their configurations. This is critical for creating consistent and repeatable tests.

4. How It Works: A Simple 3-Step Process

1

Install Ollama

Download and install the desktop application. It runs a local server for you.

2

Pull a Model

Use a simple command to download a model from the Ollama library. It's like pulling a Docker image.

3

Interact with the Model

Start chatting in your terminal or make an API call from your code. It's that easy!

5. The Model Universe: Find Your Perfect Fit

Ollama's library is home to dozens of powerful models, each with different strengths. The model you choose will depend on your specific needs and hardware. This guide helps you quickly find the right one for you.

Text & Chat Models

Llama 3

Great for general chat and complex reasoning tasks. The largest version, Llama 3:70B, is highly capable but requires significant hardware.

Llama 3:8BLlama 3:70BLlama 3:405B

Mistral

A fast and efficient model, perfect for summarization and text generation. The Mixtral version is a "Mixture of Experts" model that is highly performant.

Mistral:7BMixtral:8x7BMixtral:8x22B

Code & Development Models

Code Llama

A specialized version of Llama 3 for coding. Great for generating code, debugging, and explaining scripts and pipelines.

Code Llama:7BCode Llama:13BCode Llama:34B

DeepSeek Coder

Another powerful model for code generation. Its large context window makes it ideal for working with larger codebases and complex projects.

DeepSeek:1.3BDeepSeek:7BDeepSeek:33B

Image & Multimodal Models

LLaVA & BakLLaVA

These multimodal models can understand and reason about images. They are perfect for tasks like describing images, answering questions about charts, creating test cases from images, or performing visual regression tests.

BakLLaVALLaVA:7BLLaVA:13B

6. Model Specifications: Parameters and Context

When choosing a model, two specifications are the most important to consider for performance and capability: the number of parameters and the context window.

Parameters

The total number of parameters in a model's neural network, measured in billions (B). More parameters generally mean a smarter, more capable model, but they also demand significantly more GPU memory and processing power.

Context Window

This defines the maximum number of tokens a model can process at one time. A larger context window allows the model to remember more of a conversation or analyze larger documents and codebases.

7. How to Use Ollama: The CLI Method

The command-line interface (CLI) is a powerful tool for rapid testing and managing your local environment. The REST API is the other key way to automate your workflows.

Quick Reference: Your Daily Toolkit

ollama run llama3

Pulls a model if it doesn't exist and starts an interactive session.

ollama pull llama3

Downloads a model without running it. Perfect for setting up your environment offline.

ollama list

Shows all the models you have downloaded locally.

ollama rm llama3

Removes a specific model from your local machine, freeing up disk space.

Comprehensive Command Reference

CommandDescription
ollama -hDisplays a list of all available commands and flags.
ollama serveStarts the Ollama server. This is often not needed as the desktop app handles it.
ollama create <model> -f <file>Creates a custom model from a Modelfile.
ollama show <model>Shows detailed information about a model's parameters and configuration.
ollama psLists all currently running models.
ollama cp <source> <destination>Copies a model with a new name.
ollama push <model>Uploads a model to a registry.
ollama run --verbose <model>Runs a model and outputs detailed logs, useful for debugging.

8. Using the REST API for Automation

The true power of Ollama for QA automation comes from its REST API. You can send requests to your local Ollama server from any programming language or testing tool to integrate LLMs directly into your test suites and applications.

REST API Endpoints

CommandDescription
POST /api/generateGenerates a response from a model for a single-turn prompt.
POST /api/chatGenerates a chat completion with full conversation history.
GET /api/tagsLists all local models (equivalent to ollama list).
POST /api/pullDownloads a model from the library (equivalent to ollama pull).
DELETE /api/deleteDeletes a model from the local machine (equivalent to ollama rm).
GET /api/showShows information about a model (equivalent to ollama show).

Code Example: Making an API Call (Python)

import requests
import json

# The local Ollama server is available at http://localhost:11434
def generate_text(prompt):
    url = 'http://localhost:11434/api/generate'
    headers = {
        'Content-Type': 'application/json'
    }
    data = {
        'model': 'llama3',
        'prompt': prompt,
        'stream': False
    }
    try:
        response = requests.post(url, headers=headers, data=json.dumps(data))
        response.raise_for_status()
        return response.json()
    except requests.exceptions.RequestException as e:
        print(f'Error during API call: {e}')
        return None

# Example usage for a simple prompt
result = generate_text('What is the capital of France?')
if result:
    print(result['response'])

# --- Advanced example for chat completion with history ---
def chat_completion(messages):
    url = 'http://localhost:11434/api/chat'
    headers = {
        'Content-Type': 'application/json'
    }
    data = {
        'model': 'llama3',
        'messages': messages,
        'stream': False
    }
    try:
        response = requests.post(url, headers=headers, data=json.dumps(data))
        response.raise_for_status()
        return response.json()
    except requests.exceptions.RequestException as e:
        print(f'Error during API call: {e}')
        return None

# Example chat history
chat_history = [
    {'role': 'user', 'content': 'What is the capital of France?'},
]

chat_result = chat_completion(chat_history)
if chat_result:
    print(chat_result['message']['content'])

9. Empower Your Testing Workflow

You now have everything you need to start building and testing with AI locally. By using Ollama, you've unlocked a world of benefits: uncompromised privacy, zero running costs, and complete control over your environment. The future of testing is here - and it's on your machine. Now go build something amazing!

Ready to Dive Deeper?

Download our exclusive toolkit to supercharge your local AI workflows.

A printable PDF version of this guideStarter Python scripts for automationA Postman Collection for the REST API
Download Now
The Complete Guide How To Run Local AI With Ollama | SuperSQA