Inicio Rápido

La API de Orzion AI proporciona acceso a tres modelos especializados de inteligencia artificial a través de endpoints RESTful simples y potentes.

Características Principales

  • API RESTful con respuestas JSON
  • Tres modelos especializados (Pro, Turbo, Mini)
  • Rotación automática de claves API
  • Manejo inteligente de límites de uso
  • Arquitectura serverless escalable

URL Base

Todos los endpoints de la API utilizan la siguiente URL base:

URL Base
https://orzion-ai-api.vercel.app

Autenticación

Actualmente, la API de Orzion AI es de acceso público y no requiere autenticación. Sin embargo, se recomienda implementar control de acceso en sus aplicaciones.

Importante

Para uso en producción, se recomienda implementar sistemas de autenticación y límites de uso propios para proteger sus aplicaciones.

Endpoints Disponibles

La API ofrece tres endpoints especializados para diferentes casos de uso:

POST
/api/v1/chat/orzion-pro
Pro

Orzion Pro

Modelo avanzado especializado en ingeniería de software, análisis arquitectónico y resolución de problemas técnicos complejos.

Parámetros de Entrada

Parámetro Tipo Requerido Descripción
message string Mensaje o consulta para el modelo
temperature number No Creatividad de la respuesta (0.0-1.0, default: 0.7)
max_tokens number No Longitud máxima de la respuesta (default: 1000)

Ejemplo de Solicitud

POST Request
fetch("https://orzion-ai-api.vercel.app/api/v1/chat/orzion-pro", {
  method: "POST",
  headers: {
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    message: "Optimiza este código Python para mejor rendimiento",
    temperature: 0.7,
    max_tokens: 1500
  })
})
POST
/api/v1/chat/orzion-turbo
Turbo

Orzion Turbo

Asistente de alta velocidad enfocado en eficiencia, soluciones concisas y respuestas directas con máxima velocidad.

Características Especiales

  • Respuestas ultrarrápidas con latencia mínima
  • Formato de respuesta conciso y directo
  • Optimizado para consultas simples y rápidas
  • Ideal para chatbots y asistentes interactivos

Ejemplo de Solicitud

POST Request
curl -X POST https://orzion-ai-api.vercel.app/api/v1/chat/orzion-turbo \
  -H "Content-Type: application/json" \
  -d '{"message": "¿Cómo creo una función en JavaScript?", "temperature": 0.5}'
POST
/api/v1/chat/orzion-mini
Mini

Orzion Mini

Tutor especializado en explicaciones claras, búsqueda de datos y guía para el aprendizaje de nuevos conceptos.

Casos de Uso Ideales

  • Explicaciones detalladas y educativas
  • Guía paso a paso para principiantes
  • Documentación y referencias técnicas
  • Asistencia en aprendizaje y capacitación

Respuesta de Ejemplo

Response JSON
{
  "success": true,
  "model": "orzion-mini",
  "response": "¡Excelente pregunta! Te explico paso a paso cómo crear una función en JavaScript...",
  "timestamp": "2024-01-15T10:30:00Z",
  "tokens_used": 250
}

Ejemplos de Integración

JavaScript / TypeScript

Implementación completa con manejo de errores y tipos:

orzion-client.js
class OrzionClient {
  constructor(baseURL = "https://orzion-ai-api.vercel.app") {
    this.baseURL = baseURL;
  }

  async chat(model, message, options = {}) {
    try {
      const response = await fetch(`${this.baseURL}/api/v1/chat/${model}`, {
        method: "POST",
        headers: {
          "Content-Type": "application/json"
        },
        body: JSON.stringify({
          message,
          temperature: options.temperature || 0.7,
          max_tokens: options.maxTokens || 1000
        })
      });

      if (!response.ok) {
        throw new Error(`HTTP ${response.status}: ${response.statusText}`);
      }

      return await response.json();
    } catch (error) {
      console.error("Error al comunicarse con Orzion AI:", error);
      throw error;
    }
  }

  // Métodos específicos para cada modelo
  async pro(message, options) {
    return this.chat("orzion-pro", message, options);
  }

  async turbo(message, options) {
    return this.chat("orzion-turbo", message, options);
  }

  async mini(message, options) {
    return this.chat("orzion-mini", message, options);
  }
}

// Uso
const orzion = new OrzionClient();

