Skip to main content

Local LLM Made Simple - Consumer-friendly AI assistant

Project description

LMAPP

Local LLM CLI โ€“ AI everywhere. Easy, simple, and undeniable.
Online or offline. The future is yours to command.

License: MIT PyPI CI codecov Status

v0.3.0-beta - Production Ready. Fully Featured. Free.

See Demo & Features for examples and use cases.


๐Ÿš€ Quick Start

Full installation and setup: see QUICKSTART.md.

Everyday commands:

lmapp chat          # Start chatting locally
lmapp status        # Check backend/model status
lmapp config show   # View current configuration

More examples and demos: see DEMO.md.


๐ŸŽฏ Features

๐Ÿ’ฌ Chat

$ lmapp chat --model mistral
โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
โ•‘        Chat with Mistral (Local)           โ•‘
โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

You: Explain quantum computing in simple terms

AI: Quantum computers use quantum bits (qubits) instead of regular bits.
While regular bits are 0 or 1, qubits can be both at once (superposition).
This lets them solve certain problems exponentially faster...

You: What are the use cases?

AI: Key use cases include:
  โ€ข Drug discovery (molecular simulation)
  โ€ข Finance (portfolio optimization)
  โ€ข Cryptography (breaking encryption)
  โ€ข Machine learning (optimization)

๐Ÿ” RAG (Semantic Search)

$ lmapp rag index ~/my_docs
๐Ÿ“ Indexing documents...
โœ“ Processed: README.md (1,234 tokens)
โœ“ Processed: GUIDE.pdf (5,678 tokens)
โœ“ Processed: NOTES.txt (892 tokens)
โœ“ Index created: 7,804 tokens in 12 documents

$ lmapp rag search "how to optimize python code"
๐Ÿ“Š Search Results (3 matches):

1. GUIDE.pdf - Line 45 (score: 0.92)
   "Optimization techniques include: list comprehensions,
    caching, and using built-in functions instead of loops"

2. NOTES.txt - Line 12 (score: 0.88)
   "Profile code with cProfile before optimizing"

3. README.md - Line 89 (score: 0.81)
   "Performance tips for production code"

$ lmapp chat --with-context
You: Summarize the best Python optimization tips from my docs

AI: Based on your documents, here are the key optimization tips:
  1. Use list comprehensions instead of loops
  2. Profile with cProfile before optimizing
  3. Leverage built-in functions (map, filter, etc.)
  4. Implement caching for expensive operations

๐Ÿ“ฆ Batch Processing

$ lmapp batch create inputs.json
Processing 5 queries in batch...
[โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ] 100% (5/5)

Job created: batch_20250211_143022
Estimated time: 45 seconds

$ lmapp batch results batch_20250211_143022 --json
{
  "job_id": "batch_20250211_143022",
  "status": "completed",
  "results": [
    {"input": "Explain AI", "output": "AI is..."},
    {"input": "What is ML?", "output": "Machine learning..."},
    ...
  ],
  "completed_at": "2025-02-11T14:30:47Z"
}

๐Ÿ”Œ Plugins

$ lmapp plugin list
Available Plugins:
  โœ“ translator     - Real-time translation (8 languages)
  โœ“ summarizer     - Extract key points from long text
  โœ“ code-reviewer  - Analyze code and suggest improvements
  โœ“ sql-generator  - Write SQL queries from descriptions
  โœ“ regex-helper   - Build and test regex patterns
  โœ“ json-validator - Validate and format JSON
  โœ“ git-helper     - Explain git commands and operations
  โœ“ api-tester     - Test REST APIs interactively

$ lmapp plugin install translator
Installing translator plugin...
โœ“ Downloaded (245 KB)
โœ“ Installed successfully
Ready to use: lmapp translate --help

$ lmapp translate --text "Hello World" --to spanish
Translation (Spanish):
"ยกHola Mundo!"

โš™๏ธ Configuration

$ lmapp config show
Current Configuration:
  Model: mistral (7B)
  Temperature: 0.7
  Max Tokens: 2048
  Context Size: 4096
  System Prompt: You are a helpful AI assistant

$ lmapp config set temperature 0.3
โœ“ Configuration updated

$ lmapp config --set-prompt
Enter your custom system prompt:
> You are a Python expert. Help with code, explain concepts clearly.
โœ“ System prompt saved

$ lmapp status
Status Report:
  โœ“ Backend: Ollama (running)
  โœ“ Model: mistral (7.4B)
  โœ“ Memory: 6.2 GB / 16 GB
  โœ“ Performance: 45 tokens/sec

๐Ÿ’ก Who Is This For?

Perfect Fit

  • Developers - Code explanations, debugging, documentation, CLI workflows
  • Students & Researchers - Study partner, research assistance, offline-first
  • SysAdmins - Command lookups, automation scripts, system analysis
  • Professionals - Writing, analysis, research, note-taking
  • Privacy-Conscious Users - Want AI without cloud dependencies
  • Anyone who values control over convenience


๐Ÿ“– Basic Usage

# Start chat
lmapp chat

# Use specific model
lmapp chat --model mistral

# Check status
lmapp status

# View configuration
lmapp config show

Supported Backends: Ollama, llamafile (auto-detected). Extensible architecture supports custom backends.

See QUICKSTART.md for complete usage guide.


โœ… Quality & Features

  • ๐Ÿงช 587 tests (100% coverage)
  • ๐Ÿ”’ 100% private (no cloud, no tracking)
  • โšก Fast & lightweight (<200ms startup)
  • ๐Ÿ”Œ 8 production plugins
  • ๐Ÿ” RAG system (semantic search)
  • ๐Ÿ“ฆ Batch processing
  • ๐Ÿ’พ Session persistence
  • ๐ŸŒ Web UI (optional)

๐Ÿ” Privacy & Security

  • 100% Local - Everything runs on your device
  • No Cloud - No internet after setup
  • No Telemetry - Zero tracking
  • Open Source - MIT licensed
  • Your Data - You own it all

๐Ÿ—บ๏ธ Roadmap

v0.3.0 (Current) - Production ready
v0.4.0+ - Mobile/desktop apps, team features, enterprise tier


๐Ÿค Contributing

Help wanted! See Contributing Guide for code contributions, bug reports, or feature ideas.


All contributions welcome: bug fixes, features, documentation, tests, and ideas.


๐Ÿ’ฌ Support


โš™๏ธ Troubleshooting

Issue Solution
command not found Add ~/.local/bin to $PATH or use pipx install lmapp
ModuleNotFoundError Reinstall: pip install --upgrade lmapp
Debian/Ubuntu issues Use pipx install lmapp instead of pip

See Troubleshooting Guide for more.


โ“ FAQ

Q: How do I install?
pip install lmapp

Q: How do I update?
pip install --upgrade lmapp

Q: Can I use commercially?
Yes! MIT License allows it. See LICENSE.

Q: Does it collect data?
No. 100% local, no telemetry.

More questions? See Troubleshooting Guide.


๐Ÿ“š Documentation


๐Ÿ“„ License

MIT License - See LICENSE file

This means:

  • โœ… Use commercially
  • โœ… Modify and distribute
  • โœ… Include in closed-source projects
  • โœ… Just include the license

Third-Party Licenses

  • Ollama: MIT License
  • llamafile: Apache 2.0 License
  • Pydantic: MIT License
  • Pytest: MIT License
  • AI Models: Various (see model documentation)

๐Ÿ™ Built With

  • Ollama - LLM management platform
  • llamafile - Portable LLM runtime
  • Pydantic - Data validation
  • Pytest - Testing framework
  • Meta, Mistral, and other amazing AI model creators

โญ Show Your Support

If lmapp helps you, please:

  • โญ Star this repository
  • ๐Ÿ› Report bugs and suggest features
  • ๐Ÿ“ข Share with friends and colleagues
  • ๐Ÿค Contribute improvements
  • ๐Ÿ“ Share your use cases

๐Ÿ“ž Get Started Now

pip install lmapp
lmapp chat

๐Ÿ“– Documentation Map

Document Purpose
QUICKSTART.md 5-minute setup guide โญ Start here
docs/installation.md Installation methods for all platforms
docs/CONFIGURATION.md Configuration, environment, and settings
docs/development.md Developer workflow and tips
TROUBLESHOOTING.md Solutions for common issues
SECURITY.md Security policy and vulnerability reporting
CHANGELOG.md Release history
CONTRIBUTING.md Contribution guidelines
CODE_OF_CONDUCT.md Community standards
LICENSE License terms
DEMO.md Live examples and feature tour
API_REFERENCE.md Lightweight CLI + HTTP API reference

Additional references:


Welcome to the future of local AI. ๐Ÿš€

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lmapp-0.3.0b0.tar.gz (166.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lmapp-0.3.0b0-py3-none-any.whl (146.4 kB view details)

Uploaded Python 3

File details

Details for the file lmapp-0.3.0b0.tar.gz.

File metadata

  • Download URL: lmapp-0.3.0b0.tar.gz
  • Upload date:
  • Size: 166.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lmapp-0.3.0b0.tar.gz
Algorithm Hash digest
SHA256 57d15c451264dacc73dc4ad437f030f07c8c2cd27a0d5137f72c5ea6dc167c35
MD5 eb7213b9051d2b03a0315183aca9c25f
BLAKE2b-256 b4ba967f84226f516f9ab013c9a799a4d258bd202962c08fcf9492ae90b1a153

See more details on using hashes here.

Provenance

The following attestation bundles were made for lmapp-0.3.0b0.tar.gz:

Publisher: publish.yml on nabaznyl/lmapp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lmapp-0.3.0b0-py3-none-any.whl.

File metadata

  • Download URL: lmapp-0.3.0b0-py3-none-any.whl
  • Upload date:
  • Size: 146.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lmapp-0.3.0b0-py3-none-any.whl
Algorithm Hash digest
SHA256 777f3e5f329f9a4782dc4def21bac802d5fdee35a7b83f7ca20f19780d4f9b4d
MD5 db549cb6cfddea52a2ea6e54ccccd9fc
BLAKE2b-256 06de87ba286023cd5ae7e93abb08244d06762785d8deb5a6e76140b78410c893

See more details on using hashes here.

Provenance

The following attestation bundles were made for lmapp-0.3.0b0-py3-none-any.whl:

Publisher: publish.yml on nabaznyl/lmapp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page