Initial commit: Runware-powered content generator foundation
Laravel app with a cost-tracked Runware.ai integration (image, video, text generation), a hard monthly EUR budget cap with live USD/EUR FX conversion, and a locally-maintained model/pricing table since Runware's model-search API doesn't expose pricing.
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
|
||||
return [
|
||||
|
||||
'api_key' => env('RUNWARE_API_KEY'),
|
||||
|
||||
'base_url' => env('RUNWARE_BASE_URL', 'https://api.runware.ai/v1'),
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Budget
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Hard monthly spending cap enforced by App\Services\Runware\BudgetGuard
|
||||
| before every batch. Spend is tracked in USD (Runware's billing currency)
|
||||
| and converted to EUR using the cached live rate from CurrencyRateService,
|
||||
| falling back to usd_eur_fallback_rate when no live rate is cached yet.
|
||||
|
|
||||
*/
|
||||
|
||||
'monthly_cap_eur' => (float) env('RUNWARE_MONTHLY_CAP_EUR', 20),
|
||||
|
||||
'usd_eur_fallback_rate' => (float) env('RUNWARE_USD_EUR_FALLBACK_RATE', 0.92),
|
||||
|
||||
// Extra headroom subtracted from the cap when checking pre-flight cost
|
||||
// estimates, to absorb FX drift and estimate error.
|
||||
'safety_margin' => (float) env('RUNWARE_SAFETY_MARGIN', 0.10),
|
||||
|
||||
// Fraction of the cap at which a warning notification fires.
|
||||
'warn_threshold' => (float) env('RUNWARE_WARN_THRESHOLD', 0.80),
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Default models
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| Empty by default: App\Services\Runware\ModelCatalog discovers the
|
||||
| cheapest model per modality via Runware's model search API and caches
|
||||
| it daily. Set any of these to override the discovered default.
|
||||
|
|
||||
*/
|
||||
|
||||
'default_models' => [
|
||||
'image' => env('RUNWARE_IMAGE_MODEL'),
|
||||
'video' => env('RUNWARE_VIDEO_MODEL'),
|
||||
'text' => env('RUNWARE_TEXT_MODEL'),
|
||||
],
|
||||
|
||||
];
|
||||
Reference in New Issue
Block a user