orzion.pro("Revisa este código y sugiere mejoras").then(response => {
  console.log(response.response);
}).catch(error => {
  console.error("Error:", error);
});

Python

Cliente Python con requests y manejo robusto de errores:

orzion_client.py
import requests
import json
from typing import Optional, Dict, Any

class OrzionClient:
    def __init__(self, base_url: str = "https://orzion-ai-api.vercel.app"):
        self.base_url = base_url
        self.session = requests.Session()
        self.session.headers.update({"Content-Type": "application/json"})
    
    def chat(self, model: str, message: str, **kwargs) -> Dict[str, Any]:
        """
        Envía un mensaje a un modelo específico de Orzion AI
        
        Args:
            model: Nombre del modelo (orzion-pro, orzion-turbo, orzion-mini)
            message: Mensaje para enviar al modelo
            **kwargs: Parámetros opcionales (temperature, max_tokens)
        
        Returns:
            Respuesta JSON del modelo
        """
        endpoint = f"{self.base_url}/api/v1/chat/{model}"
        
        payload = {
            "message": message,
            "temperature": kwargs.get("temperature", 0.7),
            "max_tokens": kwargs.get("max_tokens", 1000)
        }
        
        try:
            response = self.session.post(endpoint, json=payload, timeout=30)
            response.raise_for_status()
            return response.json()
        
        except requests.RequestException as e:
            print(f"Error al comunicarse con Orzion AI: {e}")
            raise
    
    def pro(self, message: str, **kwargs) -> Dict[str, Any]:
        """Consulta al modelo Orzion Pro"""
        return self.chat("orzion-pro", message, **kwargs)
    
    def turbo(self, message: str, **kwargs) -> Dict[str, Any]:
        """Consulta al modelo Orzion Turbo"""
        return self.chat("orzion-turbo", message, **kwargs)
    
    def mini(self, message: str, **kwargs) -> Dict[str, Any]:
        """Consulta al modelo Orzion Mini"""
        return self.chat("orzion-mini", message, **kwargs)

# Ejemplo de uso
if __name__ == "__main__":
    client = OrzionClient()
    
    try:
        response = client.pro("Explica los principios SOLID en programación")
        print(f"Respuesta: {response['response']}")
    except Exception as e:
        print(f"Error: {e}")

cURL

Ejemplos de línea de comandos para pruebas rápidas:

Terminal Commands
# Orzion Pro - Análisis técnico profundo
curl -X POST https://orzion-ai-api.vercel.app/api/v1/chat/orzion-pro \
  -H "Content-Type: application/json" \
  -d '{
    "message": "Analiza la arquitectura de este sistema y sugiere mejoras",
    "temperature": 0.7,
    "max_tokens": 1500
  }'

# Orzion Turbo - Respuesta rápida
curl -X POST https://orzion-ai-api.vercel.app/api/v1/chat/orzion-turbo \
  -H "Content-Type: application/json" \
  -d '{"message": "¿Cuál es la diferencia entre let y const?", "temperature": 0.5}'

# Orzion Mini - Explicación educativa
curl -X POST https://orzion-ai-api.vercel.app/api/v1/chat/orzion-mini \
  -H "Content-Type: application/json" \
  -d '{"message": "Enséñame sobre algoritmos de ordenamiento", "temperature": 0.8}'

Límites de Uso

La API implementa un sistema inteligente de rotación de claves para maximizar la disponibilidad y manejar límites de uso automáticamente.

Rotación Automática

El sistema rota automáticamente entre múltiples claves API para evitar interrupciones por límites de uso.

Manejo de Errores

Respuesta HTTP 503 cuando todos los límites están activos, con reintentos automáticos.

Optimización

Sistema diseñado para máxima eficiencia y tiempo de respuesta mínimo en todas las consultas.

Códigos de Error

Código HTTP Estado Descripción Acción Recomendada
200 OK Solicitud procesada exitosamente Procesar respuesta normalmente
400 Bad Request Solicitud mal formada o parámetros inválidos Verificar formato JSON y parámetros
404 Not Found Endpoint no encontrado Verificar URL y nombre del modelo
405 Method Not Allowed Método HTTP no permitido Usar método POST para todos los endpoints
429 Too Many Requests Límite de uso excedido Esperar antes de reintentar
500 Internal Server Error Error interno del servidor Reintentar después de unos segundos
503 Service Unavailable Todos los límites API activos Reintentar en unos minutos