Skip to content

Sabbir Mohammad Sami web developer

ResumeDownload Resume

All notes

(AI)5 min read

Run AI Models Locally for Free with Ollama: Step by Step

Ollama runs open AI models such as Gemma 4, Qwen and Llama on your own computer — free, private and offline once a model is downloaded. Install it with one command, pull a model, then chat in the terminal or the desktop app, or call its local API on port 11434, which also speaks the OpenAI format.

Cover: “Run AI locally” in heavy capitals beside a terminal running “ollama run gemma4”Cover: “Run AI locally” in heavy capitals beside a terminal running “ollama run gemma4”

( Before you start )

Why run AI locally

  • Private — prompts and code never leave your machine.
  • Offline — once a model is downloaded, it works on a plane.
  • No quotas — the only limit is your hardware.
  • Free — the software and the open models cost nothing.

The trade-off is size: a model that fits on a laptop is less capable than the largest hosted ones, and it is only as fast as your memory and GPU allow. For explaining code, drafting, summarising and autocomplete, small models are genuinely useful.

( Step by step )

Install Ollama

Bash
# macOS and Linux
curl -fsSL https://ollama.com/install.sh | sh

# Windows (PowerShell)
irm https://ollama.com/install.ps1 | iex
  • You can also download the app from ollama.com/download. On macOS and Windows it includes a desktop app for chatting, dropping in files and images, and downloading models.
  • macOS needs Sonoma (14) or later; Apple silicon Macs use the GPU, Intel Macs run on the CPU.
  • Windows needs Windows 10 22H2 or later and no administrator rights.
  • Check the install with ollama -v. On Linux, start the server with ollama serve if it is not already running.

Run your first model

Bash
ollama run gemma4

