Files
zyt/server/config/prescription_analysis.php
T
2026-09-21 10:26:14 +08:00

26 lines
1.4 KiB
PHP

<?php
/** Async clinician-facing analysis. Enable only after migration and workers are ready. */
return [
'enabled' => filter_var(env('prescription_analysis.ENABLED', false), FILTER_VALIDATE_BOOLEAN),
'encryption_key' => (string) env('prescription_analysis.ENCRYPTION_KEY', ''),
'start_at' => (int) env('prescription_analysis.START_AT', 0),
'transcript_wait_seconds' => 300,
'debounce_seconds' => 60,
'lease_seconds' => 600,
'max_attempts' => 3,
'max_manual_retries' => 2,
'daily_model_tasks' => (int) env('prescription_analysis.DAILY_MODEL_TASKS', 200),
// Analyses of one prescription per day. Regenerating after each change is the normal way to
// review a case, so this is a budget guard, not a correctness limit.
'daily_patient_batches' => (int) env('prescription_analysis.DAILY_PATIENT_BATCHES', 20),
// Tasks that may run at the same time for one model, so several prescriptions are analysed
// concurrently instead of queueing behind each other. Each running task needs its own consumer
// process: start this many `php think prescription-ai:work --lane=<model>` instances.
'max_parallel_per_model' => max(1, (int) env('prescription_analysis.MAX_PARALLEL_PER_MODEL', 4)),
'refresh_recent_days' => 7,
'auto_refresh_sources' => true,
'auto_refresh_prescription' => true,
'max_context_bytes' => 8000000,
];