فهرست منبع

add ollama ps endpoint

Ian Shiland 4 ماه پیش
والد
کامیت
9c554db37c
1فایلهای تغییر یافته به همراه19 افزوده شده و 0 حذف شده
  1. 19 0
      backend/open_webui/apps/ollama/main.py

+ 19 - 0
backend/open_webui/apps/ollama/main.py

@@ -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