Skip to main content

A simple custom LLM wrapper for llama.cpp with LangChain compatibility.

Project description

real-llama-cpp-python

A simple custom wrapper for llama.cpp models in Python, support seamlessly interaction with LangChain. As the name suggests, it is truly a wrapper for llama.cpp, you should have installed llama.cpp into your machine prior to this.

Background

While it might seem intuitive that llama-cpp-python would seamlessly integrate with llama.cpp, the reality is that installing llama-cpp-python is a pain in the bum. It is NOT simple as described pip install llama-cpp-python.

Langchain, by default, supports llama-cpp-python. If you have a pipeline that works with Langchain, it would be very difficult to run the latest quantized model (gguf files downloaded from HuggingFace) from llama.cpp. The real-llama-cpp-python is a simplified and an alternative library designed to seamlessly integrate with LangChain while avoiding the pain of installing the library llama-cpp-python.

llama.cpp can be installed or built easily. (If you are facing the challenge by the time you install llama.cpp, the llama.cpp community is also very active that any issue can be resolved in a few days (unlike llama-cpp-python).

Installation

As the name said, it is truly a wrapper for llama.cpp, you should first install llama.cpp into your machine.

1 Install llama.cpp first

After successfully built/installed llama.cpp. You want to add llama.cpp directory to your PATH permanently by editing your shell configuration file:

vim ~/.bashrc 

or

source ~/.zshrc

Add the following line:

export PATH=$PATH:/path/to/your/llama.cpp/build/bin

Save and run source ~/.bashrc or source ~/.zshrc You should be able to run llama-cli and llama-server from any directory. Verify the accessibility, run the following commands in any directory

llama-cli --help
llama-server --help

2 Install llama.cpp

Now, you can install real-llama-cpp-python by either install the stable version through pip install

pip install real-llama-cpp-python

or clone the github repository for the developing features.

git clone https://github.com/minhtran1309/real-llama-cpp-python.git
cd real-llama-cpp-python
pip install -e .

3 Running the tests

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

real_llama_cpp_python-0.1.3.tar.gz (17.6 kB view details)

Uploaded Source

Built Distribution

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

real_llama_cpp_python-0.1.3-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file real_llama_cpp_python-0.1.3.tar.gz.

File metadata

  • Download URL: real_llama_cpp_python-0.1.3.tar.gz
  • Upload date:
  • Size: 17.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.2

File hashes

Hashes for real_llama_cpp_python-0.1.3.tar.gz
Algorithm Hash digest
SHA256 bb905afd5891a14c02222556b050f6b5b4adbaf16520d36b2093be068522b42a
MD5 452b626dadd74f97a1c6cd7008d58869
BLAKE2b-256 3541f905438e8eb8ca85438cf6bb5a98b735adc13f0fd8fdd8fe431400dcd27a

See more details on using hashes here.

File details

Details for the file real_llama_cpp_python-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for real_llama_cpp_python-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 6e61a777c344d37db931055cfde87d507b23a9d8c3269838266bf81121990031
MD5 82b5b7c5f0769dc246333af43efc2ab1
BLAKE2b-256 389f1499b3dd7c38ef6db8a4b97c6312f0fde8219e4fbbdb96b163b0b7dbd446

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