The first run downloads the model, then drops you into a chat. Type /bye to leave, and wrap multi-line input in """. You can also ask a single question without entering the chat:

Bash
ollama run gemma4 "Explain React's useEffect in two sentences"

How much memory do you need? Ollama’s quickstart uses gemma4:e2b, about a 7.2 GB download, and recommends 8 GB of free VRAM — or unified memory on a Mac. With less, Ollama falls back to system RAM, which works but answers more slowly.

Manage your models

CommandWhat it does
ollama pull gemma4Download a model without starting a chat
ollama listShow downloaded models (also ollama ls)
ollama psShow the models loaded in memory right now
ollama stop gemma4Unload a running model
ollama rm gemma4Delete a model from disk
ollama show gemma4Show a model’s details, parameters and licence
ollama cp gemma4 my-gemmaCopy a model under a new name

Which model should you use?

These tags exist in the Ollama library today; sizes are the download sizes it lists.

UseModel tagDownload
Chat on 8 GBllama3.2:3b2.0 GB
Chat on 8 GBgemma3:4b3.4 GB
Chat on 16 GBqwen3:8b5.2 GB
Chat on 16 GBgemma4:e4b (the default gemma4)6.6–9.5 GB
Reasoningdeepseek-r1:8b5.2 GB
Codingqwen2.5-coder:7b4.7 GB
Fast autocompleteqwen2.5-coder:1.5b986 MB
Images in, text outqwen3-vl:8b6.1 GB

Vision models take an image path inside the prompt: ollama run gemma4 "What is in this image? ./screenshot.png".

Use the local API

While Ollama runs, it serves an API at http://localhost:11434. The native chat endpoint:

Bash
curl http://localhost:11434/api/chat -d '{
  "model": "gemma4",
  "messages": [{ "role": "user", "content": "Why is the sky blue?" }],
  "stream": false
}'

Responses stream by default; "stream": false returns one JSON reply. Ollama also speaks the OpenAI format at /v1/chat/completions, so code written for that format can point at your machine instead. From JavaScript:

TypeScript
const res = await fetch('http://localhost:11434/v1/chat/completions', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({
    model: 'qwen2.5-coder:7b',
    messages: [{ role: 'user', content: 'Write a debounce function in TypeScript' }],
  }),
});
const data = await res.json();
console.log(data.choices[0].message.content);

There is an Anthropic-compatible endpoint at /v1/messages as well. Source: Ollama API docs.

Make a custom model

A Modelfile sets a base model, its parameters and a system prompt. Save this as Modelfile:

Text
FROM qwen2.5-coder:7b
PARAMETER temperature 0.2
SYSTEM You are a senior TypeScript reviewer. Answer briefly and point out bugs first.
Bash
ollama create ts-reviewer -f ./Modelfile
ollama run ts-reviewer

ollama create needs the new model’s name — ts-reviewer here — before -f, even though one example in the docs leaves it out.

Use it in VS Code

  • The official Ollama extension (Ollama.ollama) adds your local models to VS Code’s chat. It needs VS Code 1.127 or later and finds Ollama at http://127.0.0.1:11434. Source: Ollama VS Code docs.
  • Continue works with Ollama through ~/.continue/config.yaml, but the project is no longer actively maintained, so prefer the official extension for new setups.

For a full editor setup around it, see VS Code extensions and settings for Next.js.

( Going further )

Local models and cloud models

Ollama now also offers cloud models — tags ending in -cloud or :cloud — which run on Ollama’s servers and need ollama signin. They are not private or offline like local models, and the free plan includes only a small monthly allowance. Everything in this guide uses local models.

Ollama FAQ

Is Ollama really free?
Yes. Ollama is open source under the MIT licence, and running open models on your own machine costs nothing. Only its optional cloud models have paid plans.
How much RAM do I need to run AI locally?
About 8 GB of free memory runs the small models comfortably, such as llama3.2:3b or gemma4:e2b. 16 GB opens up 7–8B models like qwen2.5-coder:7b.
Does Ollama work offline?
Yes. After a local model is downloaded, chatting and the API work with no internet connection.
Can I use Ollama with code written for the OpenAI API?
Yes. Point the client at http://localhost:11434/v1/; the API key is required by most clients but ignored by Ollama.
Topic
AI
Published
Reading
5 min · 868 words
Sections
10
Tags
  • Ollama
  • Local AI
  • Open models
  • Gemma
  • Qwen
  • Privacy

Experience

( 03 roles — 2+ years )

Full-stack developer in Dhaka, Bangladesh. Building for clients in Germany and Bangladesh since 2022.

  1. (01)

    August 2025 — Present

    Full-Stack Developer

    Susko GmbH · Full Time · Remote

    • Developed and enhanced an AI-powered SaaS and social media automation platform — AI content, image and video generation, automated scheduling and publishing, multi-account and content-team management, Meta, Instagram and Google integrations, WhatsApp-based content generation and scheduling, admin controls and subscription management.
    • Built a full-stack Padel court management and automation system that connects physical court hardware to a real-time web dashboard — court and player management, game control and live scores over WebSocket — and worked on the sensor electronics, PCB design, footprint verification, Gerber validation and JLCPCB manufacturing.
    • Built and maintained automation workflows with n8n, webhooks, APIs and external service integrations that take manual steps out of business processes.
    • Delivered 40+ production websites and full-stack applications for German clients across industries in React, Next.js and TypeScript — shop management, review management and automation, fundraising platforms, menu management, QR code generation and other custom business tools.
    • Optimized backend performance across production applications — database queries, API paths, data processing and Redis-based workflows — for faster, more responsive apps.

    Next.js · React · TypeScript · Node.js · Python · Prisma · Redis · WebSocket · n8n · OpenAI

  2. (02)

    March 2024 — May 2025

    Software Developer

    Bangladesh Associate of IT Solutions · Full Time · On-site

    • Developed a full-stack inventory management system tracking products, sales, payments, returns, waste products, customer ledgers and SMS notifications, in React, TypeScript, Express and MySQL.
    • Scaled an accounting management platform from a single-client application into a multi-user system, with financial dashboards, journal entries, transaction management, reporting and data visualization.
    • Deployed and maintained web applications on cPanel and VPS servers — production deployments, domain configuration, server setup and troubleshooting.
    • Delivered websites for schools, madrasas and other organizations, turning client requirements into responsive, production-ready web applications.
    • Developed and redesigned production and company portfolio websites in React, Next.js and TypeScript, with a focus on responsive design and user experience.

    React · Next.js · TypeScript · Express · MySQL · Tailwind CSS · cPanel · VPS

  3. (03)

    November 2023 — April 2024

    Full-Stack Developer

    Diginie IT · Internship · Remote

    • Completed a remote internship as a full-stack developer, building and maintaining client web applications in Next.js, TypeScript and Tailwind CSS.
    • Turned designs into responsive pages that held together on every screen size, and kept existing client sites running.

    Next.js · TypeScript · Tailwind CSS · GitHub

About

( Dhaka, Bangladesh )

Sabbir Mohammad Sami — full-stack web & app developer at Susko GmbH, building for the web since 2022.

Sabbir Mohammad Sami, smiling and looking off to the side, seated on a white block in a black sweater — black-and-white studio portrait

I’m a full-stack developer from Dhaka who cares about the part people actually touch — unusual layouts, careful CSS, motion that means something — and about the code underneath being just as clean.

( Story )

I grew up in Dhaka and studied arts and humanities at Kabi Nazrul Government College. Alongside my studies I joined a web development course, and that is where the real growth started — surprise. Alongside work, I am now in my third year of Honours in Economics at National University.

My first website was a tourism site about the place I most wanted to visit. I built it in class 10.

Today I build AI products, automation and client platforms at Susko GmbH, after two years of shipping inventory, accounting and client sites at BAITS. What I am after has not changed: interfaces that look good and back-ends that run smoothly, from the same pair of hands.

Honest, down to earth, and fond of hard work. My inbox is always open — for a project, or just to say hi.

  1. ( Education )

    1. Kabi Nazrul Government College

      • Arts and humanities
      • Dhaka, Bangladesh
    2. National University, Bangladesh

      Session 2023–2024 · Now

      • Honours in Economics — 3rd year
      • Department of Economics
  2. ( Co-curricular )

    —

    Bangladesh National Cadet Corps (BNCC)

    • 1 No Battalion, Ramna Regiment
    • Rank: Cadet Corporal
  3. ( Languages )

    Bangla, English, Hindi

    • Bangla — native
    • English — comfortable
    • Hindi — fluent

( Skills )

Expertise
React · Next.js · JavaScript · TypeScript · MongoDB · Bootstrap · Tailwind CSS · shadcn/ui · GitHub · Figma
Comfortable
Flutter · Dart · MySQL · Mongoose · Express · TanStack Query · Firebase · React Router · Photoshop
Familiar
Zod · Framer Motion · GSAP · JWT · Axios · CORS · Stripe · Vercel

( Questions )

Who is Sabbir Mohammad Sami?

Sabbir Mohammad Sami (S M Sami) is a full-stack web and app developer from Dhaka, Bangladesh. Since August 2025 Sami has worked as a Full-Stack Developer at Susko GmbH in Germany, after building inventory and accounting platforms at Bangladesh Associate of IT Solutions (BAITS). Sami has been building for the web since 2022.

What does Sabbir Mohammad Sami build?

Sami builds websites, web apps, mobile apps and AI products end to end: company and restaurant websites, booking and management platforms, an AI social media platform (Kocial), an AI review manager (ReviewSync) and a Flutter money app (Sompi). That includes 40+ production websites for clients in Germany and Bangladesh.

Which technologies does Sami work with?

Sami works across the MERN stack — MongoDB, Express, React and Node.js — and with Next.js, TypeScript, Tailwind CSS, MySQL, PostgreSQL, Prisma and Redis. Mobile apps are built in Flutter and Dart. AI features use the OpenAI API, n8n automations and webhooks, and motion uses GSAP.

Does Sami build mobile apps with Flutter?

Yes. Sami builds cross-platform apps in Flutter and Dart. Sompi, Sami’s own money tracker, runs on Android, iOS, the web and the desktop from one Flutter codebase, with Riverpod for state and an encrypted SQLite store, so every account and transaction stays on the device.

Does Sami build AI products?

Yes. At Susko GmbH Sami builds AI SaaS: Kocial writes captions, generates images and publishes to Facebook and Instagram for agencies, and ReviewSync answers Google reviews in a business’s own voice. Sami also builds n8n workflows that connect AI models to business tools.

How can I hire Sami as a web or app developer in Dhaka?

Email smsami.dev@gmail.com or use the contact form on this site with a short note about the project. Sami works with clients in Dhaka, across Bangladesh and abroad — remotely for companies in Germany — and replies in English or Bangla.

( Contact )

Contact

( Available for projects )

Based in Dhaka, Bangladesh (GMT+6). Happy to talk in English, Bangla or Hindi.

Let’s work together.

Have an exciting project you need help with? Send me an email, give me a call, or write below — a project, a question, or just to say hi.

( Write to me )

* Required