ก่อนหน้านี้ ผมเคยได้เขียนบทความวิธีสมัครใช้งานและสร้าง API Key จาก OpenAI เพื่อให้สามารถเชื่อมต่อโมเดล AI อย่าง GPT กับโปรเจกต์ของเราได้แล้ว ซึ่งในตอนนี้ เราจะมาเรียนรู้เกี่ยวกับการใช้งาน Chat Models ของ LangChain ซึ่งเป็นโมเดลที่ออกแบบมาโดยเฉพาะสำหรับการสนทนาและการโต้ตอบในรูปแบบแชท เช่นเดียวกับ ChatGPT ที่เราคุ้นเคยกันครับ
🤖 Chat Model คืออะไร?
Chat Model เป็นโมเดล AI ที่ถูกออกแบบมาให้เข้าใจ บริบทของการสนทนาแบบต่อเนื่อง ซึ่งเหมาะกับแอปพลิเคชันที่ต้องโต้ตอบกับผู้ใช้ เช่น Chatbot หรือ AI Assistant โดยเฉพาะ
สิ่งที่พิเศษของ Chat Model ได้แก่:
- รองรับ ข้อความหลายรอบ (Multi-turn conversation)
- รองรับ บทบาทของข้อความ เช่น
System,User,Assistant - เข้าใจลำดับของการโต้ตอบอย่างเป็นธรรมชาติ
ใน LangChain เราจะใช้ ChatOpenAI เป็นเครื่องมือเชื่อมต่อกับโมเดล GPT ของ OpenAI ครับ
ก่อนเริ่ม ขอทดสอบ Terminal ก่อนนะครับ
โดยลองสร้างโฟล์เดอร์ขึ้นมา และใช้ VS Code เปิด จากนั้นสร้างไฟล์ที่ชื่อ app.py
บน app ขอให้ลองเขียนว่า
print("Hello Pharmacist")
จากนั้น run python ใน terminal โดยพิมพ์ว่า
python app.py

ถ้าเรียบร้อย แสดงว่า โปรแกรมเราใช้งานได้
🧰 ขั้นตอนการใช้งาน Chat Model ใน LangChain
- ติดตั้งแพ็กเกจเสริม ให้ใช้คำสั่งนี้ใน Terminal เพื่อให้ LangChain เชื่อมต่อกับโมเดลของ OpenAI:
pip install langchain-openai
2. นำเข้า (Import) ChatOpenAI เราจะใช้โมเดล GPT ผ่านคลาส ChatOpenAI ของ LangChain ดังนี้:
เริ่มต้นให้สร้าง file app.py ใน folder แล้วเขียน code ตามนี้
from langchain_openai import ChatOpenAI
3. สร้างโมเดล เราจะสร้างตัวแปรโมเดลที่เรียกใช้งานได้:
llm = ChatOpenAI(model="gpt-4o-mini",api_key="API_KEY")
print(llm)
openai_api_key="YOUR_API_KEY", # คีย์ของคุณ model="gpt-4o", # เลือกรุ่นที่ต้องการ เช่น gpt-4o, gpt-4-turbo, gpt-3.5-turbo temperature=0.7 # ระดับความคิดสร้างสรรค์ (0 ถึง 2) )
4. เรียกใช้งานโมเดล ใช้คำสั่ง invoke() เพื่อส่งคำสั่งหรือคำถามไปยังโมเดล:
response = llm.invoke("ยาแก้ปวดมีอะไรบ้าง?")
print(response) #แสดงเนื้อหาทั้งหมดprint(response.cotent) #แสดงเฉพาะสิ่งที่ตอบกลับมา
โมเดลจะส่งคำตอบกลับมา

📊 ทำไมคำตอบจึงอาจแตกต่างกัน?
แต่ละรุ่นของโมเดล GPT จะมีความสามารถและข้อมูลอัปเดตที่แตกต่างกัน ตัวอย่างเช่น:
- GPT-3.5 อาจตอบคำถามจากข้อมูลที่เก่ากว่า (เช่น ปี 2021–2022)
- GPT-4o หรือ GPT-4.5 preview จะมีข้อมูลที่อัปเดตกว่า เช่น ปลายปี 2023
ยกตัวอย่างคำถาม “นายกรัฐมนตรีคนล่าสุดของประเทศไทยคือใคร?”
- GPT-3.5 อาจตอบผิดเพราะข้อมูลเก่า
- GPT-4o อาจตอบว่า “นายเศรษฐา ทวีสิน” พร้อมแจ้งว่าอัปเดตข้อมูลถึง ตุลาคม 2023
🔐 ประเด็นสำคัญ: การปกป้อง API Key
สิ่งที่ควรระวังคือการ ฝัง API Key ไว้ในโค้ดโดยตรง ซึ่งเป็นความเสี่ยงด้านความปลอดภัย เพราะใครที่เห็นโค้ดก็สามารถขโมยไปใช้งานได้
เราจึงควร เก็บ API Key ไว้ใน Environment Variable แล้วเรียกใช้ในโค้ดแทน เพื่อให้ปลอดภัยยิ่งขึ้น ซึ่งเดี๋ยวเราจะไปเรียนรู้กันว่าใช้งาน Environment Variable อย่างไรครับ
📌 สรุป
- เราใช้
ChatOpenAIเพื่อเชื่อมต่อโมเดล GPT กับ LangChain - ต้องติดตั้ง
langchain-openaiและใส่API Keyพร้อมระบุรุ่นโมเดล - ใช้
.invoke()เพื่อส่งคำถามให้ AI - รุ่นของโมเดลจะมีผลต่อคำตอบ รวมถึงค่าใช้จ่ายในการใช้งาน
- ควรซ่อน API Key ไว้ไม่ให้คนอื่นเห็น
โมเดลอื่นๆ เผื่อจะลอง : https://python.langchain.com/docs/integrations/providers/

Leave a Reply