mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-10-12 17:51:11 -04:00
sci-misc/llama-cpp: drop 0.4.0_p10948
Signed-off-by: Gilles Dartiguelongue <gilles.dartiguelongue@esiee.org>
This commit is contained in:
2 files changed
-239
No files matched your search
@@ -1,7 +1,5 @@
|
||||
DIST ggml-org_models_tinyllamas_stories15M-q4_0-99dd1a73db5a37100bd4ae633f4cfce6560e1567.gguf 19077344 BLAKE2B 16e65adf9785e3091c51f1de59e5580f93fb47f79961513aeb3dbb8a0f5930f7120f0304f0f293a006170805e2b70ee1fcff0496b63356323d32c2caa55be8a8 SHA512 f9944886089958e0d97b1906cfd45020e0821c65429346e76fae29136c634ae5d039dffbae5933a95b0674f4acd87b656feb9f9e1b16dd434c5c9b5886f4f617
|
||||
DIST llama-b10809-ui.tar.gz 3084118 BLAKE2B 3cd4e0bd708fb673507b1480e7e814bcb25b84ca096c22d491fbb02ea28523f28517ad0cbf15a7c689801599206963b1268239eba6d028a9343956710c39d07c SHA512 485b4331f547bcf53fa40691e43ca97de90301f656b8176c2ae5091bb2c6d0dcee57439f12a02a06fa5a397f5aba2481e8614c2a06da1396fa8efa58b704c973
|
||||
DIST llama-b10948-ui.tar.gz 3086256 BLAKE2B 537e559af6fa3e09c4b630e1fbad6e79abc172da45abf369ae477133f6d17049dc63cfa79ebd7fd711e46ffcc7ace61127e6fd013564928ab03c46ff06267e91 SHA512 f109da63d3f6d2e0f9f6c1d5a6f6b41535f2c2a2a52fa1ed0f690c5bb34778a898ceefe3d09c7805e9476fcda410d5fd372f77bdb5c19b00e1ef38ae5b1830f0
|
||||
DIST llama-b10964-ui.tar.gz 3084524 BLAKE2B b53a3fdcb8a0dd132c125409ec145b927493d929a1a4e1f266f2f6ea08aae684dbaecadf039b7f6bab05aa93890ee9e5a5e926ccc1f0f32d7b1a74e1ba77c1b7 SHA512 3524c4ff43bf334cc1ee75e03bf5a33dba884a20489ac8ee6bd5d5d27060bc183f8939d301295576c3dbf9263dd9a55022c3e683e2e88b2686c1fe81311d4d02
|
||||
DIST llama-cpp-0.4.0.tar.gz 37288249 BLAKE2B a0cd0c8251b4dc32681426e323e52b03c9a733a3d29d8e733334702c2082b2aff664906811dee0298ea950a28fec40771e5c27aa5a2c32b7f7b9b9cab512249d SHA512 12592516c0ac70ed53d64fc0c9f82bbb156defa507c7364f1a753eb29f3498e0e13a282e139c2eff7d2eb00921b4ef107b2fa90a5b66f8a3c45409d4fcb0834f
|
||||
DIST llama-cpp-0.4.0_p10948.tar.gz 37412172 BLAKE2B 814bef31c941a9d04a160ca76b701bbc4038938457f261eabe57ba9e27a20d112365fd11f4718b7c8f5be85d9a3f682dd750a1f987e8c0f95dd8ba7f770c86d0 SHA512 4dda47454faa68826949def46e36226c40a9dafe69ce9edfbc6b9c9a1c4b4b54c7531adc9723c50ebfd1937d523a33db97754c753003cd4b21c31cd89c85f50f
|
||||
DIST llama-cpp-0.4.1.tar.gz 37422659 BLAKE2B beefc257a01a11c8ecac25d963d37b05679715bece94d2f64c391c6158c7f81179873b66c36661159ae0fc126c89b4df6d47e8fe853b7e052d2f1297de13155f SHA512 b82f755c40897d273ec3784f4f22b02f6a5f5f7b3c2a4240495d13a4617575c9aa69597de6a4f0b9a6568f51cc976e0b72ac847d83c2f953ed7fa52365e71d9a
|
||||
@@ -1,237 +0,0 @@
|
||||
# Copyright 2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
ROCM_VERSION="7.1"
|
||||
|
||||
inherit cmake cuda rocm linux-info toolchain-funcs
|
||||
|
||||
TINY_LLAMAS_COMMIT="99dd1a73db5a37100bd4ae633f4cfce6560e1567"
|
||||
|
||||
DESCRIPTION="Port of Facebook's LLaMA model in C/C++"
|
||||
HOMEPAGE="https://github.com/ggml-org/llama.cpp"
|
||||
|
||||
if [[ ${PV} == *9999* ]]; then
|
||||
inherit git-r3
|
||||
EGIT_REPO_URI="https://github.com/ggml-org/llama.cpp.git"
|
||||
LLAMA_BUILD_IS_DEV=ON
|
||||
LLAMA_BUILD_NUMBER="b0000"
|
||||
LLAMA_UI_VERSION="b10948"
|
||||
MY_PV="${PV}"
|
||||
else
|
||||
if [[ $(ver_cut 4) == "p" ]]; then
|
||||
LLAMA_BUILD_IS_DEV=ON
|
||||
LLAMA_BUILD_NUMBER="b$(ver_cut 5)"
|
||||
MY_PV="${LLAMA_BUILD_NUMBER}"
|
||||
S="${WORKDIR}/llama.cpp-${MY_PV}"
|
||||
else
|
||||
LLAMA_BUILD_IS_DEV=OFF
|
||||
# Set from https://github.com/ggml-org/llama.cpp/releases/download/v${PV}/nightly-tag.txt
|
||||
LLAMA_BUILD_NUMBER="b10948"
|
||||
MY_PV="v${PV}"
|
||||
S="${WORKDIR}/llama.cpp-${PV}"
|
||||
fi
|
||||
LLAMA_UI_VERSION="${LLAMA_BUILD_NUMBER}"
|
||||
SRC_URI="https://github.com/ggml-org/llama.cpp/archive/refs/tags/${MY_PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="~amd64"
|
||||
fi
|
||||
|
||||
SRC_URI+="
|
||||
https://github.com/ggml-org/llama.cpp/releases/download/${LLAMA_UI_VERSION}/llama-${LLAMA_UI_VERSION}-ui.tar.gz
|
||||
examples? (
|
||||
https://huggingface.co/ggml-org/tiny-llamas/resolve/${TINY_LLAMAS_COMMIT}/stories15M-q4_0.gguf
|
||||
-> ggml-org_models_tinyllamas_stories15M-q4_0-${TINY_LLAMAS_COMMIT}.gguf
|
||||
)
|
||||
"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
X86_CPU_FLAGS=(
|
||||
amx_bf16
|
||||
amx_int8
|
||||
amx_tile
|
||||
avx
|
||||
avx2
|
||||
avx512_bf16
|
||||
avx512_vnni
|
||||
avx512f
|
||||
avx512vbmi
|
||||
avx_vnni
|
||||
bmi2
|
||||
f16c
|
||||
fma3
|
||||
sse4_2
|
||||
)
|
||||
CPU_FLAGS=( "${X86_CPU_FLAGS[@]/#/cpu_flags_x86_}" )
|
||||
|
||||
# wwma USE explained here: https://github.com/ggml-org/llama.cpp/blob/master/docs/build.md#hip
|
||||
IUSE="${CPU_FLAGS[*]} blis cuda curl examples flexiblas openblas opencl +openmp openssl rocm vulkan wmma"
|
||||
|
||||
REQUIRED_USE="
|
||||
?? (
|
||||
openblas
|
||||
blis
|
||||
flexiblas
|
||||
)
|
||||
rocm? ( ${ROCM_REQUIRED_USE} )
|
||||
wmma? (
|
||||
rocm
|
||||
)
|
||||
"
|
||||
|
||||
# curl is needed for pulling models from huggingface
|
||||
# numpy is used by convert_hf_to_gguf.py
|
||||
CDEPEND="
|
||||
curl? ( net-misc/curl:= )
|
||||
openblas? ( sci-libs/openblas:= )
|
||||
openmp? ( llvm-runtimes/openmp:= )
|
||||
blis? ( sci-libs/blis:= )
|
||||
flexiblas? ( sci-libs/flexiblas:= )
|
||||
rocm? (
|
||||
>=dev-util/hip-${ROCM_VERSION}:=
|
||||
>=sci-libs/hipBLAS-${ROCM_VERSION}:=[${ROCM_USEDEP}]
|
||||
wmma? (
|
||||
>=sci-libs/rocWMMA-${ROCM_VERSION}:=[${ROCM_USEDEP}]
|
||||
)
|
||||
)
|
||||
cuda? ( dev-util/nvidia-cuda-toolkit:= )
|
||||
openssl? ( dev-libs/openssl:= )
|
||||
"
|
||||
DEPEND="${CDEPEND}
|
||||
opencl? ( dev-util/opencl-headers )
|
||||
vulkan? (
|
||||
dev-util/spirv-headers
|
||||
dev-util/vulkan-headers
|
||||
)
|
||||
"
|
||||
RDEPEND="${CDEPEND}
|
||||
dev-python/numpy
|
||||
opencl? ( dev-libs/opencl-icd-loader )
|
||||
vulkan? ( media-libs/vulkan-loader )
|
||||
"
|
||||
BDEPEND="media-libs/shaderc"
|
||||
|
||||
pkg_pretend() {
|
||||
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
if use rocm; then
|
||||
linux-info_pkg_setup
|
||||
if linux-info_get_any_version && linux_config_exists; then
|
||||
if ! linux_chkconfig_present HSA_AMD_SVM; then
|
||||
ewarn "To use ROCm/HIP, you need to have HSA_AMD_SVM option enabled in your kernel."
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
[[ ${PV} == *9999* ]] && git-r3_src_unpack
|
||||
default
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
use cuda && cuda_src_prepare
|
||||
cmake_src_prepare
|
||||
if use examples; then
|
||||
mkdir -p "${BUILD_DIR}/tinyllamas" || die
|
||||
cp "${DISTDIR}/ggml-org_models_tinyllamas_stories15M-q4_0-${TINY_LLAMAS_COMMIT}.gguf" \
|
||||
"${BUILD_DIR}/tinyllamas/stories15M-q4_0.gguf" || die
|
||||
fi
|
||||
|
||||
# Move web UI assets where they belong, bug #979245
|
||||
mkdir -p "${S}"/tools/ui || die
|
||||
cp -a "${WORKDIR}"/llama-${LLAMA_UI_VERSION} "${S}"/tools/ui/dist || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_BUILD_WITH_INSTALL_RPATH=ON
|
||||
-DLLAMA_BUILD_IS_DEV=${LLAMA_BUILD_IS_DEV}
|
||||
-DLLAMA_BUILD_TESTS=OFF
|
||||
-DLLAMA_BUILD_EXAMPLES=$(usex examples)
|
||||
-DLLAMA_BUILD_SERVER=ON
|
||||
-DBUILD_NUMBER="${LLAMA_BUILD_NUMBER}"
|
||||
-DLLAMA_CURL=$(usex curl)
|
||||
-DLLAMA_OPENSSL=$(usex openssl)
|
||||
|
||||
# avoid clashing with whisper.cpp
|
||||
-DCMAKE_INSTALL_LIBDIR="${EPREFIX}/usr/$(get_libdir)/llama.cpp"
|
||||
-DCMAKE_INSTALL_RPATH="${EPREFIX}/usr/$(get_libdir)/llama.cpp"
|
||||
)
|
||||
|
||||
# GGML backends
|
||||
mycmakeargs+=(
|
||||
-DGGML_NATIVE=OFF # don't set march
|
||||
|
||||
# CPU Flags
|
||||
-DGGML_SSE42=$(usex cpu_flags_x86_sse4_2)
|
||||
-DGGML_AVX=$(usex cpu_flags_x86_avx)
|
||||
-DGGML_AVX_VNNI=$(usex cpu_flags_x86_avx_vnni)
|
||||
-DGGML_AVX2=$(usex cpu_flags_x86_avx2)
|
||||
-DGGML_BMI2=$(usex cpu_flags_x86_bmi2)
|
||||
-DGGML_AVX512=$(usex cpu_flags_x86_avx512f)
|
||||
-DGGML_AVX512_VBMI=$(usex cpu_flags_x86_avx512vbmi)
|
||||
-DGGML_AVX512_VNNI=$(usex cpu_flags_x86_avx512_vnni)
|
||||
-DGGML_AVX512_BF16=$(usex cpu_flags_x86_avx512_bf16)
|
||||
-DGGML_FMA=$(usex cpu_flags_x86_fma3)
|
||||
-DGGML_F16C=$(usex cpu_flags_x86_f16c)
|
||||
-DGGML_AMX_TILE=$(usex cpu_flags_x86_amx_tile)
|
||||
-DGGML_AMX_INT8=$(usex cpu_flags_x86_amx_int8)
|
||||
-DGGML_AMX_BF16=$(usex cpu_flags_x86_amx_bf16)
|
||||
|
||||
-DGGML_CUDA=$(usex cuda)
|
||||
-DGGML_VULKAN=$(usex vulkan)
|
||||
-DGGML_OPENMP=$(usex openmp)
|
||||
-DGGML_RPC=ON
|
||||
-DGGML_OPENCL=$(usex opencl)
|
||||
)
|
||||
|
||||
if use openblas ; then
|
||||
mycmakeargs+=(
|
||||
-DGGML_BLAS=ON -DGGML_BLAS_VENDOR=OpenBLAS
|
||||
)
|
||||
fi
|
||||
|
||||
if use blis ; then
|
||||
mycmakeargs+=(
|
||||
-DGGML_BLAS=ON -DGGML_BLAS_VENDOR=FLAME
|
||||
)
|
||||
fi
|
||||
|
||||
if use flexiblas; then
|
||||
mycmakeargs+=(
|
||||
-DGGML_BLAS=ON -DGGML_BLAS_VENDOR=FlexiBLAS
|
||||
)
|
||||
fi
|
||||
|
||||
if use cuda; then
|
||||
local -x CUDAHOSTCXX="$(cuda_gccdir)"
|
||||
# tries to recreate dev symlinks
|
||||
cuda_add_sandbox
|
||||
addpredict "/dev/char/"
|
||||
fi
|
||||
|
||||
if use rocm; then
|
||||
rocm_use_hipcc
|
||||
mycmakeargs+=(
|
||||
-DGGML_HIP=ON
|
||||
-DGPU_TARGETS=$(get_amdgpu_flags)
|
||||
-DGGML_HIP_ROCWMMA_FATTN=$(usex wmma)
|
||||
)
|
||||
fi
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
dobin "${BUILD_DIR}/bin/ggml-rpc-server"
|
||||
|
||||
# avoid clashing with whisper.cpp
|
||||
rm -r "${ED}/usr/include" || die
|
||||
}
|
||||
Reference in new issue
Block a user