By Arnon Puitrakul - 13 กุมภาพันธ์ 2025
AI เข้ามามีบทบาทในการทำงานสำหรับฝั่ง Software Developer ค่อนข้างมาก เรามีการเอา Source Code ที่มีปัญหาเข้าไปถามหาวิธีแก้ไข หรือกระทั่งการให้เขียน Documentation ออกมาให้ ซึ่งในท้องตลาดเราทุกวันนี้มีเครื่องมือที่นำ AI เข้ามาใช้กันเยอะมาก แต่ส่วนใหญ่จะเสียเงิน วันนี้เราจะมาเล่าวิธีการที่ทำให้เราสาารถใช้งาน Feature พวกนี้ได้แบบฟรี ๆ ในเครื่องของเรากันด้วย Visual Studio Code และ Continue กัน
การใช้งานที่เราจะมาเล่าวิธีการในบทความนี้ เป็นการรัน LLM บนเครื่องของเราผ่าน Ollama ดังนั้น เครื่องที่จะรันได้นั้นควรจะแรง และมี RAM ให้เราสามารถผลาญได้อย่างสนุก เช่น 32GB หรือมากกว่านั้น พร้อมกับ GPU ที่เร็วแรงมาเพียงพอสำหรับการรันจะดีมาก
ollama run deepseek-r1:32b
ก่อน เราจะเริ่มใช้งานกัน เราจะต้องเตรียมเครื่องของเราให้พร้อมก่อน คือการติดตั้ง Ollama สำหรับการเรียกใช้งาน LLM พร้อมกับดาวน์โหลด Model ที่เราต้องการ โดยในการทดสอบนี้ เรามาลองใช้ Model ใหม่ ๆ ที่มี CoT อย่าง Deepseek-R1 กัน เครื่องที่เราใช้เป็น Macbook Pro M4 Max ที่มี Unified Memory ขนาด 64 GB จากการทดสอบมา เราไหวอยู่ที่ตัว 32B ก็เลือกติดตั้งไป ส่วนใครที่เครื่องมี Memory น้อยกว่านี้ หรือ GPU ไม่แรงพอ แนะนำให้ใช้ตัวที่ขนาดเล็กกว่านี้ก็ได้ แต่ความเก่งมันก็จะน้อยลงไป แนะนำให้ไปดูที่ผลการทดสอบของ Model นั้น ๆ ว่ามันลดลงไปเร็วขนาดไหน และอีกอย่างที่ต้องเตรียมสำคัญมากเช่นกันคือ อย่าลืมติดตั้ง Visual Studio Code ด้วยเด้อ
ด้วยความที่ Continue เป็น Extension ใน VS Code ทำให้เราสามารถเข้าไปติดตั้งมันได้ง่าย ๆ โดยการเปิด Tab Extension ขึ้นมา และพิมพ์ค้นหาคำว่า Continue เราก็สามารถกดติดตั้งได้เลย ง่าย ๆ แค่นั้น
จากนั้น เราจะมาตั้งค่า Continue เพื่อให้มาใช้งานกับ Ollama ในเครื่องของเรากัน มันจะมี Tab ใหม่ของ Continue โผล่ขึ้นมา ให้เรากดเข้าไป มันจะมี Guide ขึ้นมาให้ว่า เราจะใช้งานมันอย่างไร หากเราต้องการใช้งานกับพวก Model อย่าง ChatGPT ที่เราจะต้องไปเอา API Key จากในหน้าเว็บของ OpenAI มาแปะ ก็จะใช้งานได้ทันที แต่สำหรับวันนี้ เราจะใช้ Ollama ในเครื่องของเราเป็นเหมือน Provider ในการไปคุยกับ Model กัน เราจะกดรูปเฟืองด้านบนเป็นการเข้าหน้า Settings ของ Continue
แล้วเราจะเห็นตัวเลือกที่ามารถเปิดปิดได้ แต่เราจะดูตรง Section ที่เขียนว่า Configuration และมีปุ่มเดียวคือ Open Configuration File
เมื่อเราเปิดออกมาแล้ว เราจะพบกับ Config File ของ Continues ที่เป็น JSON ทั่ว ๆ ไป ให้เราดูที่ menu มันจะมี model, provider และ title ตรงนี้ จะเป็นส่วนที่ Continue มันเข้าไปคุยกับ Ollama ของเรา โดย Model เราจะใส่เป็น Model ที่เราเลือกดาวน์โหลดใน Ollama เช่น เราโหลด deepseek-r1 ขนาด 32B Parameters มา เราก็จะใส่เป็น deepseek-r1:32b ส่วน Provider จะบอกว่า เราต้องการใช้ Service อะไร ในที่นี้เราใช้ ollama และสุดท้าย Name คือชื่อ เราสามารถตั้งชื่อได้ตามต้องการเลย
"models": [
{
"model": "deepseek-r1:32b",
"provider": "ollama",
"title": "Deepseek-R1 32B"
},
{
"model": "deepseek-coder-v2",
"provider": "ollama",
"title": "Deepseek"
}
],
หรือกระทั่ง ถ้าเรามี Model อื่น ๆ ที่จะเอามารันด้วย เราก็สามารถใส่เพิ่มเข้าไปได้ เช่นเราอยากได้ Deepseek Coder มารัน เราก็สามารถเติมเพิ่มอย่างที่เห็นด้านบนได้เลย
Continue มันเป็น Extension ที่ทำได้หลายอย่างมาก แต่วันนี้เราจะพามาเล่าตัวที่เราใช้งานทั้งหมด 3 อย่างด้วยกัน
อย่างแรกคือ เราสามารถใช้มันเป็น Chatbot ทั่ว ๆ ไป ให้มันเขียน Code ต่าง ๆ ออกมาได้ เช่นเราอยากให้มันเขียน Code ภาษา C สำหรับการทำ Quick Sort เราสามารถบอกมันได้ โดยการกดเข้าไปที่ Tab Continue และพิมพ์เข้าไปให้มัน Generate Code ออกมาได้ ซึ่งมันจะใช้เวลาคิดอยู่พอสมควร ขึ้นกับความแรงของเครื่องเราด้วย สำหรับเครื่องเราบอกเลยว่า เจอ Deepseek-R1 ขนาด 32B Parameter เข้าไป ก็มีหนาว ๆ ร้อน ๆ ไม่น้อยเหมือนกัน ใช้เวลาคิดเยอะมาก
ความเจ๋งคือ มันรู้ด้วยนะว่า Model ที่เราใช้งานมี CoT มันมีขึ้นด้วยนะว่า Thinking โดยเราสามารถกดเข้าไป เมื่อขอดูสิ่งที่มันพ่นออกมาได้ว่ามันกำลังคิดอะไรอยู่ เป็นสิ่งที่พวก Model ที่มี CoT จะสามารถบอกเราได้
สุดท้าย มันจะพ่น Source Code ออกมาตามที่เราต้องการเลย เราสามารถ Copy Source Code ออกมาได้ หรือกด Apply เพื่อเอา Source Code ไป Fill ใส่ หน้าต่างที่กำลังเปิดอยู่ได้เลย
ความสามารถอย่างที่ 2 คือ ถ้าเกิดว่า เราเขียน ๆ Code ไปแล้ว เราไม่แน่ใจว่าส่วนนี้มันทำงานยังไง เราสามารถลากคลุม มันจะมีหน้าต่างเล็ก ๆ ขึ้นมาบอกว่า ถ้าเรากด Cmd + L มันจะเป็นการ Chat ใช่แล้ว
เราสามารถเอา Source Code ส่วนที่เรา Highlight เข้าไปคุยกับ LLM ได้โดยตรง เช่น เราอาจจะถามมันกลับไปว่า Code ส่วนนี้มันทำอะไร มันก็จะไล่บอกเรามาหมดเลย เหมือน เราก๊อบ Code ของเราไปถาม ChatGPT เลยแหละ
และความสามารถสุดท้ายคือ ปกติ เราเขียน Function สักตัว เราจะต้องเขียน DocString เพื่อบอกว่า Function นี้มันทำอะไร รับอะไรเข้าไปและออกมา ซึ่งส่วนใหญ่ เราก็ขี้เกียจเขียนกันแน่นอน มันน่าจะดีมาก ๆ ถ้ามันมีคนช่วย Generate มาให้เรา ใช่แล้วครับ มันสามารถทำได้ แค่เรา Highlight Function ที่ต้องการ คลิกขวา เลือก Continue และ Write a Docstring for this code มันก็จะพยายาม Generate ออกมาให้เราทันทีเลย แล้วมันจะขึ้น Change มาบอกต่ออีกว่า มันเพิ่มเข้ามาตรงไหน แล้วเราโอเคหรือไม่ ถ้าโอเค เราก็แค่กด Accept เท่านั้นเอง
Continue เมื่อเราเอามาใช้ทำงานร่วมกับ Ollama และ Visual Studio Code จะทำให้เราสามารถทำงานในการเขียน Code ได้ง่ายขึ้น สนุกกว่าเดิม ที่สำคัญมันฟรี และข้อมูลทั้งหมดเรารันอยู่บนเครื่องของเราไม่ได้ถูกส่งกลับไปที่ Server ที่อยู่ที่ไหนไม่รู้ ยังไงความเป็นส่วนตัวก็สำคัญมาก ๆ เสมออยู่แล้ว แต่แลกมากับการที่เครื่องคอมพิวเตอร์ของคุณต้องมีความแรงพอตัวเลย ถึงจะสามารถเอา Model มารันได้ ใครที่เครื่องเหลือ ๆ อยากเล่น ก็ลองกดมาเล่นกันได้เด้อ และสุดท้าย เราอยากฝากไว้เรื่องนึว่า AI เอาจริง ๆ นะ เราใช้แต่พอดี อย่าไปเชื่อมัมันมาก หลาย ๆ อย่างเครื่องมันยังไม่สามารตัดสินใจได้ดีเท่าที่ควร ก็ใช้เป็นแค่คำแนะนำละกัน แล้วการตัดสินใจสุดท้าย ก็อยากให้เป็นคนอยู่เด้อ
AI เข้ามามีบทบาทในการทำงานสำหรับฝั่ง Software Developer ค่อนข้างมาก วันนี้เราจะมาเล่าวิธีการที่ทำให้เราสาารถใช้งาน Feature พวกนี้ได้แบบฟรี ๆ ในเครื่องของเรากันด้วย Visual Studio Code และ Continue กัน...
เมื่อหลายวันก่อน เราไปทำงานแล้วใช้ Terminal แบบปีศาจมาก ๆ จนเพื่อนถามว่า เราทำยังไงถึงสามารถสลับ Terminal Session ไปมาได้แบบบ้าคลั่งขนาดนั้น เบื้องหลังของผมน่ะเหรอกัปตัน ผมใช้ tmux ยังไงละ วันนี้เราจะมาแชร์ให้อ่านกันว่า มันเอามาใช้งานจริงได้อย่างไร เป็น Beginner Guide สำหรับคนที่อยากลองละกัน...
Firewall ถือว่าเป็นเครื่องมือในการป้องกันภัยขั้นพื้นฐานที่ปัจจุบันใคร ๆ ก็ติดตั้งใช้งานกันอยู่แล้ว แต่หากเรากำลังใช้ Ubuntu อยู่ จริง ๆ แล้วเขามี Firewall มาให้เราใช้งานได้เลยนะ มันชื่อว่า UFW วันนี้เราจะมาทำความรู้จัก และทดลองตั้ง Rule สำหรับการดักจับการเชื่อมต่อที่ไม่เกี่ยวข้องกันดีกว่า...
Obsidian เป็นโปรแกรมสำหรับการจด Note ที่เรียกว่า สารพัดประโยชน์มาก ๆ เราสามารถเอามาทำอะไรได้เยอะมาก ๆ หนึ่งในสิ่งที่เราเอามาทำคือ นำมาใช้เป็นระบบสำหรับการจัดการ Todo List ในแต่ละวันของเรา ทำอะไรบ้าง วันนี้เราจะมาเล่าให้อ่านกันว่า เราจัดการะบบอย่างไร...