Webseite überarbeitet und Telegram Bot funktion hinzugefügt #1
15
main.py
15
main.py
@@ -429,21 +429,22 @@ async def get_models(provider: str, url: str = None):
|
|||||||
models.sort()
|
models.sort()
|
||||||
|
|
||||||
elif provider == "nvidia":
|
elif provider == "nvidia":
|
||||||
if not NVIDIA_API_KEY or "hier" in NVIDIA_API_KEY: return {"models": []}
|
if not NVIDIA_API_KEY or "hier" in NVIDIA_API_KEY:
|
||||||
# NVIDIA nutzt das OpenAI SDK!
|
return {"models": ["FEHLER: Key fehlt in .env"]}
|
||||||
import openai
|
|
||||||
client = openai.AsyncOpenAI(
|
client = openai.AsyncOpenAI(
|
||||||
api_key=NVIDIA_API_KEY,
|
api_key=NVIDIA_API_KEY,
|
||||||
base_url="https://integrate.api.nvidia.com/v1"
|
base_url="https://integrate.api.nvidia.com/v1"
|
||||||
)
|
)
|
||||||
try:
|
try:
|
||||||
response = await client.models.list()
|
# Timeout hinzufügen, damit die Seite nicht ewig hängt
|
||||||
# Bei NVIDIA heißen die Modelle oft nach dem Schema "nvidia/llama-3.1-405b"
|
response = await asyncio.wait_for(client.models.list(), timeout=5.0)
|
||||||
models = [m.id for m in response.data]
|
models = [m.id for m in response.data]
|
||||||
models.sort()
|
models.sort()
|
||||||
|
return {"models": models}
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"Fehler bei NVIDIA Abfrage: {e}")
|
print(f"NVIDIA API Error: {e}")
|
||||||
return {"models": []}
|
return {"models": [f"NVIDIA Fehler: {str(e)[:20]}..."]}
|
||||||
|
|
||||||
elif provider == "google":
|
elif provider == "google":
|
||||||
if not GOOGLE_API_KEY:
|
if not GOOGLE_API_KEY:
|
||||||
|
|||||||
Reference in New Issue
Block a user