Skip to main content

การแก้ไขปัญหา

💡TL;DR

ปัญหา Notemd ส่วนใหญ่แบ่งออกเป็น 4 ประเภท ได้แก่ ปัญหาหลัก API ปัญหาการเชื่อมต่อเครือข่าย ข้อผิดพลาดการยืนยันตัวตน (401/403) และข้อจำกัดด้านอัตราการใช้งาน (429) ตัวทดสอบการเชื่อมต่อและแผงวินิจฉัยที่มีมาในตัวจะช่วยระบุสาเหตุหลักได้อย่างรวดเร็ว หน้านี้จะอธิบายข้อความแสดงข้อผิดพลาดที่พบบ่อยทุกประเภท สาเหตุ และวิธีแก้ไข สำหรับปัญหาที่ไม่ได้ระบุไว้ที่นี่ ให้รายงานไปที่ GitHub Issues พร้อมกับผลลัพธ์จากการวินิจฉัย

นี่เป็นส่วนหนึ่งของ Obsidian คู่มือการจัดการความรู้ด้วย AI

ภาพรวม

Notemd ต้องอาศัยบริการภายนอก -- ผู้ให้บริการ LLM และเครื่องมือค้นหา API -- ดังนั้นปัญหาส่วนใหญ่จึงเกิดขึ้นนอกเหนือจากตัวปลั๊กอินเอง แผงวินิจฉัยในส่วนการตั้งค่าจะแสดงข้อมูลการเรียกใช้งานครั้งล่าสุด API ในรูปแบบที่เป็นระเบียบ ซึ่งรวมถึงคำขอ URL สถานะการตอบกลับ และเนื้อหาข้อผิดพลาด ควรตรวจสอบส่วนนี้ก่อนเสมอก่อนที่จะทำการสืบสวนเพิ่มเติม

วิธีการทำงาน: การวินิจฉัย

การทดสอบการเชื่อมต่อ

แต่ละส่วนของการตั้งค่าผู้ให้บริการจะมีปุ่ม “Test Connection” การคลิกปุ่มนี้จะส่งคำขอ API ที่มีขนาดเล็กที่สุด (โดยปกติจะเป็นรายชื่อโมเดลหรือการแสดงผลสั้นๆ) และจะรายงานว่าสำเร็จหรือมีข้อผิดพลาด HTTP ที่เฉพาะเจาะจง นี่คือวิธีที่เร็วที่สุดในการตรวจสอบว่าคีย์ API และฐานข้อมูล URL ของคุณถูกต้องหรือไม่

แผงวินิจฉัย

Settings --> Notemd --> Diagnostics จะแสดงดังนี้:

FieldContent
Last providerผู้ให้บริการที่ถูกเรียกใช้งานล่าสุด
Last modelโมเดลที่ถูกเรียกใช้งานล่าสุด
สถานะล่าสุดรหัสสถานะ HTTP หรือข้อผิดพลาดการส่งข้อมูล
ข้อผิดพลาดล่าสุดข้อความข้อผิดพลาดดิบจาก API
คำขอล่าสุด URLข้อมูล URL ทั้งหมดของคำขอล่าสุด (ปิดบังคีย์ API)
เนื้อหาตอบกลับล่าสุดเนื้อหาตอบกลับที่ถูกตัดทอน (500 ตัวอักษรแรก)

คัดลอกผลลัพธ์การวินิจฉัยทั้งหมดเมื่อรายงานปัญหาบน GitHub.

ข้อผิดพลาดที่พบบ่อย

คีย์ API ไม่ถูกต้องหรือขาดหายไป

อาการ: HTTP 401 หรือ "คีย์ API ที่ให้มาไม่ถูกต้อง"

สาเหตุ: คีย์ API ขาดหายไป มีช่องว่าง หรือเป็นของผู้ให้บริการอื่น

