MLX gammaln and psi compute in the integer dtype of an integer input
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 72/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- python
- Ambito
- backend, machine-learning
Direzione di ricerca
Inizia leggendo l’implementazione di _working_precision nel backend MLX e le operazioni gammaln e psi che la chiamano. Riproduci il comportamento segnalato con l’esempio int32 fornito in modalità MLX, quindi controlla gli output di entrambe le funzioni dopo la modifica alla gestione di dtype; il lavoro è completato quando gli input interi producono i risultati in virgola mobile attesi e psi viene compilata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
gammaln and psi in the MLX backend break on integer inputs. gammaln returns int32 [0, 1] for [3, 5] instead of float64 [0.693, 3.178], and psi fails to compile its Metal kernel. Both call _working_precision, the helper that picks the dtype their series is evaluated in, and it keeps the integer dtype.
import numpy as np
import pytensor
import pytensor.tensor as pt
x = pt.vector("x", dtype="int32")
x_value = np.array([3, 5], dtype="int32")
gammaln = pytensor.function([x], pt.gammaln(x), mode="MLX")
print(gammaln(x_value)) # array([0, 1], dtype=int32), expected [0.69314718 3.17805383]
psi = pytensor.function([x], pt.psi(x), mode="MLX")
print(psi(x_value)) # RuntimeError: [metal::Device] Unable to build metal library from source
# workaround: cast first, e.g. pt.gammaln(x.astype("float32"))
- Lingua principale
- Python
- Stelle
- 645
- Fork
- 222
- Merge medio
- 3g 2h
- PR unite (30g)
- 36
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di pymc-devs/pytensor
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
MLX backend: _working_precision copies inputs that are already MLX arraysForse già presa @jessegrabowski l’ha presa 1 giorno fa. Apertabug mlx performance
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Reciprocal.impl computes np.float32(1.0) / x: float32 precision for float64 scalars under NEP 50 (Python linker)Forse già presa @Ai-Eastern l’ha presa 28 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
pymc-devs/pytensor#2430 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
pymc-devs/pytensor#2428 · 5 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
MLX: Subtensor and IncSubtensor fail on a symbolic integer index under mx.compileForse già presa @AnKiT-GaRG2 l’ha presa 10 giorni fa. Apertabug indexing mlx
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di pymc-devs/pytensor
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
-
[Bug]: Queen's own Ollama model loses num_ctx when a running session switches to itForse già presa @anasamin26 l’ha presa oggi. Apertabug enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
aden-hive/hive#7508 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
llm translation
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
BerriAI/litellm#47884 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
bug 🐛
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
netalertx/NetAlertX#1856 · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno