บริบทแบบยาว

โมเดล Gemini จํานวนมากมาพร้อมกับหน้าต่างบริบทขนาดใหญ่ที่มีโทเค็นตั้งแต่ 1 ล้านโทเค็นขึ้นไป ที่ผ่านมา โมเดลภาษาขนาดใหญ่ (LLM) ถูกจํากัดอย่างมากจากจํานวนข้อความ (หรือโทเค็น) ที่ส่งไปยังโมเดลได้พร้อมกัน หน้าต่างบริบทขนาดใหญ่ของ Gemini จะปลดล็อกกรณีการใช้งานใหม่ๆ และกระบวนทัศน์ของนักพัฒนาซอฟต์แวร์ได้มากมาย

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

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

ดูขนาดกรอบเวลาตามบริบทของรูปแบบที่เฉพาะเจาะจงได้ที่หน้ารูปแบบ

หน้าต่างบริบทคืออะไร

วิธีพื้นฐานในการใช้โมเดลของ Gemini คือการส่งข้อมูล (บริบท) ไปยังโมเดล ซึ่งจะสร้างคำตอบในภายหลัง ตัวอย่างเปรียบเทียบของกรอบเวลาบริบทคือความทรงจำระยะสั้น หน่วยความจำระยะสั้นของมนุษย์มีขีดจํากัดเช่นเดียวกับโมเดล Generative

อ่านข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำงานของโมเดลได้ในคู่มือ Generative AI

เริ่มต้นใช้งานบริบทแบบยาว

โมเดล Generative เวอร์ชันเก่าๆ ประมวลผลได้ครั้งละ 8,000 โทเค็นเท่านั้น โมเดลที่ใหม่กว่าสามารถรับโทเค็นได้สูงสุด 32,000 หรือแม้แต่ 128,000 รายการ Gemini เป็นโมเดลแรกที่รองรับโทเค็นได้ 1 ล้านรายการ

ในทางปฏิบัติ โทเค็น 1 ล้านรายการจะมีลักษณะดังนี้

  • โค้ด 50,000 บรรทัด (มาตรฐาน 80 อักขระต่อบรรทัด)
  • SMS ทั้งหมดที่คุณส่งในช่วง 5 ปีที่ผ่านมา
  • นวนิยายภาษาอังกฤษขนาดกลาง 8 เรื่อง
  • ข้อความถอดเสียงของพอดแคสต์ความยาวเฉลี่ยมากกว่า 200 ตอน

กรอบเวลาบริบทที่จำกัดมากขึ้นซึ่งพบได้ทั่วไปในโมเดลอื่นๆ มักต้องใช้กลยุทธ์ต่างๆ เช่น การทิ้งข้อความเก่าๆ โดยไม่ตั้งใจ การสรุปเนื้อหา การใช้ RAG กับฐานข้อมูลเวกเตอร์ หรือกรองพรอมต์เพื่อบันทึกโทเค็น

แม้ว่าเทคนิคเหล่านี้จะยังคงมีประโยชน์ในบางสถานการณ์ แต่หน้าต่างบริบทขนาดใหญ่ของ Gemini ช่วยให้ใช้แนวทางที่ตรงไปตรงมามากขึ้นได้ ซึ่งก็คือการให้ข้อมูลที่เกี่ยวข้องทั้งหมดตั้งแต่ต้น เนื่องจากโมเดล Gemini สร้างขึ้นโดยมีความสามารถด้านบริบทจำนวนมากโดยเฉพาะ จึงแสดงให้เห็นถึงการเรียนรู้ในบริบทที่มีประสิทธิภาพ ตัวอย่างเช่น เมื่อใช้เฉพาะสื่อการเรียนการสอนตามบริบท (ไวยากรณ์อ้างอิง 500 หน้า พจนานุกรม และประโยคคู่ประมาณ 400 ประโยค) Gemini เรียนรู้ที่จะแปลจากภาษาอังกฤษเป็น Kalamang ซึ่งเป็นภาษาปาปัวนิวกินีที่มีผู้พูดไม่ถึง 200 คน ด้วยคุณภาพที่คล้ายกับผู้เรียนที่เป็นมนุษย์ที่ใช้สื่อเดียวกัน ข้อมูลนี้แสดงให้เห็นถึงการเปลี่ยนแปลงกระบวนทัศน์ที่บริบทแบบยาวของ Gemini สร้างขึ้น ซึ่งเปิดโอกาสให้เกิดความเป็นไปได้ใหม่ๆ ผ่านการเรียนรู้ในบริบทที่มีประสิทธิภาพ

