explaingit

datawhalechina/self-llm

Analysis updated 2026-05-18

30,278Jupyter NotebookAudience · developerComplexity · 3/5LicenseSetup · hard

TLDR

Chinese tutorials for setting up, deploying, and fine-tuning open-source LLMs locally on Linux without paid APIs.

Mindmap

mindmap
  root((repo))
    What it does
      Deploy LLMs locally
      Fine-tune models
      Chat with AI
    Learning path
      Environment setup
      Model deployment
      Fine-tuning techniques
    Supported models
      LLaMA ChatGLM
      Qwen InternLM
      DeepSeek others
    Tech approach
      LoRA training
      Full-parameter tuning
      Jupyter Notebooks
    Audience
      Students researchers
      No API budget
      Linux users
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run a private chatbot on your own hardware without paying for API calls.

USE CASE 2

Fine-tune an open-source model on your own data to specialize it for a specific task.

USE CASE 3

Learn how LLMs work by deploying and experimenting with them step-by-step.

USE CASE 4

Set up a local AI development environment on Linux for research or prototyping.

What is it built with?

PythonJupyter NotebookPyTorchLinuxLLaMAChatGLMQwen

How does it compare?

datawhalechina/self-llmdatawhalechina/happy-llmageron/handson-ml2
Stars30,27829,94929,941
LanguageJupyter NotebookJupyter NotebookJupyter Notebook
Setup difficultyhardmoderatemoderate
Complexity3/53/52/5
Audiencedeveloperdevelopervibe coder

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1day+

Requires GPU/CUDA setup, large model downloads (10GB+), and PyTorch compilation, significant system prerequisites.

Use freely for any purpose including commercial. Keep the notice and disclose changes to the patent grant.

In plain English

This project is a Chinese-language tutorial collection for learning how to set up, run, and fine-tune open-source large language models (LLMs), AI systems trained to understand and generate text, on a Linux system. The goal is to make it accessible to students and researchers who want to work with these models locally rather than relying on paid API services. The tutorials cover three main stages: configuring the hardware and software environment, deploying models so you can actually chat with them, and fine-tuning, the process of adapting a general-purpose model to a specific task or style using your own data. Fine-tuning techniques covered include LoRA (a lightweight method that adjusts only a small portion of the model's parameters) and full-parameter training. Over 50 open-source language models are supported, including models like LLaMA, ChatGLM, Qwen, InternLM, and DeepSeek. Each model has its own step-by-step guide. The tutorials are written primarily in Chinese and presented as Jupyter Notebooks, interactive documents that mix explanatory text and runnable code. You would use this project if you want hands-on experience running AI models on your own hardware without needing to pay for cloud AI API access.

Copy-paste prompts

Prompt 1
Walk me through the steps in this self-llm tutorial to deploy ChatGLM on my Linux machine and chat with it locally.
Prompt 2
Show me how to use LoRA fine-tuning from this repo to adapt LLaMA to my custom dataset without retraining the whole model.
Prompt 3
I want to follow the self-llm guides to set up my environment and run InternLM locally, what are the hardware requirements and installation steps?
Prompt 4
Help me understand the fine-tuning workflow in self-llm: what's the difference between LoRA and full-parameter training, and when should I use each?

Frequently asked questions

What is self-llm?

Chinese tutorials for setting up, deploying, and fine-tuning open-source LLMs locally on Linux without paid APIs.

What language is self-llm written in?

Mainly Jupyter Notebook. The stack also includes Python, Jupyter Notebook, PyTorch.

What license does self-llm use?

Use freely for any purpose including commercial. Keep the notice and disclose changes to the patent grant.

How hard is self-llm to set up?

Setup difficulty is rated hard, with roughly 1day+ to a first successful run.

Who is self-llm for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub datawhalechina on gitmyhub

Verify against the repo before relying on details.