Project Awesome project awesome

NobodyWho

The simplest way to run an LLM locally. Supports tool calling and grammar constrained sampling.

Package 860 stars GitHub

Discord Matrix Mastodon Pub.dev Version PyPI Version npm Version Godot Engine Contributor Covenant Docs

NobodyWho Logo

NobodyWho

On-device AI for any device.
NobodyWho is an inference engine that lets you run LLMs locally and efficiently.


✨ Features

  • Run locally, offline — no API keys needed or hidden fees
  • Run any chat LLM — Gemma, Qwen, Mistral and more
  • Fast, type-safe tool calling — automatically generates structured grammars from your function signatures, no schema writing needed
  • Multimodal input — provide image and audio information to your LLM
  • Model downloading — load models directly from Hugging Face or any URL

⚡️ Under the Hood

  • Conversation-aware preemptive context shifting — retain full conversation memory without any message length limits
  • GPU-accelerated inference via Vulkan or Metal — runs fast on any OS
  • Compatible with thousands of pre-trained LLMs — use any LLM in the GGUF format
  • Powered by the wonderful llama.cpp

Platforms

We support Python, Flutter, React Native and Godot, with more integrations on the way.

Platform Installation Documentation
React Native npm docs.nobodywho.ooo/react-native
Flutter pub.dev docs.nobodywho.ooo/flutter
Python pypi docs.nobodywho.ooo/python
Godot AssetLib docs.nobodywho.ooo/godot

Quick Start

React Native

import { Chat } from "react-native-nobodywho";

const chat = await Chat.fromPath({
  modelPath: "hf://NobodyWho/Qwen_Qwen3-0.6B-GGUF/Qwen_Qwen3-0.6B-Q4_K_M.gguf",
});

const msg = await chat.ask("What is the capital of Denmark?").completed();
console.log(msg); // The capital of Denmark is Copenhagen.

Install via npm:

npm install react-native-nobodywho

React Native documentation - npm - starter example app


Flutter

import 'package:nobodywho/nobodywho.dart' as nobodywho;

void main() async {
  await nobodywho.NobodyWho.init();

  final chat = await nobodywho.Chat.fromPath(
    modelPath: 'huggingface:NobodyWho/Qwen_Qwen3-0.6B-GGUF/Qwen_Qwen3-0.6B-Q4_K_M.gguf',
  );

  final msg = await chat.ask('What is the capital of Denmark?').completed();
  print(msg); // The capital of Denmark is Copenhagen.
}

Install via pub.dev:

flutter pub add nobodywho

Flutter documentation - pub.dev - starter example app


Python

from nobodywho import Chat

chat = Chat("huggingface:NobodyWho/Qwen_Qwen3-0.6B-GGUF/Qwen_Qwen3-0.6B-Q4_K_M.gguf")

response = chat.ask("What is the capital of Denmark?").completed()
print(response) // The capital of Denmark is Copenhagen.

Install via pip:

pip install nobodywho

Python documentation - pypi


Godot

You can install it from inside the Godot editor: In Godot 4.5+, go to AssetLib and search for "NobodyWho".

...or you can grab a specific version from our github releases page. You can install these zip files by going to the "AssetLib" tab in Godot and selecting "Import".

Make sure that the ignore asset root option is set in the import dialogue.

For further instructions on how to setup NobodyWho in Godot please refer to our docs.


Documentation

The documentation has everything you might want to know: https://docs.nobodywho.ooo/

How to Help

  • ⭐ Star the repo and spread the word about NobodyWho!
  • Join our Discord or Matrix communities
  • Found a bug? Open an issue!
  • Submit your own PR - contributions welcome
  • Help improve docs, write tutorials and demos

Can I export to HTML5 or iOS?

Desktop (Linux, MacOS, Windows) is supported across all bindings. Android is supported on Godot, Flutter and React Native. iOS is supported on Flutter and React Native.

Web exports will be a bit trickier to get right. See issue #111.

Licensing

There has been some confusion about the licensing terms of NobodyWho. To clarify:

Linking two programs or linking an existing software with your own work does not – at least under European law – produce a derivative or extend the coverage of the linked software licence to your own work. [1]

You are allowed to use this plugin in proprietary and commercial projects, free of charge.

If you distribute modified versions of the code in this repo, you must open source those changes.

Feel free to make proprietary projects using NobodyWho, but don't make a proprietary fork of NobodyWho.

Back to Machine Learning