# Models และ Providers ## ภาพรวม Neotask รองรับผู้ให้บริการ AI model ที่หลากหลาย คุณสามารถใช้ model ที่โฮสต์บนคลาวด์จาก Anthropic, OpenAI และ Google รัน model ในเครื่องผ่าน Ollama หรือ vLLM หรือเชื่อมต่อกับ API endpoint ที่เข้ากันได้กับ OpenAI ## ผู้ให้บริการที่รองรับ ### ผู้ให้บริการคลาวด์ | ผู้ให้บริการ | Models | Auth | |----------|--------|------| | **Anthropic** | Claude Opus 4.6, Claude Sonnet 4.1, Claude Haiku 4.5 | API key หรือ setup-token | | **OpenAI** | GPT-5.2, GPT-5.1, GPT-4 Turbo, GPT-4 | API key | | **Google (Gemini)** | Gemini 3 Pro, Gemini 2 Flash, Gemini 1 Pro | API key หรือ OAuth | | **Together AI** | Model open-weight ต่าง ๆ (Llama, Mixtral เป็นต้น) | API key | | **Moonshot (Kimi)** | Moonshot v1 (context 32K, 128K) | API key | | **OpenRouter** | 100+ model จากหลายผู้ให้บริการ | API key | | **DeepSeek** | DeepSeek Chat, DeepSeek Coder | API key | | **OpenCode Zen** | Claude variant, model ที่ปรับแต่งเอง | API key | ### ผู้ให้บริการ Local Model | ผู้ให้บริการ | คำอธิบาย | |----------|-------------| | **Ollama** | รัน open-weight model ในเครื่อง (Llama, Mistral เป็นต้น) | | **vLLM** | High-throughput local inference server | | **LiteLLM** | Unified proxy สำหรับ 100+ ผู้ให้บริการ | ### ผู้ให้บริการกำหนดเอง เชื่อมต่อ API ที่เข้ากันได้กับ OpenAI หรือ Anthropic ใด ๆ โดยระบุ base URL และ API key ซึ่งใช้งานได้กับ inference server ที่โฮสต์เอง proxy endpoint ขององค์กร และ model API ของบุคคลที่สาม ## การกำหนดค่า Model ### Primary Model ตั้ง model เริ่มต้นสำหรับเอเจนต์ทั้งหมด เอเจนต์แต่ละตัวสามารถแทนที่ด้วย primary model ของตัวเอง ### Fallback Chain กำหนดค่ารายการ fallback model ตามลำดับความสำคัญ หาก primary model ล้มเหลว (rate limit, downtime, auth error) Neotask จะลอง model ถัดไปในห่วงโซ่โดยอัตโนมัติ ### Image Model การกำหนดค่า model แยกสำหรับการวิเคราะห์และสร้างรูปภาพ รองรับ Claude Vision, GPT-4 Vision และ DALL-E 3 ### Model Alias สร้างทางลัดสำหรับชื่อ model ที่ยาว ตัวอย่างเช่น ตั้ง alias `fast` เป็น `anthropic/claude-haiku-4-5` สำหรับการอ้างอิงอย่างรวดเร็ว ### การแทนที่ต่อเอเจนต์ เอเจนต์แต่ละตัวสามารถมีการกำหนดค่า model ของตัวเองโดยไม่ขึ้นกับค่าเริ่มต้นทั่วโลก ### Model Allowlist จำกัด model ที่เอเจนต์สามารถใช้ได้ มีประโยชน์สำหรับการควบคุมต้นทุนหรือการปฏิบัติตามกฎระเบียบ ## การจัดการ API Key ### แหล่งที่มาของ Key (ลำดับความสำคัญ) 1. Live override key (ลำดับความสำคัญสูงสุด) 2. รายการ key ที่คั่นด้วยเครื่องหมายจุลภาค (rotation) 3. Primary key 4. Key ที่มีหมายเลข (key_1, key_2 เป็นต้น) ### การหมุนเวียน Key อัตโนมัติ เมื่อถึง rate limit Neotask จะหมุนเวียนไปยัง key ที่มีอยู่ถัดไปโดยอัตโนมัติ ความล้มเหลวที่ไม่ใช่ rate limit จะส่งคืนข้อผิดพลาดทันทีโดยไม่หมุนเวียน ### การกำหนดค่าต่อผู้ให้บริการ ผู้ให้บริการแต่ละรายสามารถมีชุด API key, auth profile และการตั้งค่าเฉพาะ model ของตัวเอง ## วิธีการ Auth ของผู้ให้บริการ | วิธีการ | คำอธิบาย | |--------|-------------| | **API Key** | การตรวจสอบสิทธิ์ bearer token มาตรฐาน | | **Setup Token** | ขั้นตอน auth แบบโต้ตอบ (Anthropic) | | **OAuth** | Delegated auth พร้อม refresh token (Google, GitHub Copilot) | | **Token Paste** | การป้อน token ด้วยตนเองสำหรับผู้ให้บริการเฉพาะ | ## ลำดับความสำคัญการเลือก Model เมื่อเอเจนต์ต้องทำการเรียก LLM model จะถูกเลือกตามลำดับนี้: 1. การแทนที่ต่อเอเจนต์ (หากตั้งไว้) 2. Model เริ่มต้นทั่วโลก 3. Model allowlist (หากกำหนดค่า จำกัดตัวเลือก) 4. Model ที่มีอยู่แรก (fallback) ## ข้อจำกัดเครื่องมือเฉพาะผู้ให้บริการ คุณสามารถจำกัดเครื่องมือที่มีสำหรับ model หรือผู้ให้บริการเฉพาะ ตัวอย่างเช่น จำกัด model ที่เชื่อถือน้อยกว่าไปยังการดำเนินการไฟล์เท่านั้น ในขณะที่ให้สิทธิ์เข้าถึงเครื่องมือเต็มรูปแบบแก่ Claude