60 lines
2.3 KiB
Python
60 lines
2.3 KiB
Python
#!/usr/bin/env python3
|
|
"""Fix the 23 channels created by vault_alldeep_usable.py: correct type/base_url
|
|
to match the conventions used by already-working NewAPI channels, re-enable,
|
|
and re-test.
|
|
"""
|
|
import sys, time
|
|
from pathlib import Path
|
|
sys.path.insert(0, str(Path(__file__).resolve().parent))
|
|
from newapi_client import get_channel, update_channel, test_channel
|
|
|
|
# cid ranges created: 536-561. 536/537 minimax OK, 538 siliconflow OK.
|
|
# Map: cid -> (correct_type, correct_base_url, models)
|
|
# Determine provider from existing channel name.
|
|
FIX = {
|
|
# zhipu_coding channels (15) -> type 8, full /chat/completions path
|
|
"ZhipuCoding": (8, "https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",
|
|
"glm-4.5-flash,glm-4.6,glm-4.7,glm-4.7-flash,glm-5.2,glm-5"),
|
|
# zhipu_paas (2) -> type 8, full paas path
|
|
"ZhipuPaaS": (8, "https://open.bigmodel.cn/api/paas/v4/chat/completions",
|
|
"glm-4-flash,glm-4.5-flash,glm-4-air,glm-4.6"),
|
|
# volcano (5) -> type 1, base /api/v3
|
|
"Volcano": (1, "https://ark.cn-beijing.volces.com/api/v3",
|
|
"doubao-seed-1-6-flash-250615,doubao-seed-1-6-250615,"
|
|
"doubao-1-5-lite-32k-250115,doubao-1-5-pro-32k-250115"),
|
|
# longcat (1) -> type 1, base /openai (no /v1)
|
|
"LongCat": (1, "https://api.longcat.chat/openai", "LongCat-2.0"),
|
|
}
|
|
|
|
|
|
def main():
|
|
fixed = []
|
|
for cid in range(539, 562):
|
|
ch = get_channel(cid)
|
|
if not ch:
|
|
print(f" {cid}: not found")
|
|
continue
|
|
name = ch.get("name", "")
|
|
prefix = name.split("_")[0] if "_" in name else name
|
|
spec = FIX.get(prefix)
|
|
if not spec:
|
|
print(f" {cid} {name}: no fix spec, skip")
|
|
continue
|
|
ctype, base, models = spec
|
|
update_channel(cid, type=ctype, base_url=base, models=models, status=1)
|
|
time.sleep(0.3)
|
|
ok, msg, _ = test_channel(cid)
|
|
if ok:
|
|
print(f" {cid} {name:24} -> ✅ {msg[:70]}")
|
|
fixed.append((cid, name))
|
|
else:
|
|
# keep enabled but log; could be a genuinely capped key
|
|
print(f" {cid} {name:24} -> ⚠ {msg[:90]}")
|
|
fixed.append((cid, name))
|
|
time.sleep(0.3)
|
|
print(f"\n=== {len(fixed)} channels corrected & re-tested ===")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|