diff options
author | Yuri Victorovich <yuri@FreeBSD.org> | 2024-07-28 16:47:17 -0700 |
---|---|---|
committer | Yuri Victorovich <yuri@FreeBSD.org> | 2024-07-28 16:57:43 -0700 |
commit | cd0465f5d2c19aecf6c863c5ac5565890cd7b554 (patch) | |
tree | ca011deec884d13765574fbc218a31f56761c132 /misc/py-llama-cpp-python | |
parent | devel/py-pydantic-settings: New port: Settings management using Pydantic (diff) |
misc/py-llama-cpp-python: New port: Python bindings for the llama.cpp library
Diffstat (limited to 'misc/py-llama-cpp-python')
-rw-r--r-- | misc/py-llama-cpp-python/Makefile | 38 | ||||
-rw-r--r-- | misc/py-llama-cpp-python/distinfo | 5 | ||||
-rw-r--r-- | misc/py-llama-cpp-python/files/patch-llama__cpp_llama__cpp.py | 11 | ||||
-rw-r--r-- | misc/py-llama-cpp-python/pkg-descr | 5 |
4 files changed, 59 insertions, 0 deletions
diff --git a/misc/py-llama-cpp-python/Makefile b/misc/py-llama-cpp-python/Makefile new file mode 100644 index 000000000000..1a8d2ad7f44b --- /dev/null +++ b/misc/py-llama-cpp-python/Makefile @@ -0,0 +1,38 @@ +PORTNAME= llama-cpp-python +DISTVERSIONPREFIX= v +DISTVERSION= 0.2.84 +CATEGORIES= misc # machine-learning +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} + +MAINTAINER= yuri@FreeBSD.org +COMMENT= Python bindings for the llama.cpp library +WWW= https://llama-cpp-python.readthedocs.io/en/latest/ + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE.md + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}scikit-build-core>0:devel/py-scikit-build-core@${PY_FLAVOR} \ + cmake:devel/cmake-core +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}diskcache>=5.6.1:devel/py-diskcache@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}Jinja2>=2.11.3:devel/py-Jinja2@${PY_FLAVOR} \ + ${PYNUMPY} \ + ${PYTHON_PKGNAMEPREFIX}typing-extensions>=4.5.0:devel/py-typing-extensions@${PY_FLAVOR} +RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}fastapi>=0.100.0:www/py-fastapi@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pydantic-settings>=2.0.1:devel/py-pydantic-settings@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}sse-starlette>=1.6.1:www/py-sse-starlette@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}starlette-context>=0.3.6:www/py-starlette-context@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}uvicorn>=0.22.0:www/py-uvicorn@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pyyaml>=5.1:devel/py-pyyaml@${PY_FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}httpx>=0.24.1:www/py-httpx@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}scipy>=1.10:science/py-scipy@${PY_FLAVOR} + +USES= python shebangfix +USE_PYTHON= pep517 autoplist pytest + +USE_GITHUB= yes +GH_ACCOUNT= abetlen +GH_TUPLE= ggerganov:llama.cpp:4730fac:cpp/vendor/llama.cpp + +SHEBANG_GLOB= *.py + +.include <bsd.port.mk> diff --git a/misc/py-llama-cpp-python/distinfo b/misc/py-llama-cpp-python/distinfo new file mode 100644 index 000000000000..79307b9535ed --- /dev/null +++ b/misc/py-llama-cpp-python/distinfo @@ -0,0 +1,5 @@ +TIMESTAMP = 1722209930 +SHA256 (abetlen-llama-cpp-python-v0.2.84_GH0.tar.gz) = 5b030c3ee8aeefa2f3b49c0788f34b7da3fef2502dd856c68d9ede6b93dd8e53 +SIZE (abetlen-llama-cpp-python-v0.2.84_GH0.tar.gz) = 274756 +SHA256 (ggerganov-llama.cpp-4730fac_GH0.tar.gz) = 8b54c2f6c0560e48cf2af91840c33d81f688edfecbd11043d4bf7c098a125497 +SIZE (ggerganov-llama.cpp-4730fac_GH0.tar.gz) = 19005559 diff --git a/misc/py-llama-cpp-python/files/patch-llama__cpp_llama__cpp.py b/misc/py-llama-cpp-python/files/patch-llama__cpp_llama__cpp.py new file mode 100644 index 000000000000..64e43300b493 --- /dev/null +++ b/misc/py-llama-cpp-python/files/patch-llama__cpp_llama__cpp.py @@ -0,0 +1,11 @@ +--- llama_cpp/llama_cpp.py.orig 2024-07-28 03:36:26 UTC ++++ llama_cpp/llama_cpp.py +@@ -28,7 +28,7 @@ def _load_shared_library(lib_base_name: str): + # for llamacpp) and "llama" (default name for this repo) + _lib_paths: List[pathlib.Path] = [] + # Determine the file extension based on the platform +- if sys.platform.startswith("linux"): ++ if sys.platform.startswith("linux") or sys.platform.startswith("freebsd"): + _lib_paths += [ + _base_path / f"lib{lib_base_name}.so", + ] diff --git a/misc/py-llama-cpp-python/pkg-descr b/misc/py-llama-cpp-python/pkg-descr new file mode 100644 index 000000000000..6c5bf2aa148e --- /dev/null +++ b/misc/py-llama-cpp-python/pkg-descr @@ -0,0 +1,5 @@ +llama-cpp-python is the Python bindings for the llama.cpp library/ + +The main goal of llama.cpp is to enable LLM inference with minimal setup and +state-of-the-art performance on a wide variety of hardware - locally and in +the cloud. |