• chatgpt
  • ai
  • prompt
  • i18n

การแปล JSON ที่มีบริบทยาวด้วย ChatGPT

เรียนรู้วิธีการใช้โมเดล ChatGPT ล่าสุดและโหมด JSON เพื่อแปลออบเจ็กต์ JSON ที่มีบริบทยาว และสตรีมผลลัพธ์กลับไปที่ JSON

Gao
Gao
Founder

หยุดเสียเวลาเป็นสัปดาห์กับการยืนยันตัวตนผู้ใช้
เปิดตัวแอปที่ปลอดภัยเร็วขึ้นด้วย Logto ผสานการยืนยันตัวตนผู้ใช้ภายในไม่กี่นาทีและมุ่งเน้นที่ผลิตภัณฑ์หลักของคุณ
เริ่มต้นใช้งาน
Product screenshot

เรียนรู้วิธีการใช้โมเดล ChatGPT ล่าสุดและโหมด JSON เพื่อแปลไฟล์ JSON ที่มีบริบทยาว และสตรีมผลลัพธ์กลับไปที่ JSON

บทนำ

มันนานมาแล้วตั้งแต่โพสต์ล่าสุดของเรา การทำให้กระบวนการสร้างภาษาเกิดประสิทธิภาพด้วย ChatGPT ซึ่งเราแสดงให้เห็นว่าคุณสามารถใช้ ChatGPT เพื่อแปลออบเจ็กต์ JSON ได้อย่างไร เมื่อโมเดลนี้พัฒนาไป ความสามารถในการแปลก็ได้ถูกปรับปรุงให้ดีขึ้นอย่างมากด้วยหน้าต่างบริบทที่ยาวขึ้น การเพิ่มจำนวนโทเค็นผลลัพธ์สูงสุด และฟีเจอร์ใหม่ๆ เช่น โหมด JSON ที่ทำให้ประสบการณ์ของนักพัฒนาดียิ่งขึ้น

เพิ่มจำนวนโทเค็นผลลัพธ์สูงสุด

มาดูการเปรียบเทียบอย่างรวดเร็วของสองรุ่นล่าสุดของโมเดล:

Modelคำอธิบายหน้าต่างบริบทโทเค็นผลลัพธ์สูงสุดข้อมูลการฝึกฝน
gpt-4o-2024-05-13gpt-4o ปัจจุบันชี้ไปที่เวอร์ชันนี้128,000 โทเค็น4,096 โทเค็นถึง ต.ค. 2023
gpt-4o-2024-08-06สแนปช็อตล่าสุดที่รองรับ Structured Outputs128,000 โทเค็น16,384 โทเค็นถึง ต.ค. 2023

การเปลี่ยนแปลงที่สำคัญที่สุดคือการเพิ่มจำนวนโทเค็นผลลัพธ์สูงสุดจาก 4,096 เป็น 16,384 ซึ่งเหมาะเจาะกับสถานการณ์การแปลโดยเฉพาะ เนื่องจากผลลัพธ์ของการแปลมักจะมีความยาวประมาณเท่ากับหรือมากกว่าข้อความต้นฉบับ ในขณะนี้ ราคาได้ถูกลดลงเมื่อเปรียบเทียบกับโมเดล 32K โทเค็นก่อนหน้านี้ (ซึ่งมีราคาแพง)

โหมด JSON

ตามชื่อของมัน โหมด JSON มีประโยชน์มากเมื่อคุณต้องการให้แน่ใจว่าผลลัพธ์นั้นเป็นออบเจ็กต์ JSON ที่ถูกต้อง สำหรับโมเดลใหม่นี้ คุณสามารถกำหนดโครงสร้างของออบเจ็กต์ JSON ที่ผลลัพธ์ได้โดยใช้ Structured Outputs

เริ่มต้น

การเริ่มต้น

เราจะใช้ ชุดพัฒนาซอฟต์แวร์ Node.js ของ OpenAI v4.56.0 ในโพสต์นี้เพื่อการสาธิต คุณสามารถใช้วิธีหรือภาษาอื่นที่คุณต้องการได้

ก่อนอื่นเราต้องเริ่มต้นไคลเอนต์ OpenAI:

ฉันขอแนะนำอย่างยิ่งให้ใช้โหมดสตรีมสำหรับการแปลที่มีบริบทยาว เนื่องจากมันมีประสิทธิภาพมากกว่า และคุณไม่จำเป็นต้องรอเวลานานเพื่อลองรับผลลัพธ์ (ตัวอย่างเช่น หนึ่งนาทีสำหรับหนึ่งคำขอ) โค้ดจะมีลักษณะดังนี้:

มาเขียนข้อความชักนำกันเถอะ

เราสามารถใช้บทบาท system เพื่อบอกให้โมเดลทำงานของมัน:

อย่าลืมเปลี่ยน "th" เป็นรหัสภาษาที่คุณต้องการ ตามประสบการณ์ของเรา มีคำแนะนำหลายอย่างที่เราต้องบอกให้โมเดลเพื่อให้ออกผลลัพธ์ที่ดีขึ้นและลดการแทรกแซงของมนุษย์:

คุณอาจสงสัยว่าทำไมเราจึงต้องมีคำแนะนำสุดท้าย นี่คือคำอธิบาย จาก OpenAI:

เมื่อใช้โหมด JSON คุณต้องบอกโมเดลเสมอให้สร้าง JSON ผ่านข้อความบางข้อความในการสนทนา เช่น ผ่านข้อความระบบของคุณ หากคุณไม่รวมคำแนะนำที่ชัดเจนในการสร้าง JSON โมเดลอาจสร้างสตรีมของช่องว่างที่ไม่สิ้นสุดและคำขออาจดำเนินการต่อไปเรื่อย ๆ จนกว่าจะถึงขีดจำกัดของโทเค็น

ด้วยคำแนะนำข้างต้น เราสามารถใส่ออบเจ็กต์ JSON เพื่อให้แปลในข้อความต่อไปนี้กับบทบาท user มาประกอบสิ่งที่เรามีต่อไปนี้:

การจัดการผลลัพธ์

เนื่องจากเราใช้โหมดสตรีม ดังนั้นเราต้องจัดการผลลัพธ์ด้วยรูปแบบการสตรีม นี่คือตัวอย่าง:

บทสรุป

แค่นี้! ด้วยโมเดล ChatGPT ใหม่ ประสิทธิภาพของการแปล JSON ได้รับการปรับปรุงให้ดียิ่งขึ้น และคุณภาพของการแปลก็ดีขึ้นด้วย ฉันหวังว่าโพสต์นี้จะช่วยให้คุณได้ข้อมูลใหม่เกี่ยวกับ ChatGPT และการแปล JSON พบกันในโพสต์ถัดไป!