mirror of
https://github.com/arkorty/B.Tech-Project-III.git
synced 2026-04-19 12:41:48 +00:00
init
This commit is contained in:
44
thirdeye/test_ollama.py
Normal file
44
thirdeye/test_ollama.py
Normal file
@@ -0,0 +1,44 @@
|
||||
"""Quick smoke-test for Ollama before wiring it into the main bot."""
|
||||
import asyncio
|
||||
import httpx
|
||||
|
||||
|
||||
async def test_ollama():
|
||||
print("1. Checking if Ollama is reachable at http://localhost:11434 ...")
|
||||
try:
|
||||
async with httpx.AsyncClient(timeout=5) as c:
|
||||
r = await c.get("http://localhost:11434/api/tags")
|
||||
if r.status_code == 200:
|
||||
models = [m["name"] for m in r.json().get("models", [])]
|
||||
print(f" OK — models available: {models or '(none pulled yet)'}")
|
||||
if not any("llama3" in m for m in models):
|
||||
print("\n WARNING: llama3:8b not pulled yet.")
|
||||
print(" Run in a separate terminal: ollama pull llama3:8b")
|
||||
return
|
||||
else:
|
||||
print(f" FAIL — unexpected status {r.status_code}")
|
||||
return
|
||||
except Exception as e:
|
||||
print(f" FAIL — cannot reach Ollama: {e}")
|
||||
print("\n Fix: open a new terminal and run: ollama serve")
|
||||
return
|
||||
|
||||
print("\n2. Testing chat completion (OpenAI-compat endpoint) ...")
|
||||
try:
|
||||
from openai import AsyncOpenAI
|
||||
|
||||
client = AsyncOpenAI(base_url="http://localhost:11434/v1", api_key="ollama")
|
||||
resp = await client.chat.completions.create(
|
||||
model="llama3:8b",
|
||||
messages=[{"role": "user", "content": "Reply with exactly: ollama ok"}],
|
||||
max_tokens=20,
|
||||
temperature=0,
|
||||
)
|
||||
reply = resp.choices[0].message.content.strip()
|
||||
print(f" Model reply: {reply}")
|
||||
print("\n PASS — Ollama is working. Safe to restart the bot.")
|
||||
except Exception as e:
|
||||
print(f" FAIL — {e}")
|
||||
|
||||
|
||||
asyncio.run(test_ollama())
|
||||
Reference in New Issue
Block a user