กรณีการใช้งานบริบทแบบยาว

แม้ว่ากรณีการใช้งานมาตรฐานสําหรับโมเดล Generative ส่วนใหญ่จะยังคงเป็นการป้อนข้อความ แต่กลุ่มโมเดล Gemini จะช่วยให้เกิดกระบวนทัศน์ใหม่สําหรับกรณีการใช้งานแบบหลายรูปแบบ โมเดลเหล่านี้เข้าใจข้อความ วิดีโอ เสียง และรูปภาพได้ตั้งแต่ต้น ฟีเจอร์เหล่านี้มาพร้อมกับ Gemini API ที่รับไฟล์ประเภทต่างๆเพื่อความสะดวก

ข้อความแบบยาว

ข้อความพิสูจน์แล้วว่าเป็นเลเยอร์ข้อมูลอัจฉริยะที่รองรับแรงขับเคลื่อนส่วนใหญ่เกี่ยวกับ LLM ดังที่ได้กล่าวไปก่อนหน้านี้ ข้อจํากัดด้านการใช้งานส่วนใหญ่ของ LLM นั้นเกิดจากกรอบบริบทที่ไม่ใหญ่พอสําหรับทํางานบางอย่าง ด้วยเหตุนี้ เราจึงนำการสร้างแบบเพิ่มประสิทธิภาพการดึงข้อมูล (RAG) และเทคนิคอื่นๆ มาใช้อย่างรวดเร็ว ซึ่งจะส่งข้อมูลตามบริบทที่เกี่ยวข้องให้กับโมเดลแบบไดนามิก ตอนนี้เมื่อหน้าต่างบริบทมีขนาดใหญ่ขึ้นเรื่อยๆ เทคนิคใหม่ๆ ก็พร้อมใช้งานเพื่อปลดล็อก Use Case ใหม่ๆ

กรณีการใช้งานมาตรฐานและที่กําลังเกิดขึ้นใหม่สําหรับบริบทแบบข้อความยาวมีดังนี้

  • การสรุปชุดข้อความขนาดใหญ่
    • ตัวเลือกการสรุปก่อนหน้านี้ที่มีโมเดลบริบทขนาดเล็กกว่าจะต้องมีกรอบเวลาแบบเลื่อนหรือเทคนิคอื่นๆ เพื่อเก็บสถานะของส่วนก่อนหน้าไว้เมื่อมีการส่งโทเค็นใหม่ไปยังโมเดล
  • คำถามและการตอบคำถาม
    • ที่ผ่านมา ฟีเจอร์นี้ใช้ได้กับ RAG เท่านั้น เนื่องจากบริบทมีจํากัดและความสามารถในการจำข้อมูลข้อเท็จจริงของโมเดลต่ำ
  • เวิร์กโฟลว์ของตัวแทน
    • ข้อความเป็นรากฐานของวิธีที่ตัวแทนเก็บสถานะสิ่งที่ทําไปแล้วและสิ่งที่ต้องทำ การไม่มีข้อมูลเพียงพอเกี่ยวกับโลกและเป้าหมายของตัวแทนเป็นข้อจํากัดความน่าเชื่อถือของตัวแทน

