abetlen / abetlen/llama-cpp-python

TypeError: 'NoneType' object is not callable in __del__() when exiting

Offen
#2,002 0 Kommentare 2 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Python
Sterne
10.6k
Forks
1.4k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

# Prerequisites

- [x] I am running the latest code.
- [x] I followed the README.md.
- [x] I searched open/closed issues.
- [x] This is a reproducible error and fix.

# Expected Behavior

When the model is closed or Python exits, it should clean up resources quietly.

# Current Behavior

When using Llama(...), a crash occurs on exit:

TypeError: 'NoneType' object is not callable

This happens inside `__del__()` when it tries to close internal objects (e.g., ExitStack or model context) that are already `None`.

# Environment and Context

- Windows 11
- Python 3.11.3
- llama-cpp-python version: 0.3.8
- Using quantized GGUF model via `Llama(...)`

# Steps to Reproduce

1. Load model via `Llama(model_path=..., ...)`
2. Let script exit
3. Observe destructor crash in logs

# Recommended Fix

Wrap `close()` call in `__del__()` like so:

```python
def __del__(self):
try:
self.close()
except Exception:
pass

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.