Skip to main content

A simple Ollama-like tool for running LLMs locally

Project description

Easy Edge

PyPI Python License

A simple Ollama-like tool for running Large Language Models (LLMs) locally using llama.cpp under the hood.

Features

  • 🚀 Local LLM Inference: Run models locally using llama.cpp
  • 📥 Automatic Downloads: Download models from URLs or Hugging Face
  • 💬 Interactive Chat: Chat with models in an interactive terminal
  • 📋 Model Management: List, download, and remove models
  • ⚙️ Configurable: Customize model parameters and settings

Installation

Install Easy Edge from PyPI:

pip install easy-edge

Or, to install the latest version from source:

git clone https://github.com/criminact/easy-edge.git
cd easy-edge
pip install .

Usage

After installation, use the easy-edge command from your terminal:

Download a Model

easy-edge pull --repo-id TheBloke/Llama-2-7B-Chat-GGUF --filename llama-2-7b-chat.Q4_K_M.gguf

Or download from a Hugging Face URL:

easy-edge pull --url https://huggingface.co/google/gemma-3-1b-it-qat-q4_0-gguf/resolve/main/gemma-3-1b-it-q4_0.gguf

Run the Model

Single prompt:

easy-edge run gemma-3-1b-it-qat-q4_0-gguf --prompt "Hello, how are you?"

Interactive chat:

easy-edge run gemma-3-1b-it-qat-q4_0-gguf --interactive

List Installed Models

easy-edge list

Remove a Model

easy-edge remove gemma-3-1b-it-qat-q4_0-gguf

Configuration

The tool stores configuration in models/config.json. You can modify settings like:

  • max_tokens: Maximum tokens to generate (default: 2048)
  • temperature: Sampling temperature (default: 0.7)
  • top_p: Top-p sampling parameter (default: 0.9)

Requirements

  • Python 3.11+
  • 8GB+ RAM (for 7B models)
  • 16GB+ RAM (for 13B models)
  • 4GB+ free disk space per model

Troubleshooting

Common Issues

  1. "llama-cpp-python not installed"

    pip install llama-cpp-python
    
  2. Out of memory errors

    • Try smaller models (7B instead of 13B)
    • Use more quantized models (Q4_K_M instead of Q8_0)
    • Close other applications to free up RAM
  3. Slow inference

    • The tool uses all CPU cores by default
    • For better performance, consider using GPU acceleration (requires CUDA)

GPU Acceleration (Optional)

For faster inference with NVIDIA GPUs:

pip uninstall llama-cpp-python
pip install llama-cpp-python --force-reinstall --index-url=https://jllllll.github.io/llama-cpp-python-cuBLAS-wheels/AVX2/cu118

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

MIT License - see LICENSE file for details.

Acknowledgments

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

easy_edge-0.1.2.tar.gz (11.6 kB view details)

Uploaded Source

Built Distribution

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

easy_edge-0.1.2-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

Details for the file easy_edge-0.1.2.tar.gz.

File metadata

  • Download URL: easy_edge-0.1.2.tar.gz
  • Upload date:
  • Size: 11.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for easy_edge-0.1.2.tar.gz
Algorithm Hash digest
SHA256 5bb67172fa03fb802881165873d4d567ce9aa425c934edc0e6b6959685618c8a
MD5 f203a3e8317ffa70edf97f3930dfb5e7
BLAKE2b-256 be9a71a8daba6947d808754c2fbd316a811f1826163ef3749d8bd47ab15c8465

See more details on using hashes here.

File details

Details for the file easy_edge-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: easy_edge-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 10.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for easy_edge-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 76de38689fb4fa8734ea44c6b545f27a221041eed2c96c35d43be388469fbbf7
MD5 8d56610a7bb68b5c83025874951b0b1b
BLAKE2b-256 9ae2bfc99ae25d69b88a83873a46579cb661660d0dad71a6fa3b8097192476ed

See more details on using hashes here.

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