วิธีแก้ไข:

  1. ตรวจสอบให้แน่ใจว่าคีย์ไม่มีช่องว่างด้านหน้าหรือด้านหลัง
  2. ยืนยันว่าคีย์ตรงกับผู้ให้บริการที่เลือก (คีย์ OpenAI จะใช้งานไม่ได้กับ Anthropic)
  3. ตรวจสอบให้แน่ใจว่าบัญชีของคุณมีคะแนนเครดิตหรือมีการสมัครใช้งานที่ยังมีผลบังคับใช้อยู่
  4. คลิก "Test Connection" เพื่อทำการยืนยัน

ข้อผิดพลาดด้านเครือข่าย / การเชื่อมต่อ

อาการ: ERR_CONNECTION_REFUSED, ERR_TIMED_OUT, Socket hang up, Network request failed

สาเหตุ: จุดปลายทาง API ไม่สามารถเข้าถึงได้จากเครื่องของคุณ.

วิธีแก้ไข:

  1. ตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณ
  2. หากอยู่หลังโปรกซีหรือไฟร์วอลล์ ให้ตรวจสอบว่าโดเมน API ไม่ถูกบล็อก
  3. สำหรับ Ollama: ตรวจสอบให้แน่ใจว่า ollama serve กำลังทำงานอยู่ (ollama list ควรจะส่งคืนโมเดล)
  4. สำหรับ LMStudio: ตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์กำลังทำงานบน localhost:1234
  5. ลองใช้วิธีการส่งข้อมูลอื่น -- ผู้ใช้มือถือควรตรวจสอบให้แน่ใจว่าวิธีการส่งข้อมูล requestUrl กำลังทำงานอยู่
  6. เปิดใช้งาน enableStableApiCall เพื่อทำการพยายามใหม่โดยอัตโนมัติเมื่อเกิดข้อผิดพลาดชั่วคราว

403 Forbidden

อาการ: HTTP 403

สาเหตุ: คีย์ API ของคุณมีผลบังคับใช้แต่ไม่มีสิทธิ์ในการเข้าถึงทรัพยากรที่ร้องขอ.

วิธีแก้ไข:

  1. บางโมเดลต้องการสิทธิ์พิเศษ (เช่น GPT-4 ผ่าน Azure จำเป็นต้องมีชื่อการติดตั้ง)
  2. บางผู้ให้บริการจำกัดโมเดลตามระดับแผน -- กรุณาตรวจสอบบัญชีของคุณ
  3. อาจมีข้อจำกัดตามภูมิภาค (ผู้ให้บริการในจีนบางรายปิดกั้น IP ระหว่างประเทศและในทางกลับกัน)
  4. ตรวจสอบให้แน่ใจว่าชื่อโมเดลสะกดถูกต้อง (เช่น gpt-4o ไม่ใช่ gpt-4o-mini เมื่อโมเดลขนาดเล็กคือทั้งหมดที่แผนของคุณอนุญาต)

Rate Limit (429)

อาการ: HTTP 429 หรือ "Rate limit exceeded"

สาเหตุ: มีการร้องขอจำนวนมากในช่วงเวลาสั้นๆ.

วิธีแก้ไข:

  1. ลด batchConcurrency เป็น 1 หรือ 2
  2. รอสักครู่ก่อนพยายามอีกครั้ง
  3. ตรวจสอบเอกสารข้อจำกัดด้านอัตราการร้องขอของผู้ให้บริการสำหรับระดับแผนของคุณ
  4. เปิดใช้งาน enableStableApiCall เพื่อการพยายามอีกครั้งโดยอัตโนมัติพร้อมการหยุดพัก
  5. พิจารณาเปลี่ยนไปใช้ผู้ให้บริการที่มีขีดจำกัดสูงกว่า (DeepSeek, Ollama)

Model Not Found

อาการ: "Model not found" หรือ HTTP 404

สาเหตุ: ชื่อโมเดลไม่มีอยู่ในผู้ให้บริการที่เลือก

