ollama-server2 / pages /api /models.ts
bahadur3093's picture
feat: Add environment-based configuration and chat history support
8d8e945
Raw
History Blame Contribute Delete
1.2 kB
import type { NextApiRequest, NextApiResponse } from "next"
// Get Ollama base URL from environment variable
const OLLAMA_BASE_URL = process.env.OLLAMA_BASE_URL || "http://localhost:11434"
export default async function handler(
req: NextApiRequest,
res: NextApiResponse
) {
// GET → list all models
if (req.method === "GET") {
try {
const r = await fetch(`${OLLAMA_BASE_URL}/api/tags`)
const data = await r.json()
res.status(200).json(data)
} catch {
res.status(500).json({ error: "Failed to fetch models" })
}
return
}
// DELETE → remove a model
if (req.method === "DELETE") {
const { name } = req.body
try {
const r = await fetch(`${OLLAMA_BASE_URL}/api/delete`, {
method: "DELETE",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ name }),
})
if (r.ok) {
res.status(200).json({ success: true })
} else {
const err = await r.text()
res.status(400).json({ error: err })
}
} catch {
res.status(500).json({ error: "Failed to delete model" })
}
return
}
res.status(405).json({ error: "Method not allowed" })
}