| <?php |
|
|
| return [ |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| 'mailgun' => [ |
| 'domain' => env('MAILGUN_DOMAIN'), |
| 'secret' => env('MAILGUN_SECRET'), |
| 'endpoint' => env('MAILGUN_ENDPOINT', 'api.mailgun.net'), |
| 'scheme' => 'https', |
| ], |
|
|
| 'postmark' => [ |
| 'token' => env('POSTMARK_TOKEN'), |
| ], |
|
|
| 'ses' => [ |
| 'key' => env('AWS_ACCESS_KEY_ID'), |
| 'secret' => env('AWS_SECRET_ACCESS_KEY'), |
| 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'), |
| ], |
|
|
| 'google' => [ |
| 'client_id' => env('GOOGLE_CLIENT_ID'), |
| 'client_secret' => env('GOOGLE_CLIENT_SECRET'), |
| 'redirect' => env('GOOGLE_REDIRECT_URI'), |
| ], |
|
|
| 'openai' => [ |
| 'api_key' => env('OPENAI_API_KEY'), |
| 'base_url' => env('OPENAI_BASE_URL', 'https://api.openai.com/v1'), |
| 'model' => env('OPENAI_MODEL', 'gpt-4o'), |
| 'video_model' => env('OPENAI_VIDEO_MODEL', 'sora-2'), |
| 'video_poll_interval' => env('OPENAI_VIDEO_POLL_INTERVAL', 5), |
| 'chat_api_key' => env('OPENAI_CHAT_API_KEY'), |
| 'chat_base_url' => env('OPENAI_CHAT_BASE_URL'), |
| 'chat_model' => env('OPENAI_CHAT_MODEL'), |
| 'chat_fallback_model' => env('OPENAI_CHAT_FALLBACK_MODEL'), |
| 'assistant_provider' => env('OPENAI_ASSISTANT_PROVIDER', 'deepseek'), |
| 'assistant_api_key' => env('OPENAI_ASSISTANT_API_KEY'), |
| 'assistant_base_url' => env('OPENAI_ASSISTANT_BASE_URL'), |
| 'assistant_id' => env('OPENAI_ASSISTANT_ID'), |
| 'assistant_use_hosted_threads' => env('OPENAI_ASSISTANT_USE_HOSTED_THREADS', false), |
| 'assistant_model' => env('OPENAI_ASSISTANT_MODEL', 'deepseek-chat'), |
| 'assistant_system_prompt' => env('OPENAI_ASSISTANT_SYSTEM_PROMPT', 'Kamu adalah assistant premium untuk Medilis. Jawaban harus spesifik, tajam, tidak generik, dan langsung bisa dipakai.'), |
| 'assistant_timeout' => env('OPENAI_ASSISTANT_TIMEOUT', 18), |
| 'assistant_run_timeout' => env('OPENAI_ASSISTANT_RUN_TIMEOUT', 90), |
| 'assistant_poll_interval_ms' => env('OPENAI_ASSISTANT_POLL_INTERVAL_MS', 350), |
| 'image_model' => env('OPENAI_IMAGE_MODEL', 'gpt-image-1.5'), |
| 'system_prompt' => env('OPENAI_SYSTEM_PROMPT', 'Kamu adalah asisten AI yang membantu, jelas, dan singkat.'), |
| 'history_limit' => env('OPENAI_HISTORY_LIMIT', 6), |
| 'max_tokens' => env('OPENAI_MAX_TOKENS', 180), |
| 'timeout' => env('OPENAI_TIMEOUT', 40), |
| 'image_timeout' => env('OPENAI_IMAGE_TIMEOUT', 120), |
| 'svg_max_tokens' => env('OPENAI_SVG_MAX_TOKENS', 900), |
| 'daily_message_limit' => env('OPENAI_DAILY_MESSAGE_LIMIT', 40), |
| ], |
|
|
| 'pollinations' => [ |
| 'api_key' => env('POLLINATIONS_API_KEY'), |
| 'base_url' => env('POLLINATIONS_BASE_URL', 'https://image.pollinations.ai/prompt'), |
| 'model' => env('POLLINATIONS_MODEL', 'flux'), |
| 'timeout' => env('POLLINATIONS_TIMEOUT', 45), |
| ], |
|
|
| 'freepik' => [ |
| 'api_key' => env('FREEPIK_API_KEY'), |
| 'base_url' => env('FREEPIK_BASE_URL', 'https://api.freepik.com/v1/ai/text-to-image'), |
| 'timeout' => env('FREEPIK_TIMEOUT', 90), |
| 'music_generate_endpoint' => env('FREEPIK_MUSIC_GENERATE_ENDPOINT', 'https://api.freepik.com/v1/ai/music-generation/generate'), |
| 'music_status_endpoint' => env('FREEPIK_MUSIC_STATUS_ENDPOINT', 'https://api.freepik.com/v1/ai/music-generation'), |
| ], |
|
|
| 'huggingface' => [ |
| 'api_token' => env('HF_TOKEN', env('HF_API_TOKEN')), |
| 'model' => env('HF_MODEL', 'black-forest-labs/FLUX.1-schnell'), |
| 'base_url' => env('HF_BASE_URL', 'https://router.huggingface.co/hf-inference/models'), |
| 'timeout' => env('HF_TIMEOUT', 60), |
| 'media_enabled' => env('HF_MEDIA_ENABLED', false), |
| 'media_driver' => env('HF_MEDIA_DRIVER', 'repo'), |
| 'media_repo_id' => env('HF_MEDIA_REPO_ID', 'adwandw/teknolis-media'), |
| 'media_repo_type' => env('HF_MEDIA_REPO_TYPE', 'dataset'), |
| 'media_bucket_id' => env('HF_MEDIA_BUCKET_ID', env('HF_BUCKET', '')), |
| 'media_path_prefix' => env('HF_MEDIA_PATH_PREFIX', 'laravel-media'), |
| 'media_delete_local' => env('HF_MEDIA_DELETE_LOCAL', true), |
| 'cli_binary' => env('HF_CLI_BINARY', '/usr/local/bin/hf'), |
| 'media_owner_email' => env('HF_MEDIA_OWNER_EMAIL', 'admin@dev.local'), |
| |
| 'hf_only' => env('TOOLS_HF_ONLY', false), |
| ], |
|
|
| 'edge_tts' => [ |
| 'binary' => env('EDGE_TTS_BINARY', ''), |
| 'voice' => env('EDGE_TTS_VOICE', 'id-ID-GadisNeural'), |
| 'timeout' => env('EDGE_TTS_TIMEOUT', 120), |
| ], |
|
|
| 'replicate' => [ |
| 'api_key' => env('REPLICATE_API_KEY'), |
| 'base_url' => 'https://api.replicate.com/v1', |
| 'i2v_model' => env('REPLICATE_I2V_MODEL', 'wavespeedai/wan-2.1-i2v-480p'), |
| 'tryon_model' => env('REPLICATE_TRYON_MODEL', 'cedoysch/flux-fill-redux-try-on'), |
| 'tryon_version' => env('REPLICATE_TRYON_VERSION', 'cf5cb07a25e726fe2fac166a8c5ab52ddccd48657741670fb09d9954d4d8446f'), |
| 'timeout' => env('REPLICATE_TIMEOUT', 180), |
| 'poll_interval' => 4, |
| ], |
|
|
| 'fal' => [ |
| 'api_key' => env('FAL_KEY'), |
| 'base_url' => env('FAL_BASE_URL', 'https://queue.fal.run'), |
| 'model' => env('FAL_MODEL', 'fal-ai/flux/schnell'), |
| 'tryon_model' => env('FAL_TRYON_MODEL', 'fal-ai/image-apps-v2/virtual-try-on'), |
| 'timeout' => env('FAL_TIMEOUT', 180), |
| 'poll_interval_ms' => env('FAL_POLL_INTERVAL_MS', 1500), |
| ], |
|
|
| 'gemini' => [ |
| 'api_key' => env('GEMINI_API_KEY', env('GOOGLE_API_KEY')), |
| 'base_url' => env('GEMINI_BASE_URL', 'https://generativelanguage.googleapis.com/v1beta'), |
| 'veo_model' => env('GEMINI_VEO_MODEL', 'veo-3.1-generate-preview'), |
| 'veo_fast_model' => env('GEMINI_VEO_FAST_MODEL', 'veo-3.1-fast-generate-preview'), |
| 'timeout' => env('GEMINI_TIMEOUT', 180), |
| 'poll_interval' => env('GEMINI_POLL_INTERVAL', 10), |
| ], |
|
|
| 'ollama' => [ |
| 'base_url' => env('OLLAMA_BASE_URL', 'http://127.0.0.1:11434'), |
| 'model' => env('OLLAMA_MODEL', 'llama3.2'), |
| 'system_prompt' => env('OLLAMA_SYSTEM_PROMPT', 'Kamu adalah asisten AI yang membantu, jelas, dan singkat.'), |
| 'history_limit' => env('OLLAMA_HISTORY_LIMIT', 12), |
| 'num_predict' => env('OLLAMA_NUM_PREDICT', 256), |
| 'timeout' => env('OLLAMA_TIMEOUT', 90), |
| ], |
|
|
| 'deepseek' => [ |
| 'api_key' => env('DEEPSEEK_API_KEY'), |
| 'base_url' => env('DEEPSEEK_BASE_URL', 'https://api.deepseek.com'), |
| 'model' => env('DEEPSEEK_MODEL', 'deepseek-chat'), |
| ], |
|
|
| ]; |
|
|