วิธีแก้ไข:

  1. คลิก "Get Model List" เพื่อดูรายชื่อโมเดลทั้งหมดที่มีให้สำหรับผู้ให้บริการของคุณ
  2. ชื่อโมเดลบางตัวอาจเปลี่ยนแปลงไปตามกาลเวลา -- กรุณาตรวจสอบชื่อปัจจุบันในเอกสารประกอบของผู้ให้บริการ
  3. สำหรับ Ollama: ให้รัน ollama list เพื่อดูโมเดลที่ถูกดึงมา; จะมีเฉพาะโมเดลที่ถูกดาวน์โหลดเท่านั้นที่ใช้งานได้

ไม่มีลิงก์ / ไม่มีแนวคิดใดๆ ถูกสร้างขึ้น

อาการ: คำสั่งทำงานแต่ไม่มีผลลัพธ์ใดๆ ปรากฏ

สาเหตุ: LLM ส่งคืนคำตอบที่ว่างเปล่าหรืออ่านไม่ได้.

วิธีแก้ไข:

  1. ตรวจสอบแผงการวินิจฉัยเพื่อดูคำตอบ LLM ที่แท้จริง
  2. ลองใช้โมเดลที่มีความสามารถมากกว่า (โมเดลขนาดเล็กบางตัวมีปัญหาในการสร้างผลลัพธ์แบบมีโครงสร้าง)
  3. ตรวจสอบให้แน่ใจว่าบันทึกมีเนื้อหาเพียงพอ (>50 คำ)
  4. ตรวจสอบคำสั่งพิเศษของคุณเพื่อหาคำสั่งที่ขัดแย้งกัน
  5. ปิดการยับยั้งคำพ้องความหมายชั่วคราวเพื่อดูว่ามีการกรองที่รุนแรงเกินไปหรือไม่

Doubao Endpoint ID หายไป

อาการ: เกิดข้อผิดพลาดเมื่อใช้ผู้ให้บริการ ByteDance Doubao

สาเหตุ: Doubao ต้องการ ID จุดปลายทาง Ark (รูปแบบ: ep-xxxxxxxx-xxxx-xxxx) แทนชื่อโมเดล.

แก้ไข: แทนที่โมเดลตัวอย่างเริ่มต้นด้วย ID จุดปลายทางจริงของคุณจากคอนโซล Volcengine.

การตั้งค่า

การตั้งค่าการวินิจฉัยตำแหน่งวัตถุประสงค์
ทดสอบการเชื่อมต่อส่วน Settings --> Providerตรวจสอบคีย์ API และความสามารถในการเชื่อมต่อ
ดูรายการโมเดลส่วน Settings --> Providerยืนยันว่ามีโมเดลใดบ้างที่สามารถเข้าถึงได้
enableStableApiCallSettings --> Advancedเปิดใช้งานการพยายามใหม่พร้อมการหยุดพัก
batchConcurrencySettings --> Batchควบคุมความขนานเพื่อหลีกเลี่ยงข้อจำกัดด้านอัตราการใช้งาน

วิธีรายงานปัญหา

หากปัญหาของคุณไม่ได้รับการกล่าวถึงข้างต้น:

  1. เปิด Settings --> Notemd --> Diagnostics
  2. คัดลอกผลลัพธ์การวินิจฉัยทั้งหมด
  3. สร้าง Issue บน GitHub ที่ github.com/Jacobinwwey/obsidian-NotEMD/issues
  4. ระบุข้อมูลดังนี้: Obsidian version, Notemd version, provider, model, diagnostics output และขั้นตอนในการทำซ้ำ
  5. ลบคีย์ API ของคุณออกจากไฟล์บันทึกที่แชร์กัน

ขั้นตอนต่อไป

  • LLM Providers -- คู่มือการตั้งค่า provider แบบครบถ้วน
  • Batch Processing -- การตั้งค่าความสามารถในการทำงานพร้อมกันและการทดลองใหม่สำหรับงานขนาดใหญ่
  • Custom Prompts -- แก้ไขพฤติกรรมที่ไม่คาดคิดของ LLM โดยการปรับแต่ง prompt