luinuxscl / openrouter
Paquete para integrar el servicio de conexión con OpenRouter
dev-main
2025-04-19 19:29 UTC
Requires
- php: ^8.2
- illuminate/http: ^10.0|^11.0|^12.0
- illuminate/support: ^10.0|^11.0|^12.0
This package is auto-updated.
Last update: 2025-06-19 19:55:35 UTC
README
Este paquete proporciona una integración sencilla con la API de OpenRouter para proyectos Laravel, permitiendo la conexión con múltiples modelos de IA a través de una interfaz unificada.
Instalación
1. Agregar el repositorio a composer.json
Si no lo has hecho aún, asegúrate de que tu composer.json
tenga configurado el repositorio de paquetes locales:
"repositories": [ { "type": "path", "url": "./packages/*" } ]
2. Instalar el paquete
composer require luinuxscl/openrouter
3. Publicar la configuración (opcional)
php artisan vendor:publish --tag=openrouter-config
Configuración
Agrega las siguientes variables a tu archivo .env
:
OPENROUTER_API_KEY=tu-clave-api
OPENROUTER_API_ENDPOINT=https://openrouter.ai/api/v1/
OPENROUTER_API_TIMEOUT=120
OPENROUTER_DEFAULT_MODEL=anthropic/claude-3.7-sonnet
Uso básico
Usando la Facade
use Luinuxscl\OpenRouter\Facades\OpenRouter; // Enviar un mensaje a OpenRouter $messages = [ ['role' => 'system', 'content' => 'Eres un asistente útil.'], ['role' => 'user', 'content' => '¿Cómo funciona la API de OpenRouter?'] ]; $response = OpenRouter::chat($messages, 'anthropic/claude-3.7-sonnet'); // Obtener la lista de modelos disponibles $models = OpenRouter::getModels();
Usando inyección de dependencias
use Luinuxscl\OpenRouter\Services\OpenRouterService; class MiControlador { protected $openRouter; public function __construct(OpenRouterService $openRouter) { $this->openRouter = $openRouter; } public function enviarMensaje(Request $request) { $response = $this->openRouter->chat( $request->input('messages'), $request->input('model', 'anthropic/claude-3.7-sonnet') ); return response()->json($response); } }
Personalización
Puedes personalizar los parámetros adicionales al enviar mensajes al chat:
$response = OpenRouter::chat( $messages, 'anthropic/claude-3.7-sonnet', 800, // max_tokens 0.5, // temperature [ 'top_p' => 0.9, 'stream' => false, // Otros parámetros... ] );
Soporte y Contribución
Para más información o soporte, puedes visitar like.cl o contactar al autor a través de GitHub.
Licencia
Este paquete está licenciado bajo la Licencia MIT.