การตัดสินใจของ Ollama ที่จะหันหลังให้กับ llama.cpp สร้างปัญหาความเข้ากันได้กับโมเดล GPT-OSS 20B

ทีมชุมชน BigGo
การตัดสินใจของ Ollama ที่จะหันหลังให้กับ llama.cpp สร้างปัญหาความเข้ากันได้กับโมเดล GPT-OSS 20B

ผู้ใช้ Ollama กำลังประสบปัญหาความเข้ากันได้อย่างกว้างขวางกับโมเดล GPT-OSS 20B ซึ่งเป็นผลจากการตัดสินใจของแพลตฟอร์มที่จะละทิ้ง llama.cpp และหันไปใช้การใช้งานแบบของตัวเอง ปัญหาเหล่านี้ได้จุดประกายการถกเถียงอย่างรุนแรงในชุมชนเกี่ยวกับทิศทางทางเทคนิคและกลยุทธ์ทางธุรกิจของ Ollama

รากเหง้าของปัญหา

ผู้ใช้หลายคนใน Ollama เวอร์ชันต่างๆ (0.10.1 ถึง 0.11.3) กำลังพบข้อผิดพลาดเดียวกันเมื่อพยายามรันโมเดล GPT-OSS 20B GGUF ข้อความแสดงข้อผิดพลาด tensor blk0.ffn.down.exps.weight has invalid ggml type 39 (NONE) ปรากฏอย่างสม่ำเสมอในระบบปฏิบัติการและการกำหนดค่าฮาร์ดแวร์ต่างๆ รวมถึงการตั้งค่า CUDA และ ROCm ที่น่าสนใจคือโมเดลเดียวกันนี้ทำงานได้อย่างสมบูรณ์แบบเมื่อรันผ่าน llama.cpp โดยตรง ซึ่งชี้ไปที่ปัญหาความเข้ากันได้เฉพาะของ Ollama

คำอธิบายทางเทคนิคมาจาก ggerganov ผู้สร้าง llama.cpp ที่ระบุว่าการใช้งานแบบกำหนดเองของ Ollama ขาดการสนับสนุนสำหรับประเภท tensor บางอย่างที่โมเดลใหม่ๆ ต้องการ สิ่งนี้สร้างสถานการณ์ที่น่าหงุดหงิดที่ผู้ใช้สามารถดาวน์โหลดโมเดลได้สำเร็จแต่ไม่สามารถรันได้ แม้ว่าโมเดลจะทำงานได้อย่างไร้ที่ติในเครื่องมืออื่นๆ

เวอร์ชัน Ollama ที่ได้รับผลกระทบ:

  • เวอร์ชัน 0.10.1
  • เวอร์ชัน 0.11.2
  • เวอร์ชัน 0.11.3-rc0
  • เวอร์ชัน 0.11.3

รายละเอียดข้อผิดพลาด:

  • ข้อความแสดงข้อผิดพลาด: "tensor blk0.ffn.down.exps.weight has invalid ggml type 39 (NONE)"
  • ส่งผลกระทบต่อแหล่งโมเดล GGUF หลายแหล่ง: unsloth/gpt-oss-20b-GGUF และ ggml-org/gpt-oss-20b-GGUF
  • โมเดลทำงานได้อย่างถูกต้องใน llama.cpp แต่ล้มเหลวใน Ollama

ปฏิกิริยาของชุมชนต่อการตัดสินใจทางเทคนิค

