การสรุปการแปลคำถามและคำตอบการสร้างข้อความและอื่น ๆ ด้วยความเร็วที่น่าสนใจโดยใช้รุ่น T5 ที่ใช้ใน ONNX
แพ็คเกจนี้ยังอยู่ในช่วงอัลฟ่าดังนั้นฟังก์ชันบางอย่างเช่นการค้นหาลำแสงยังอยู่ในระหว่างการพัฒนา
ONNX-T5 มีอยู่ใน PYPI
pip install onnxt5สำหรับรุ่น dev คุณสามารถเรียกใช้สิ่งต่อไปนี้
git clone https://github.com/abelriboulot/onnxt5
cd onnxt5
pip install -e . วิธีที่ง่ายที่สุดในการเริ่มต้นสำหรับการสร้างคือการใช้ T5 รุ่นก่อนที่ได้รับการฝึกอบรมล่วงหน้าบน ONNX ที่รวมอยู่ในแพ็คเกจ
หมายเหตุ: โปรดทราบว่าครั้งแรกที่คุณโทรหา get_encoder_decoder_tokenizer รุ่นจะถูกดาวน์โหลดซึ่งอาจใช้เวลาหนึ่งหรือสองนาที
from onnxt5 import GenerativeT5
from onnxt5 . api import get_encoder_decoder_tokenizer
decoder_sess , encoder_sess , tokenizer = get_encoder_decoder_tokenizer ()
generative_t5 = GenerativeT5 ( encoder_sess , decoder_sess , tokenizer , onnx = True )
prompt = 'translate English to French: I was a victim of a series of accidents.'
output_text , output_logits = generative_t5 ( prompt , max_length = 100 , temperature = 0. )
# output_text: "J'ai été victime d'une série d'accidents."งานอื่น ๆ เพียงแค่ต้องเปลี่ยนคำนำหน้าในพรอมต์ของคุณเช่นการสรุป:
prompt = 'summarize: <PARAGRAPH>'
output_text , output_logits = generative_t5 ( prompt , max_length = 100 , temperature = 0. )หากคุณต้องการรับข้อความฝังตัวคุณสามารถเรียกใช้สิ่งต่อไปนี้
from onnxt5 . api import get_encoder_decoder_tokenizer , run_embeddings_text
decoder_sess , encoder_sess , tokenizer = get_encoder_decoder_tokenizer ()
prompt = 'Listen, Billy Pilgrim has come unstuck in time.'
encoder_embeddings , decoder_embeddings = run_embeddings_text ( encoder_sess , decoder_sess , tokenizer , prompt ) ONNXT5 ยังช่วยให้คุณส่งออกและใช้โมเดลของคุณเอง ดู examples โฟลเดอร์สำหรับตัวอย่างรายละเอียดเพิ่มเติม
T5 ทำงานร่วมกับโทเค็นเช่น summarize: translate English to German: หรือ question: ... context: คุณสามารถดูรายการงานและโทเค็นที่ได้รับการฝึกฝนในภาคผนวก D ของกระดาษต้นฉบับ
การทำงานที่สูงกว่านั้นแตกต่างกันอย่างมากตามความยาวของบริบท สำหรับบริบทที่น้อยกว่า ~ 500 คำ ONNX มีประสิทธิภาพสูงกว่าอย่างมากเพิ่มขึ้นเป็น 4x เร่งความเร็วเมื่อเทียบกับ pytorch อย่างไรก็ตามยิ่งบริบทนานขึ้นเท่าใดก็ยิ่งเพิ่มความเร็วของ ONNX ด้วย pytorch จะเร็วกว่า 500 คำ


โครงการยังคงอยู่ในช่วงเริ่มต้นดังนั้นฉันจะรักความคิดเห็นของคุณรู้ว่าคุณพยายามแก้ไขปัญหาใดบ้างที่คุณกำลังเผชิญอยู่ฟังปัญหาที่คุณกำลังเผชิญอยู่และหารือเกี่ยวกับคุณสมบัติที่จะช่วยคุณได้ ดังนั้นอย่าลังเลที่จะยิงอีเมลให้ฉัน (ดูโปรไฟล์ของฉันสำหรับที่อยู่!) หรือเข้าร่วมชุมชน Slack ของเรา
repo นี้มีพื้นฐานมาจากผลงานของ Colin Raffel และ Noam Shazeer และ Adam Roberts และ Katherine Lee และ Sharan Narang และ Michael Matena และ Yanqi Zhou และ Wei Li และ Peter J. Liu จาก Google รวมถึงการใช้งานของทีม T5 ของข้อความ
กระดาษ T5 ต้นฉบับ
@article{2019t5,
author = {Colin Raffel and Noam Shazeer and Adam Roberts and Katherine Lee and Sharan Narang and Michael Matena and Yanqi Zhou and Wei Li and Peter J. Liu},
title = {Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer},
journal = {arXiv e-prints},
year = {2019},
archivePrefix = {arXiv},
eprint = {1910.10683},
}
microsoft onnxruntime repo
การใช้งาน HuggingFace ของ T5