| # โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| # Phoenix AI โ ุฅุนุฏุงุฏุงุช ุงููุธุงู (ูุณุฎุฉ ูู ูุฐุฌูุฉ) | |
| # โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| # ุงูุณุฎ ูุฐุง ุงูู ูู ุฅูู .env ูุงู ูุฃ ุงูููู ุงูุญููููุฉ: | |
| # cp .env.example .env | |
| # โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ | |
| # ู ูุชุงุญ API ุงูุฎุงุต ุจู OpenRouter (ู ุทููุจ ููุชุตุญูุญ ูุงูุชุญููู ุงูุฐูู) | |
| OPENROUTER_API_KEY=sk-or-v1-your-key-here | |
| # ู ูุชุงุญ API ุงูุฎุงุต ุจู Google Gemini (ู ุณุงุนุฏ ุงูุฑุคูุฉ) | |
| GOOGLE_GEMINI_KEY=your-gemini-key-here | |
| # ู ูุชุงุญ OpenAI ุงุฎุชูุงุฑู ูุจุนุถ ุงูู ูุตูุงุช ุงูุฎุงุฑุฌูุฉ. ูุง ุชุถุน ุงูู ูุชุงุญ ุงูุญูููู ูู Git. | |
| OPENAI_API_KEY=your-openai-key-here | |
| # ุงููู ุงุฐุฌ ุงูุชู ูุทูุจูุง LLMService ุนุจุฑ OpenRouter | |
| LLM_MODEL_EASY=gpt-5.4-mini | |
| LLM_MODEL_HARD=gpt-5.5 | |
| # ุชูุนูู ู ุญุฑู ุงููุฑุงุกุฉ ุงูุจุตุฑู (Vision OCR) | |
| # ุณูููู ุจุชุนุทููู ูุงุณุชุฎุฏุงู ูู ุงุฐุฌู ุงูู ุญููุฉ (Kraken) | |
| USE_VISION_OCR=false | |
| # โโ GPU & Performance Settings โโ | |
| DEVICE=auto | |
| USE_FP16=true | |
| MAX_IMAGE_SIZE=2500 | |
| MAX_UPLOAD_MB=20 | |
| TASK_WORKERS=1 | |
| # OCR routing profile: auto | default | logic | |
| SEGMENTATION_PROFILE=auto | |
| RECOGNITION_PROFILE=auto | |
| LOGIC_SEG_MODEL_FILE=logic_philosophy_v2_seg.mlmodel | |
| LOGIC_REC_MODEL_FILE=logic_philosophy_v2_rec.mlmodel | |
| # ูู ูุฐุฌ ุงูุนุฑุถ ุงูู ูุดูุฑ โ exp9ุ ู ุน ุจุตู ุฉ ุชู ูุน ุชุดุบูู ู ูู ู ุฎุชูู ุจุงูุงุณู ููุณู. | |
| REC_MODEL_FILE=phoenix_htr_exp9_multidomain_81_2896fef9.mlmodel | |
| REC_MODEL_EXPECTED_SHA256=2896fef9d9665cbb82fba8faa3bf0c628ac6a5cc62eb678f40c707db833aebea | |
| SEG_MODEL_FILE=seg_finetuned_v4.mlmodel | |
| # ุงููู ูุฐุฌ ุงูุนุงู ุงููุธูู ุชุฌุงู validation. ูุง ุชุฌุนู char8_trainval ุงูุชุฑุงุถูุงู: | |
| # ููู ู ุฏุฑูุจ ุนูู validation ูููุจุทู ุฃู ุถุจุท ุฃู ููุงุณ ุนูููุง. | |
| LM_FILE=char8_visual.lm | |
| LM_LOGIC_FILE=char8_logic_selftrained.lm | |
| LM_ARCHIVE_FILE=char8_general_archive_mixed.lm | |
| LM_ARCHIVE_AUTO_APPLY=false | |
| LM_UNKNOWN_DOMAIN_POLICY=greedy | |
| USE_GATED_LM=true | |
| LM_GENERAL_CONF_MIN=0.82 | |
| LM_GENERAL_CONF_THRESHOLD=0.88 | |
| # โโ ุฎุท ู ุนุงูุฌุฉ ุจุณูุท ูู eScriptorium โโ | |
| # ุงูุชุฑุงุถูุงู: ุชุนุทูู ุชุตุญูุญ ุงูู ููุงู (deskew) ูุงูุชุตุบูุฑ (resize) ูู ุทุงุจูุฉ ุณููู eScriptorium ูุชูุงุฏู ุชุดูู ุงูุฎุท ุงูุนุฑุจู | |
| OCR_AUTO_DESKEW=false | |
| OCR_RESIZE=true | |
| # ุจุฏุงุฆู ุงููุฑุงุกุฉ ุงูุจุตุฑูุฉ (ุงูุฏุฑุฌุฉ ูุณุจูุฉ ุฏุงุฎู ุงูุดุนุงุนุ ูููุณุช ุงุญุชู ุงู ุตุญุฉ) | |
| CANDIDATES_ENABLED=true | |
| AUTO_CANDIDATES=false | |
| CANDIDATES_MAX_K=8 | |
| CANDIDATES_BEAM=10 | |