prole/etc/.ollama_parser.py

34 lines
792 B
Python

import json
import sys
try:
data = sys.stdin.read().strip()
if not data:
sys.exit(1)
payload = json.loads(data)
if isinstance(payload, list):
models_list = payload
elif isinstance(payload, dict):
models_list = payload.get(
"models", payload.get("tags", payload.get("models_list", []))
)
else:
sys.exit(1)
if not isinstance(models_list, list):
sys.exit(1)
names = []
for entry in models_list:
if isinstance(entry, dict):
name = entry.get("name") or entry.get("model")
elif isinstance(entry, str):
name = entry
else:
continue
if name:
names.append(name)
print(",".join(names))
except Exception:
sys.exit(1)