mantium adalah penyedia platform cloud global untuk membangun aplikasi AI dan mengelolanya dalam skala besar. Platform pengembangan end-to-end Mantium memungkinkan perusahaan dan bisnis dari semua ukuran untuk membangun aplikasi AI dan otomatisasi lebih cepat dan lebih mudah daripada yang mungkin dilakukan secara tradisional. Dengan Mantium, tim teknis dan non-teknis dapat membuat prototipe, mengembangkan, menguji, dan menerapkan aplikasi AI, semuanya dengan pendekatan kode rendah. Melalui fitur logging, pemantauan, dan keamanan otomatis, Mantium juga membebaskan insinyur perangkat lunak dan DevOps dari menghabiskan waktu mereka untuk menciptakan kembali kemudi. Pada level tinggi, Mantium memberikan:
- AI tercanggih – Bereksperimen dan kembangkan dengan pilihan ekstensif model bahasa besar sumber terbuka dan pribadi dengan UI atau API sederhana.
- Otomatisasi proses AI – Membangun aplikasi berbasis AI dengan mudah dengan perpustakaan integrasi yang terus berkembang dan AI Builder grafis Mantium.
- Penyebaran cepat – Mempersingkat garis waktu produksi dari bulan ke minggu atau bahkan berhari-hari dengan penerapan sekali klik. Fitur ini mengubah aplikasi AI menjadi aplikasi web yang dapat dibagikan dengan satu klik.
- Keselamatan dan regulasi – Pastikan keamanan dan kepatuhan terhadap kebijakan tata kelola dan dukungan untuk proses manusia dalam lingkaran.
Dengan Mantium AI Builder, Anda dapat mengembangkan alur kerja canggih yang mengintegrasikan API eksternal, operasi logika, dan model AI. Tangkapan layar berikut menunjukkan contoh aplikasi Mantium AI, yang menyatukan input Twilio, kebijakan tata kelola, blok AI (yang dapat mengandalkan model sumber terbuka seperti GPT-J) dan output Twilio.
Untuk mendukung aplikasi ini, Mantium menyediakan akses yang komprehensif dan seragam ke tidak hanya model API dari penyedia AI seperti Open AI, Co:here, dan AI21, tetapi juga model open source yang canggih. Di Mantium, kami percaya bahwa siapa pun harus dapat membangun aplikasi AI modern yang mereka miliki, end-to-end, dan kami mendukung ini dengan menyediakan akses tanpa kode dan kode rendah ke model sumber terbuka yang dioptimalkan kinerja.
Misalnya, salah satu model sumber terbuka inti Mantium adalah GPT-J, model pemrosesan bahasa alami (NLP) canggih yang dikembangkan oleh Eleuther AI. Dengan 6 miliar parameter, GPT-J adalah salah satu model pembuatan teks sumber terbuka terbesar dan berkinerja terbaik. Pengguna Mantium dapat mengintegrasikan GPT-J ke dalam aplikasi AI mereka melalui AI Builder Mantium. Dalam kasus GPT-J, ini melibatkan penentuan a cepat (representasi bahasa alami tentang apa yang harus dilakukan model) dan mengonfigurasi beberapa parameter opsional.
Misalnya, tangkapan layar berikut menunjukkan demonstrasi singkat dari permintaan analisis sentimen yang menghasilkan penjelasan dan prediksi sentimen. Dalam contoh ini, penulis menulis bahwa "makanannya luar biasa" dan "pelayanannya luar biasa". Oleh karena itu, teks ini mengungkapkan sentimen positif.
Namun, satu tantangan dengan model sumber terbuka adalah model tersebut jarang dirancang untuk kinerja tingkat produksi. Dalam kasus model besar seperti GPT-J, ini dapat membuat penerapan produksi menjadi tidak praktis dan bahkan tidak layak, tergantung pada kasus penggunaan.
Untuk memastikan bahwa pengguna kami memiliki akses ke kinerja terbaik di kelasnya, kami selalu mencari cara untuk mengurangi latensi model inti kami. Dalam posting ini, kami menjelaskan hasil eksperimen pengoptimalan inferensi di mana kami menggunakan mesin inferensi DeepSpeed untuk meningkatkan kecepatan inferensi GPT-J sekitar 116%. Kami juga menjelaskan bagaimana kami telah menerapkan implementasi Hugging Face Transformers dari GPT-J dengan DeepSpeed di Amazon SageMaker titik akhir inferensi.
Ikhtisar model GPT-J
GPT-J adalah model bahasa generative pretrained (GPT) dan, dalam hal arsitekturnya, ini sebanding dengan model bahasa besar, pribadi, dan populer seperti Open AI's GPT-3. Seperti disebutkan sebelumnya, ini terdiri dari sekitar 6 miliar parameter dan 28 lapisan, yang terdiri dari blok feedforward dan blok self-attention. Saat pertama kali dirilis, GPT-J adalah salah satu model bahasa besar pertama yang digunakan penyematan putar, strategi encoding posisi baru yang menyatukan encoder posisi absolut dan relatif. Ini juga menggunakan strategi paralelisasi inovatif di mana lapisan padat dan umpan maju digabungkan dalam satu lapisan, yang meminimalkan overhead komunikasi.
Meskipun GPT-J mungkin tidak cukup memenuhi syarat sebagai besar menurut standar saat ini—model besar biasanya terdiri dari lebih dari 100 miliar parameter—ini masih memiliki performa yang mengesankan, dan dengan beberapa rekayasa cepat atau penyesuaian minimal, Anda dapat menggunakannya untuk memecahkan banyak masalah. Selain itu, ukurannya yang relatif sederhana berarti Anda dapat menerapkannya lebih cepat dan dengan biaya yang jauh lebih rendah daripada model yang lebih besar.
Konon, GPT-J masih cukup besar. Misalnya, melatih GPT-J di FP32 dengan pembaruan bobot penuh dan pengoptimal Adam memerlukan memori lebih dari 200 GB: 24 GB untuk parameter model, 24 GB untuk gradien, 24 GB untuk gradien kuadrat Adam, 24 GB untuk status pengoptimal, dan persyaratan memori tambahan untuk memuat kumpulan pelatihan dan menyimpan aktivasi. Tentu saja, pelatihan di FP16 mengurangi kebutuhan memori ini hampir setengahnya, tetapi jejak memori lebih dari 100 GB masih memerlukan strategi pelatihan yang inovatif. Misalnya, bekerja sama dengan SageMaker, tim NLP Mantium mengembangkan alur kerja untuk pelatihan (penyetelan halus) GPT-J menggunakan pustaka paralel model terdistribusi SageMaker.
Sebaliknya, menyajikan GPT-J untuk inferensi memiliki persyaratan memori yang jauh lebih rendah—dalam FP16, bobot model menempati kurang dari 13 GB, yang berarti inferensi dapat dengan mudah dilakukan pada satu GPU 16 GB. Namun, inferensi dengan implementasi GPT-J yang out-of-the-box, seperti Hugging Face Transformers implementasi yang kita gunakan, relatif lambat. Untuk mendukung kasus penggunaan yang memerlukan pembuatan teks yang sangat responsif, kami berfokus pada pengurangan latensi inferensi GPT-J.
Tantangan latensi respons GPT-J
Latensi respons adalah hambatan utama bagi trafo pra-pelatihan generatif (GPT) seperti GPT-J yang mendukung pembuatan teks modern. Model GPT menghasilkan teks melalui urutan langkah-langkah inferensi. Pada setiap langkah inferensi, model diberikan teks sebagai input, dan, tergantung pada input ini, model tersebut mengambil sampel kata dari kosakatanya untuk ditambahkan ke teks. Misalnya, dengan urutan token “Saya membutuhkan payung karena ini”, kemungkinan besar token berikutnya adalah “hujan”. Namun, itu juga bisa menjadi "cerah" atau "terikat", yang bisa menjadi langkah pertama menuju urutan teks seperti "Saya butuh payung karena akan mulai hujan."
Skenario seperti ini menimbulkan beberapa tantangan menarik untuk menerapkan model GPT karena kasus penggunaan dunia nyata mungkin melibatkan puluhan, ratusan, atau bahkan ribuan langkah inferensi. Misalnya, menghasilkan respons 1,000 token membutuhkan 1,000 langkah inferensi! Oleh karena itu, meskipun model mungkin menawarkan kecepatan inferensi yang tampaknya cukup cepat dalam isolasi, latensi mudah mencapai tingkat yang tidak dapat dipertahankan saat teks panjang dihasilkan. Kami mengamati latensi rata-rata 280 milidetik per langkah inferensi pada GPU V100. Ini mungkin tampak cepat untuk model parameter 6.7 miliar, tetapi dengan latensi seperti itu, dibutuhkan sekitar 30 detik untuk menghasilkan respons 500 token, yang tidak ideal dari perspektif pengalaman pengguna.
Mengoptimalkan kecepatan inferensi dengan Inferensi DeepSpeed
Kecepatan Dalam adalah perpustakaan pengoptimalan pembelajaran dalam sumber terbuka yang dikembangkan oleh Microsoft. Meskipun utamanya berfokus pada pengoptimalan pelatihan model besar, DeepSpeed juga menyediakan kerangka kerja pengoptimalan inferensi yang mendukung serangkaian model tertentu, termasuk BERT, Megatron, GPT-Neo, GPT2, dan GPT-J. DeepSpeed Inference memfasilitasi inferensi kinerja tinggi dengan arsitektur besar berbasis Transformer melalui kombinasi paralelisme model, kernel CUDA yang dioptimalkan inferensi, dan kuantisasi.
Untuk meningkatkan kecepatan inferensi dengan GPT-J, kami menggunakan mesin inferensi DeepSpeed untuk menyuntikkan kernel CUDA yang dioptimalkan ke dalam implementasi Hugging Face Transformers GPT-J.
Untuk mengevaluasi manfaat kecepatan mesin inferensi DeepSpeed, kami melakukan serangkaian uji latensi di mana kami mengatur waktu GPT-J dalam berbagai konfigurasi. Secara khusus, kami memvariasikan apakah DeepSpeed digunakan atau tidak, perangkat keras, panjang urutan output, dan panjang urutan input. Kami fokus pada panjang urutan output dan input, karena keduanya memengaruhi kecepatan inferensi. Untuk menghasilkan urutan keluaran 50 token, model harus melakukan 50 langkah inferensi. Selanjutnya, waktu yang diperlukan untuk melakukan langkah inferensi tergantung pada ukuran urutan input—input yang lebih besar memerlukan lebih banyak waktu pemrosesan. Meskipun pengaruh ukuran urutan keluaran jauh lebih besar daripada pengaruh ukuran urutan masukan, kedua faktor tersebut tetap perlu diperhitungkan.
Dalam percobaan kami, kami menggunakan desain berikut:
- Mesin inferensi DeepSpeed – Hidup, mati
- Perangkat keras – T4 (ml.g4dn.2xbesar), V100 (ml.p3.2xbesar)
- Panjang urutan masukan – 50, 200, 500, 1000
- Panjang urutan keluaran – 50, 100, 150, 200
Secara total, desain ini memiliki 64 kombinasi dari keempat faktor ini, dan untuk setiap kombinasi, kami menjalankan 20 uji latensi. Setiap pengujian dijalankan pada titik akhir inferensi SageMaker yang telah diinisialisasi sebelumnya, memastikan bahwa pengujian latensi kami mencerminkan waktu produksi, termasuk pertukaran API dan prapemrosesan.
Pengujian kami menunjukkan bahwa mesin inferensi GPT-J DeepSpeed jauh lebih cepat daripada implementasi dasar Hugging Face Transformers PyTorch. Gambar berikut mengilustrasikan rata-rata latensi pembuatan teks untuk GPT-J dengan dan tanpa akselerasi DeepSpeed pada titik akhir inferensi SageMaker ml.g4dn.2xlarge dan ml.p3.2xlarge.
Pada instans ml.g4dn.2xlarge, yang dilengkapi dengan GPU NVIDIA T16 4 GB, kami mengamati pengurangan latensi rata-rata sekitar 24% [Standard Deviation (SD) = 0.05]. Ini berhubungan dengan peningkatan dari rata-rata 12.5 (SD = 0.91) token per detik menjadi rata-rata 16.5 (SD = 2.13) token per detik. Khususnya, efek akselerasi DeepSpeed bahkan lebih kuat pada instans ml.p3.2xlarge, yang dilengkapi dengan GPU NVIDIA V100. Pada perangkat keras itu, kami mengamati pengurangan latensi rata-rata sebesar 53% (SD = 07). Dalam hal token per detik, ini terkait dengan peningkatan dari rata-rata 21.9 (SD = 1.97) token per detik menjadi rata-rata 47.5 (SD = 5.8) token per detik.
Kami juga mengamati bahwa akselerasi yang ditawarkan oleh DeepSpeed sedikit melemah pada kedua konfigurasi perangkat keras seiring dengan bertambahnya ukuran urutan input. Namun, di semua kondisi, inferensi dengan pengoptimalan GPT-J DeepSpeed masih jauh lebih cepat daripada baseline. Misalnya, pada instans g4dn, pengurangan latensi maksimum dan minimum masing-masing adalah 31% (ukuran urutan input = 50) dan 15% (ukuran urutan input = 1000). Dan pada instans p3, pengurangan latensi maksimum dan minimum masing-masing adalah 62% (ukuran urutan input = 50) dan 40% (ukuran urutan input = 1000).
Menerapkan GPT-J dengan DeepSpeed pada titik akhir inferensi SageMaker
Selain meningkatkan kecepatan pembuatan teks secara dramatis untuk GPT-J, mesin inferensi DeepSpeed mudah diintegrasikan ke dalam titik akhir inferensi SageMaker. Sebelum menambahkan DeepSpeed ke tumpukan inferensi kami, titik akhir kami berjalan pada gambar Docker khusus berdasarkan gambar PyTorch resmi. SageMaker membuatnya sangat mudah untuk menerapkan titik akhir inferensi khusus, dan mengintegrasikan DeepSpeed semudah memasukkan ketergantungan dan menulis beberapa baris kode. Panduan sumber terbuka untuk alur kerja penerapan untuk menerapkan GPT-J dengan DeepSpeed tersedia di GitHub.
Kesimpulan
Mantium didedikasikan untuk inovasi terdepan sehingga setiap orang dapat dengan cepat membangun dengan AI. Dari otomatisasi proses yang digerakkan oleh AI hingga pengaturan keamanan dan kepatuhan yang ketat, platform lengkap kami menyediakan semua alat yang diperlukan untuk mengembangkan dan mengelola aplikasi AI yang andal dan bertanggung jawab dalam skala besar dan menurunkan hambatan masuk. SageMaker membantu perusahaan seperti Mantium memasuki pasar dengan cepat.
Untuk mempelajari bagaimana Mantium dapat membantu Anda membangun alur kerja kompleks berbasis AI untuk organisasi Anda, kunjungi www.mantiumai.com.
Tentang penulis
Joe Hoover adalah Ilmuwan Terapan Senior di tim R&D AI Mantium. Dia bersemangat mengembangkan model, metode, dan infrastruktur yang membantu orang memecahkan masalah dunia nyata dengan sistem NLP mutakhir. Di waktu luangnya, ia menikmati backpacking, berkebun, memasak, dan berkumpul dengan keluarganya.
Dhawal Patel adalah Arsitek Pembelajaran Mesin Utama di AWS. Dia telah bekerja dengan organisasi mulai dari perusahaan besar hingga perusahaan rintisan menengah pada masalah yang terkait dengan komputasi terdistribusi, dan Kecerdasan Buatan. Dia berfokus pada Deep learning termasuk domain NLP dan Computer Vision. Dia membantu pelanggan mencapai inferensi model kinerja tinggi di SageMaker.
Sunil Padmanabhan adalah Arsitek Solusi Startup di AWS. Sebagai mantan pendiri dan CTO startup, dia sangat menyukai pembelajaran mesin dan berfokus membantu startup memanfaatkan AI/ML untuk hasil bisnis mereka dan merancang serta menerapkan solusi ML/AI dalam skala besar.
- Coinsmart. Pertukaran Bitcoin dan Crypto Terbaik Eropa.
- Platoblockchain. Intelijen Metaverse Web3. Pengetahuan Diperkuat. AKSES GRATIS.
- CryptoHawk. Radar Altcoin. Uji Coba Gratis.
- Sumber: https://aws.amazon.com/blogs/machine-learning/how-mantium-achieves-low-latency-gpt-j-inference-with-deepspeed-on-amazon-sagemaker/
- "
- 000
- 100
- 28
- 7
- 9
- a
- Tentang Kami
- Mutlak
- mengakses
- demikian
- Akun
- Mencapai
- di seluruh
- tambahan
- Tambahan
- mempengaruhi
- AI
- Semua
- Meskipun
- selalu
- Amazon
- analisis
- siapapun
- api
- Lebah
- aplikasi
- aplikasi
- terapan
- pendekatan
- sekitar
- aplikasi
- arsitektur
- buatan
- kecerdasan buatan
- secara otomatis
- Otomatisasi
- tersedia
- rata-rata
- AWS
- pembatas
- Dasar
- karena
- sebelum
- Manfaat
- Milyar
- Memblokir
- membangun
- pembangun
- Bangunan
- bisnis
- bisnis
- kasus
- menantang
- tantangan
- awan
- Platform Cloud
- kode
- kolaborasi
- kombinasi
- kombinasi
- bergabung
- Komunikasi
- Perusahaan
- lengkap
- kompleks
- pemenuhan
- luas
- komputer
- komputasi
- Kondisi
- Core
- bisa
- CTO
- adat
- pelanggan
- canggih
- dedicated
- mendalam
- memberikan
- mendemonstrasikan
- Tergantung
- tergantung
- menyebarkan
- dikerahkan
- penggelaran
- penyebaran
- menggambarkan
- Mendesain
- dirancang
- mengembangkan
- dikembangkan
- berkembang
- Pengembangan
- didistribusikan
- komputasi terdistribusi
- Buruh pelabuhan
- domain
- secara dramatis
- mudah
- efek
- mempekerjakan
- memungkinkan
- ujung ke ujung
- Titik akhir
- Mesin
- Teknik
- Insinyur
- memastikan
- perusahaan
- lengkap
- mengevaluasi
- semua orang
- contoh
- Bursa
- pengalaman
- eksperimen
- luas
- luar biasa
- Menghadapi
- faktor
- keluarga
- FAST
- lebih cepat
- Fitur
- Fitur
- Angka
- Pertama
- terfokus
- berfokus
- berikut
- Tapak
- pendiri
- Kerangka
- dari
- penuh
- Selanjutnya
- menghasilkan
- menghasilkan
- generasi
- generatif
- Aksi
- pemerintahan
- GPU
- Pertumbuhan
- membimbing
- Perangkat keras
- membantu
- membantu
- membantu
- di sini
- High
- sangat
- Seterpercayaapakah Olymp Trade? Kesimpulan
- Namun
- HTTPS
- Ratusan
- ideal
- gambar
- implementasi
- Termasuk
- Meningkatkan
- meningkatkan
- Innovation
- inovatif
- memasukkan
- contoh
- mengintegrasikan
- integrasi
- Intelijen
- isolasi
- IT
- bahasa
- besar
- lebih besar
- terbesar
- lapisan
- terkemuka
- BELAJAR
- pengetahuan
- Tingkat
- adalah ide yang bagus
- Leverage
- Perpustakaan
- baris
- pemuatan
- Panjang
- mencari
- mesin
- Mesin belajar
- membuat
- MEMBUAT
- mengelola
- pelaksana
- Pasar
- cara
- Memori
- metode
- Microsoft
- mungkin
- minimum
- ML
- model
- model
- pemantauan
- bulan
- lebih
- Alam
- perlu
- Nvidia
- hambatan
- menawarkan
- ditawarkan
- resmi
- Buka
- open source
- Operasi
- optimasi
- dioptimalkan
- mengoptimalkan
- organisasi
- organisasi
- sendiri
- bergairah
- Konsultan Ahli
- prestasi
- perspektif
- Platform
- Kebijakan
- kebijaksanaan
- Populer
- posisi
- positif
- mungkin
- kekuasaan
- Prediksi
- cukup
- Utama
- swasta
- masalah
- proses
- Otomatisasi proses
- proses
- pengolahan
- Produksi
- pemberi
- penyedia
- menyediakan
- menyediakan
- memenuhi syarat
- segera
- R & D
- menaikkan
- mulai
- mencapai
- mengurangi
- mencerminkan
- dirilis
- Pers
- perwakilan
- membutuhkan
- wajib
- Persyaratan
- membutuhkan
- tanggapan
- tanggung jawab
- Hasil
- Run
- berjalan
- Safety/keselamatan
- Tersebut
- Skala
- ilmuwan
- detik
- seleksi
- sentimen
- Seri
- porsi
- set
- Sederhana
- tunggal
- Ukuran
- So
- Perangkat lunak
- Solusi
- MEMECAHKAN
- beberapa
- mutakhir
- Secara khusus
- kecepatan
- kecepatan
- Pengeluaran
- tumpukan
- standar
- awal
- startup
- Startups
- state-of-the-art
- Negara
- Masih
- strategi
- Penyelarasan
- lebih kuat
- mendukung
- Mendukung
- sistem
- tim
- Teknis
- istilah
- uji
- tes
- Grafik
- karena itu
- ribuan
- Melalui
- waktu
- kali
- hari ini
- bersama
- token
- Token
- alat
- secara tradisional
- Pelatihan
- khas
- ui
- bawah
- Pembaruan
- menggunakan
- Pengguna
- berbagai
- penglihatan
- cara
- jaringan
- Apa
- Roda
- apakah
- tanpa
- bekerja
- Alur kerja
- penulisan
- Anda