การเรียนรู้ในบริบทแบบหลายช็อตเป็นหนึ่งในความสามารถที่โดดเด่นที่สุดที่โมเดลบริบทแบบยาวมอบให้ งานวิจัยแสดงให้เห็นว่าการนํารูปแบบตัวอย่างแบบ "ช็อตเดียว" หรือ "ช็อตหลายแบบ" ทั่วไปมาใช้ ซึ่งจะแสดงตัวอย่างงาน 1 หรือ 2 รายการต่อโมเดล แล้วปรับขนาดเป็นหลายร้อย หลายพัน หรือหลายแสนตัวอย่าง อาจทําให้โมเดลมีความสามารถใหม่ๆ นอกจากนี้ แนวทางแบบหลายช็อตยังมีประสิทธิภาพคล้ายกับโมเดลที่ได้รับการปรับแต่งอย่างละเอียดสำหรับงานหนึ่งๆ ด้วย สําหรับกรณีการใช้งานที่ประสิทธิภาพของโมเดล Gemini ยังไม่เพียงพอสําหรับการเปิดตัวเวอร์ชันที่ใช้งานจริง ให้ลองใช้วิธีการหลายช็อต ดังที่คุณอาจได้เห็นในภายหลังในส่วนการเพิ่มประสิทธิภาพบริบทแบบยาว การแคชบริบททําให้ภาระงานโทเค็นอินพุตสูงประเภทนี้มีความคุ้มค่าทางเศรษฐกิจมากขึ้นและอาจลดเวลาในการตอบสนองในบางกรณี

วิดีโอแบบยาว

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

กรณีการใช้งานมาตรฐานและที่กำลังเกิดขึ้นใหม่สำหรับบริบทวิดีโอแบบยาวมีดังนี้

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

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

เสียงแบบยาว

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

กรณีการใช้งานมาตรฐานและที่กําลังเกิดขึ้นใหม่สําหรับบริบทเสียงมีดังนี้

  • การถอดเสียงเป็นคำและการแปลภาษาแบบเรียลไทม์
  • พอดแคสต์ / วิดีโอแบบถามและตอบ
  • การถอดเสียงเป็นคำและสรุปการประชุม
  • ผู้ช่วยแบบเสียง

ดูข้อมูลเพิ่มเติมเกี่ยวกับพรอมต์ด้วยไฟล์เสียงได้ในคำแนะนำเกี่ยวกับพรอมต์

การเพิ่มประสิทธิภาพบริบทแบบยาว

การเพิ่มประสิทธิภาพหลักเมื่อทํางานกับบริบทแบบยาวและรูปแบบ Gemini คือการใช้การแคชบริบท นอกจากข้อจำกัดด้านความสามารถในการประมวลผลโทเค็นจํานวนมากในคําขอเดียวแล้ว ข้อจํากัดหลักอีกประการหนึ่งคือต้นทุน หากมีแอป "แชทกับข้อมูลของคุณ" ที่ผู้ใช้อัปโหลดไฟล์ PDF 10 ไฟล์ วิดีโอ และเอกสารงานบางส่วน ก่อนหน้านี้คุณจะต้องทำงานกับเครื่องมือ/เฟรมเวิร์กการสร้างการดึงข้อมูลแบบเพิ่มประสิทธิภาพ (RAG) ที่ซับซ้อนมากขึ้นเพื่อประมวลผลคำขอเหล่านี้และจ่ายเงินจํานวนมากสำหรับโทเค็นที่ย้ายไปยังกรอบบริบท ตอนนี้คุณสามารถแคชไฟล์ที่ผู้ใช้อัปโหลดและชำระเงินเพื่อจัดเก็บไฟล์เหล่านั้นแบบรายชั่วโมงได้แล้ว ตัวอย่างเช่น ต้นทุนอินพุต / เอาต์พุตต่อคำขอที่ใช้ Gemini Flash จะน้อยกว่าต้นทุนอินพุต / เอาต์พุตมาตรฐานประมาณ 4 เท่า ดังนั้นหากผู้ใช้แชทกับข้อมูลของตนมากพอ คุณจะประหยัดค่าใช้จ่ายได้มากในฐานะนักพัฒนาแอป

