8000 GitHub - RlyehDoom/OLLAMA-API · GitHub
[go: up one dir, main page]

Skip to content

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

151 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Despliegue del frontend con PM2

Puedes servir el frontend compilado usando PM2 y el servidor estático integrado:

  1. Compila el frontend:
cd frontend
npm run build
  1. Sirve el frontend en modo SPA (Single Page Application) en el puerto 4173 (o el que definas):
npm run pm2
  1. El sitio estará disponible en http://localhost:4173

Puedes cambiar el puerto modificando el script en frontend/package.json si lo necesitas.

Despliegue en producción con PM2

Puedes usar PM2 para ejecutar el servidor Node.js en segundo plano y mantenerlo activo incluso tras reinicios.

Instalación de PM2 en Ubuntu

sudo npm install -g pm2

Uso

  1. Asegúrate de tener configurado el puerto en tu archivo .env:
PORT=3000 # O el puerto que prefieras
  1. Compila el proyecto:
npm run build:api
  1. Inicia el servidor con PM2:
npm run pm2
  1. Verifica el estado:
pm2 status
  1. Para reiniciar o detener:
pm2 restart ollama-api
pm2 stop ollama-api
  1. Para que PM2 arranque tras reinicio del sistema:
pm2 startup
pm2 save

API NodeJS + TypeScript para OLLAMA

Esta API permite consumir OLLAMA usando un modelo y URL configurados en .env. Expone un endpoint /ollama para enviar prompts y recibir respuestas en texto o imagen.

Configuración

  1. Edita el archivo .env:

    OLLAMA_URL=http://localhost:11434
    OLLAMA_MODEL=llama2
  2. Inicia el servidor:

    npx tsc --project tsconfig.api.json
    node dist/server.js

Consumo desde otro software

Ejemplo con curl

curl -X POST http://localhost:3000/ollama \
  -H "Content-Type: application/json" \
  -d '{"prompt": "¿Cuál es la capital de Francia?"}'

Respuesta:

{
  "type": "text",
  "content": "La capital de Francia es París."
}

Ejemplo con JavaScript (fetch)

const response = await fetch('http://localhost:3000/ollama', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ prompt: 'Dibuja un gato' })
});
const data = await response.json();
if (data.type === 'image') {
  // data.content es base64
  document.getElementById('img').src = 'data:image/png;base64,' + data.content;
} else {
  console.log(data.content);
}

Notas

  • El endpoint /ollama acepta solo POST y requiere el campo prompt.
  • La respuesta puede ser texto (type: text) o imagen en base64 (type: image).
  • Modifica el modelo y la URL en .env según tu instancia local de OLLAMA.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

0