add ollama ps endpoint

This commit is contained in:
Ian Shiland 2024-12-08 07:49:32 -05:00
parent c4ea31357f
commit 9c554db37c

View File

@ -431,6 +431,25 @@ async def get_ollama_versions(url_idx: Optional[int] = None):
else:
return {"version": False}
@app.get("/api/ps")
async def get_ollama_loaded_models(user=Depends(get_verified_user)):
"""
List models that are currently loaded into Ollama memory, and which node they are loaded on.
"""
if app.state.config.ENABLE_OLLAMA_API:
tasks = [
aiohttp_get(
f"{url}/api/ps",
app.state.config.OLLAMA_API_CONFIGS.get(url, {}).get("key", None),
)
for url in app.state.config.OLLAMA_BASE_URLS
]
responses = await asyncio.gather(*tasks)
return dict(zip(app.state.config.OLLAMA_BASE_URLS, responses))
else:
return {}
class ModelNameForm(BaseModel):
name: str