ข้อจํากัดของบริบทแบบยาว

ในส่วนต่างๆ ของคู่มือนี้ เราได้พูดถึงวิธีที่โมเดล Gemini มีประสิทธิภาพสูงในการประเมินการดึงข้อมูลแบบหาเข็มในกองหญ้า การทดสอบเหล่านี้พิจารณาการตั้งค่าพื้นฐานที่สุด ซึ่งคุณมีเข็มเดียวที่ต้องการค้นหา ในกรณีที่คุณอาจมี "เข็ม" หลายเล่มหรือข้อมูลเฉพาะที่คุณต้องการ โมเดลจะทำงานได้ไม่แม่นยำเท่าเดิม ประสิทธิภาพอาจแตกต่างกันไปอย่างมากโดยขึ้นอยู่กับบริบท เรื่องนี้เป็นสิ่งที่ควรพิจารณาเนื่องจากมีค่าใช้จ่ายที่ตามมาจากการดึงข้อมูลที่เหมาะสม คุณจะได้รับผลลัพธ์ประมาณ 99% ในคำค้นหาเดียว แต่จะต้องจ่ายค่าโทเค็นอินพุตทุกครั้งที่ส่งคำค้นหานั้น ดังนั้น หากต้องการดึงข้อมูล 100 รายการและต้องการประสิทธิภาพ 99% คุณก็อาจต้องส่งคำขอ 100 รายการ นี่เป็นตัวอย่างที่ดีที่แสดงให้เห็นว่าแคชตามบริบทสามารถลดต้นทุนที่เกี่ยวข้องกับการใช้โมเดล Gemini ได้อย่างมีนัยสําคัญ ทั้งยังรักษาประสิทธิภาพให้สูงได้

คำถามที่พบบ่อย

ตำแหน่งใดเหมาะที่สุดในการใส่ข้อความค้นหาในหน้าต่างบริบท

ในกรณีส่วนใหญ่ โดยเฉพาะในกรณีที่บริบททั้งหมดยาว ประสิทธิภาพของโมเดลจะดีขึ้นหากคุณใส่คําค้นหา / คําถามไว้ที่ท้ายพรอมต์ (หลังบริบทอื่นๆ ทั้งหมด)

ฉันจะสูญเสียประสิทธิภาพของรูปแบบไหมเมื่อเพิ่มโทเค็นลงในคําค้นหา

โดยทั่วไปแล้ว หากคุณไม่จําเป็นต้องส่งโทเค็นไปยังโมเดล คุณควรหลีกเลี่ยงการส่งโทเค็น อย่างไรก็ตาม หากคุณมีโทเค็นจำนวนมากที่มีข้อมูลบางอย่างและต้องการตั้งคำถามเกี่ยวกับข้อมูลนั้น โมเดลจะดึงข้อมูลดังกล่าวออกมาได้ (ความแม่นยำสูงสุด 99% ในหลายกรณี)

ฉันจะลดต้นทุนด้วยข้อความค้นหาแบบบริบทยาวได้อย่างไร

หากคุณมีชุดโทเค็น / บริบทที่คล้ายกันซึ่งต้องการนํามาใช้ซ้ำหลายครั้ง การแคชบริบทจะช่วยลดความซับซ้อนในการถามคําถามเกี่ยวกับข้อมูลนั้น

ความยาวของบริบทส่งผลต่อเวลาในการตอบสนองของโมเดลไหม

คำขอแต่ละรายการจะมีเวลาในการตอบสนองคงที่ไม่ว่าจะมีขนาดเท่าใดก็ตาม แต่โดยทั่วไปแล้วการค้นหาที่ยาวกว่าจะมีเวลาในการตอบสนองนานกว่า (เวลาที่ใช้ในการรับโทเค็นแรก)