เหตุการณ์นี้ได้เปิดเผยความกังวลที่ลึกซึ้งยิ่งขึ้นเกี่ยวกับทิศทางเชิงกลยุทธ์ของ Ollama สมาชิกชุมชนได้วิพากษ์วิจารณ์การตัดสินใจของบริษัทที่จะหันหลังให้กับ llama.cpp โดยให้เหตุผลว่าสิ่งนี้สร้างปัญหาความเข้ากันได้ที่ไม่จำเป็นในขณะที่ให้ประโยชน์เพียงเล็กน้อยแก่ผู้ใช้ นักพัฒนาคนหนึ่งสังเกตว่า Ollama ตอนนี้เชื่อมโยงโดยตรงกับไลบรารีระดับต่ำ ggml แทนที่จะใช้ llama.cpp เป็นไลบรารี ทำให้พวกเขาต้องคิดค้นสิ่งที่มีอยู่แล้วใหม่โดยไม่มีประโยชน์อะไรเลย

อย่างไรก็ตาม ผู้นำของ Ollama ได้ปกป้องแนวทางของพวกเขา โดยอธิบายว่าการนำการปรับปรุงระดับการวิจัยมาใช้อย่างรวดเร็วของ llama.cpp ทำให้ไม่เหมาะสมสำหรับการเป็นพันธมิตรในองค์กร พวกเขาให้ความสำคัญกับความเสถียรและประสิทธิภาพที่คาดเดาได้มากกว่าฟีเจอร์ล้ำสมัย แม้ว่าจะหมายถึงความเร็วที่ช้าลงและความสามารถที่น้อยลงก็ตาม

การกำหนดค่าฮาร์ดแวร์ที่ได้รับผลกระทบ:

  • การตั้งค่า CUDA ( Tesla V100 , GPU-6000c )
  • ROCm เวอร์ชัน 1.15 ( RX7700xt )
  • ระบบ macOS
  • ระบบ Ubuntu Linux
  • การกำหนดค่าหน่วยความจำต่างๆ (รวม 125.8 GiB , มีรายงานว่าเหลือ 114.1 GiB ในกรณีหนึ่ง)

ผลกระทบที่กว้างขึ้นต่อระบบนิเวศ

ความขัดแย้งนี้ขยายไปเกินกว่าปัญหาความเข้ากันได้เพียงเรื่องเดียว นักวิจารณ์ชี้ให้เห็นว่า Ollama มีปัญหาที่เปิดอยู่กว่า 1,800 เรื่องและไม่ได้แปลงโมเดลล่าสุดเป็นรูปแบบที่เป็นกรรมสิทธิ์ของตัวเองอย่างสม่ำเสมอ ข้อจำกัดนี้ป้องกันไม่ให้ผู้ใช้รันโมเดลโอเพนซอร์สที่ทันสมัยที่สุด เว้นแต่ว่า Ollama จะสนับสนุนโมเดลเหล่านั้นโดยเฉพาะ

Ollama สามารถทำให้ชีวิตง่ายขึ้นได้โดยการเรียกใช้ llama-server เป็น subprocess ที่ฟังบน unix socket และส่งต่อคำขอไปยังมัน

สถานการณ์นี้ได้นำไปสู่การที่สมาชิกชุมชนบางคนสนับสนุนทางเลือกอื่นเช่น llama-server หรือเครื่องมือสลับโมเดลอื่นๆ ที่รักษาความเข้ากันได้ที่ใกล้ชิดกว่ากับระบบนิเวศที่กว้างขึ้น ในขณะที่ Ollama ยังคงแสวงหาการเป็นพันธมิตรในองค์กรและการระดมทุนจากนักลงทุนเสี่ยง ความตึงเครียดระหว่างความเสถียรทางการค้าและความต้องการของชุมชนดูเหมือนจะเพิ่มขึ้น

ปัญหาความเข้ากันได้ของ GPT-OSS 20B ทำหน้าที่เป็นตัวอย่างที่เป็นรูปธรรมของวิธีที่การตัดสินใจทางเทคนิคที่ทำเพื่อเหตุผลทางธุรกิจสามารถส่งผลกระทบต่อประสบการณ์ของผู้ใช้และความไว้วางใจของชุมชนในภูมิทัศน์เครื่องมือ AI ที่พัฒนาอย่างรวดเร็ว

อ้างอิง: gpt-oss 20b gguf model fail to run #11714