32 lines
1.6 KiB
Bash
32 lines
1.6 KiB
Bash
#!/bin/sh
|
|||
|
|
# Free model collector script for Dynagate
|
||
|
|
# Depends upon curl, awk and jq
|
||
|
|
# Created by Luxferre in 2026, released into the public domain
|
||
|
|
|
||
|
|
REQ='curl -fsSL'
|
||
|
|
CONFIG='models.csv'
|
||
|
|
|
||
|
|
# Write the header
|
||
|
|
printf 'model,key,endpoint,extra\n' > "$CONFIG"
|
||
|
|
|
||
|
|
# Write OpenCode Zen free models
|
||
|
|
$REQ https://opencode.ai/zen/v1/models | jq -r '.data | map(select(.id | test("-free")) | .id) | .[]' | awk '{printf "%s,-,https://opencode.ai/zen,\n",$0}' >> $CONFIG
|
||
|
|
|
||
|
|
# Write Kilo free models
|
||
|
|
$REQ https://api.kilo.ai/api/openrouter/models | jq -r '.data | map(select(.isFree) | .id) | .[]' | awk '{printf "%s,-,https://api.kilo.ai/api/openrouter,\n",$0}' >> $CONFIG
|
||
|
|
|
||
|
|
# Write Pollinations free model(s)
|
||
|
|
$REQ https://text.pollinations.ai/models | jq -r 'map(select(.tier=="anonymous") | .name) | .[]' | awk '{printf "%s,-,https://text.pollinations.ai/openai,\n",$0}' >> $CONFIG
|
||
|
|
|
||
|
|
# Write G4F models (NVidia backend)
|
||
|
|
$REQ https://g4f.space/api/nvidia/models | jq -r '.data | .[] | .id' | awk '{printf "%s,-,https://g4f.space/api/nvidia,\n",$0}' >> $CONFIG
|
||
|
|
|
||
|
|
# Write G4F models (Ollama backend)
|
||
|
|
$REQ https://g4f.space/api/ollama/models | jq -r '.data | .[] | .id' | awk '{printf "%s,-,https://g4f.space/api/ollama,\n",$0}' >> $CONFIG
|
||
|
|
|
||
|
|
# Write G4F models (Groq backend)
|
||
|
|
$REQ https://g4f.space/api/groq/models | jq -r '.data | .[] | .id' | awk '{printf "%s,-,https://g4f.space/api/groq,\n",$0}' >> $CONFIG
|
||
|
|
|
||
|
|
# Write OVHCloud free trial models
|
||
|
|
$REQ https://oai.endpoints.kepler.ai.cloud.ovh.net/v1/models | jq -r '.data | .[] | .id' | grep -viE 'diffusion|whisper|ppl|guard|bge-' | awk '{printf "%s,-,https://oai.endpoints.kepler.ai.cloud.ovh.net,\n",$0}' >> $CONFIG
|