Expose `ggml_backend_load()` and `ggml_backend_load_all()` to make use of builds with `GGML_BACKEND_DL=ON` and `GGML_CPU_ALL_VARIANTS=ON`
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 45/100
- Type d'issue
- Fonctionnalité
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Domaine
- backend, build-system, performance
Piste de recherche
Examinez les bindings C existants dans llama-cpp-python pour les fonctions liées au backend. L’issue mentionne ggml_backend_load() et ggml_backend_load_all() de llama.cpp ; cherchez où des fonctions similaires sont exposées et ajoutez-les. Vérifiez la configuration de compilation avec GGML_BACKEND_DL=ON afin de comprendre le mécanisme de chargement dynamique. Testez en compilant et en chargeant un modèle pour vous assurer que les bibliothèques du backend sont correctement chargées et que l’erreur est résolue.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
I just tried compiling llama-cpp-python with GGML_BACKEND_DL=ON and GGML_CPU_ALL_VARIANTS=ON to make use of this nice feature with dynamic dispatch to a dynamically loaded backend, which e.g. made it possible to build llama.cpp once but dynamically choose the best backend for the current CPU, i.e. for x86_64 depending on whether certain instructions like AVX2 or AVX512 are available choose the best backend for the current microarchitecture level.
Compiling worked for me so far on Ubuntu 24.04 LTS and when inspecting the wheel I see the backend dynamic libraries like bin/libggml-cpu-x64.so, libggml-cpu-sse42.so, libggml-cpu-haswell.so and so on. So that is good already.
But when loading a model with llama-cpp-python I get this error:
llama_model_load_from_file_impl: no backends are loaded. hint: use ggml_backend_load() or ggml_backend_load_all() to load a backend before calling this function but these functions are not exposed yet via the bindings.
I think this would be a really great thing to add. That would make the CPU wheels for llama-cpp-python way better, because it wouldn't be stuck with base x86_64 instructions and could thus be way more performant for cases where the wheel cannot be compiled at installation time.
- Langage dominant
- Python
- Étoiles
- 10.6k
- Forks
- 1.5k
- Merge moyen
- 5 h 9 min
- PR mergées (30 j)
- 3
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de abetlen/llama-cpp-python
-
Seven llama_sampler_init_* bindings admit keyword arguments that the ctypes function object silently dropsPeut-être pris @Belal0066 l’a pris il y a 22 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
abetlen/llama-cpp-python#2371 ·
Les mainteneurs répondent en général sous 1 jour
-
uv add llama-cpp-python wheels fails for versions above 0.3.30Peut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
abetlen/llama-cpp-python#2352 · 1 commentaire · 2 réactions ·
Les mainteneurs répondent en général sous 1 jour
-
Docs: consolidate build-from-source and GPU backend guidePeut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
abetlen/llama-cpp-python#2314 ·
Les mainteneurs répondent en général sous 1 jour
-
Llama.embed() calls LlamaBatch.add_sequence with old 3-arg signature; missing logits_arrayPeut-être à nouveau libre @lxcxjxhx l’a pris il y a 99 jours, et aucune pull request n’est ouverte. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
abetlen/llama-cpp-python#2211 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Llama() silently accepts and discards `embedding` kwarg; .embed() then raises confusinglyPeut-être pris @Anai-Guo l’a pris il y a 40 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
abetlen/llama-cpp-python#2210 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de abetlen/llama-cpp-python
Issues similaires
-
good first issue
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
btclib-org/btclib-node#1955 ·
Les mainteneurs répondent en général sous 1 jour
-
documentation v0.9.2
Difficulté 2/5 Une demi-journée Accessibilité débutants 72/100
khuisman/mcp-gee-sweet#1033 ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
ossf/cve-bin-tool#5966 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 2 jours
-
write_iceberg ignores the table's write.parquet.compression-codec propertyPeut-être pris @YuangGao l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Eventual-Inc/Daft#7606 ·
Les mainteneurs répondent en général sous 1 jour