Tutorial Qwen (Alibaba Cloud): Pengenalan dan Fine-Tuning
Qwen adalah keluarga model bahasa besar dan multimodal yang dikembangkan oleh Alibaba Cloud, dirancang untuk berbagai tugas seperti pembuatan teks, pemahaman gambar, dan percakapan.
Bagaimana jika siapa pun bisa menggunakan kecerdasan buatan tingkat lanjut, bukan hanya perusahaan teknologi besar? Inilah gagasan besar di balik Qwen, sebuah keluarga model AI baru yang dibuat oleh Alibaba Cloud.
Qwen (singkatan dari Tongyi Qianwen) berupaya membuat model AI mudah diakses oleh semua orang dengan seperangkat alat AI buatan Alibaba Cloud. Qwen melakukan ini dengan menawarkan:
Beragam model AI siap pakai
Model yang sudah dilatih dan mudah diadaptasi
Alat yang memudahkan penambahan AI ke proyek
Dengan Qwen, Anda tidak membutuhkan sumber daya atau pengetahuan khusus sebanyak sebelumnya untuk menggunakan AI tingkat lanjut.
Dalam tutorial ini, kita akan:
Mengeksplorasi fitur utama model Qwen, termasuk kemampuan multibahasa dan pemrosesan multimodal.
Memandu Anda melalui proses mengakses dan memasang model Qwen.
Mendemonstrasikan contoh praktis penggunaan Qwen untuk tugas seperti pembuatan teks dan tanya jawab.
Mengeksplorasi fine-tuning model Qwen pada dataset kustom untuk aplikasi khusus.
Membahas implikasi yang lebih luas dan prospek masa depan Qwen.
Apa itu Qwen?
Qwen adalah rangkaian model bertenaga yang dilatih pada dataset multibahasa dan multimodal skala besar. Dikembangkan oleh Alibaba Cloud, Qwen mendorong AI ke level baru, membuatnya lebih cerdas dan lebih berguna untuk pemrosesan bahasa alami, visi komputer, dan pemahaman audio.
Model-model ini mampu melakukan berbagai macam tugas, termasuk:
Model Qwen dilatih awal pada berbagai sumber data dan disempurnakan melalui pelatihan lanjutan pada data berkualitas tinggi.
Keluarga Model
Keluarga Qwen terdiri dari berbagai model khusus yang dirancang untuk kebutuhan dan kasus penggunaan yang berbeda.
Keluarga model Qwen dirancang untuk fleksibilitas dan kemudahan kustomisasi, menawarkan fine-tuning untuk aplikasi atau industri tertentu. Fleksibilitas ini, dikombinasikan dengan kapabilitasnya yang kuat, menjadikan Qwen sumber daya yang sangat berharga untuk teknologi AI di berbagai bidang.
Fitur Utama Qwen
Keluarga model Qwen menyediakan alat yang kuat dan serbaguna untuk berbagai aplikasi AI. Mari kita telusuri fitur-fitur kunci yang membedakan Qwen:
Dukungan multibahasa
Qwen unggul dalam pemahaman dan generasi multibahasa, dengan kemampuan kuat dalam bahasa Inggris dan Mandarin, serta dukungan untuk banyak bahasa lain. Model Qwen2 terbaru telah memperluas cakupan bahasanya mencakup 27 bahasa tambahan, meliputi kawasan seperti Eropa Barat, Eropa Timur dan Tengah, Timur Tengah, Asia Timur, dan Asia Selatan.
Dukungan bahasa yang luas ini memungkinkan Qwen memfasilitasi komunikasi lintas budaya, melakukan terjemahan berkualitas tinggi, menangani skenario alih kode, dan melayani aplikasi global dengan pembuatan konten terlokalisasi.
Pembuatan teks
Model Qwen sangat mahir dalam berbagai tugas pembuatan teks. Beberapa aplikasi utama meliputi:
Penulisan artikel: Menghasilkan konten panjang yang koheren dan relevan secara kontekstual
Perangkuman: Merangkum teks panjang menjadi ringkasan yang padat
Komposisi puisi: Mencipta bait dengan perhatian pada ritme dan gaya
Pembuatan kode: Menulis kode fungsional dalam berbagai bahasa pemrograman
Kemampuan model untuk mempertahankan konteks pada urutan panjang (hingga 32.768 token) memungkinkan pembuatan keluaran teks yang panjang dan koheren.
Tanya jawab
Qwen juga unggul dalam tanya jawab faktual maupun terbuka. Fitur ini memungkinkan:
Pengambilan informasi: Menarik fakta relevan dengan cepat dari basis pengetahuan besar
Penalaran analitis: Memberikan respons yang matang untuk pertanyaan terbuka yang kompleks
Jawaban khusus tugas: Menyesuaikan respons untuk berbagai domain, dari pengetahuan umum hingga bidang khusus
Pemahaman gambar
Dengan model Qwen-VL, keluarga Qwen memperluas kemampuannya ke tugas multimodal yang melibatkan gambar. Fitur utama meliputi:
Pemberian keterangan gambar: Menghasilkan teks deskriptif untuk konten visual
Tanya jawab visual: Menjawab pertanyaan tentang isi gambar
Pemahaman dokumen: Mengekstrak informasi dari gambar yang berisi teks dan grafik
Pemrosesan multi-gambar: Menangani percakapan yang melibatkan banyak gambar
Dukungan gambar beresolusi tinggi: Memproses gambar hingga 448x448 piksel (dan resolusi lebih tinggi dengan Qwen-VL-Plus dan Qwen-VL-Max)
Sumber terbuka
Salah satu fitur paling signifikan dari Qwen adalah sifatnya yang open-source, yang membawa sejumlah manfaat bagi komunitas AI:
Aksesibilitas: Akses gratis dan penggunaan model
Transparansi: Arsitektur model dan proses pelatihan terbuka untuk ditelaah dan ditingkatkan
Kustomisasi: Pengguna dapat melakukan fine-tuning model untuk aplikasi atau domain tertentu
Pengembangan berbasis komunitas: Mendorong kolaborasi dan kemajuan cepat teknologi AI
Pertimbangan etika: Memungkinkan diskusi yang lebih luas dan implementasi praktik AI yang bertanggung jawab
Pendekatan open-source telah menghasilkan dukungan luas dari proyek dan alat pihak ketiga:
Qwen: Akses dan Instalasi
Sekarang setelah Anda memahami Qwen dan fitur utamanya, saatnya mempelajari cara menggunakannya secara praktis!
Mengakses model Qwen
Model Qwen tersedia di beberapa platform, sehingga sangat mudah diakses untuk berbagai kasus penggunaan.
Langkah instalasi dan memulai
Di bagian ini, saya akan memandu Anda menggunakan model bahasa Qwen-7B melalui Hugging Face. Kita akan membahas penyiapan lingkungan, masuk ke Hugging Face, dan menjalankan model.
Prasyarat
Python 3.7 atau yang lebih baru
pip (penginstal paket Python)
Langkah 1: Pasang pustaka yang diperlukan
Pertama, pasang pustaka yang diperlukan:
pip install transformers torch huggingface_hubDidukung oleh
Langkah 2: Masuk ke Hugging Face
Untuk mengakses model Qwen-7B, Anda perlu masuk ke akun Hugging Face. Ini diperlukan karena beberapa model mungkin memiliki pembatasan penggunaan, tetapi Anda tetap dapat mengakses model privat milik Anda sendiri atau organisasi Anda. Ini membantu memantau penggunaan API dan menerapkan pembatasan laju jika diperlukan.
Sekarang, kita akan membuat file Python atau file Jupyter Notebook tempat kita mulai menulis kode.
Pertama, kita akan mengimpor dua kelas dari pustaka transformers:
AutoModelForCausalLM: Kelas ini secara otomatis memilih arsitektur model yang sesuai berdasarkan nama model yang Anda berikan.
AutoTokenizer: Kelas ini memuat tokenizer yang tepat untuk model yang Anda gunakan.
from transformers import AutoModelForCausalLM, AutoTokenizerDidukung oleh
Langkah 4: Tentukan nama model
Sekarang, kita menentukan model mana yang ingin digunakan. "Qwen/Qwen-7B" mengacu pada versi 7 miliar parameter dari model Qwen yang dihosting di Hugging Face model hub, tetapi silakan gunakan model Qwen lainnya.
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)Didukung oleh
Baris ini memuat tokenizer yang terkait dengan model Qwen-7B. Parameter trust_remote_code=True diperlukan karena model Qwen mungkin membutuhkan eksekusi kode kustom saat pemuatan.
Langkah 6: Muat model
Langkah berikutnya adalah memuat model.
model = AutoModelForCausalLM.from_pretrained(model_name, trust_remote_code=True)Didukung oleh
Ini memuat model Qwen-7B yang sesungguhnya. Sekali lagi, kita menggunakan trust_remote_code=True untuk mengizinkan dijalankannya kode kustom yang terkait dengan model.
Langkah 7: Uji contoh
Setelah kita memuat model, kita dapat mengujinya dengan menghasilkan teks berdasarkan masukan tertentu.
input_text ="Once upon a time"
inputs = tokenizer(input_text, return_tensors="pt")Didukung oleh
Di sini, kita menyiapkan masukan untuk model:
Kita mendefinisikan string input_text sebagai prompt.
Kita menggunakan tokenizer untuk mengonversi teks ini ke format yang dapat dipahami model. Argumen return_tensors="pt" menentukan bahwa keluaran yang diinginkan adalah tensor PyTorch.
Sekarang, kita menghasilkan teks:
outputs = model.generate(**inputs, max_new_tokens=50)
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)Didukung oleh
Baris kode pertama memberi tahu model untuk menghasilkan teks:
Kita meneruskan inputs yang sudah ditokenisasi ke metode generate.
**inputs membuka kamus yang dikembalikan oleh tokenizer.
max_new_tokens=50 membatasi generasi hingga maksimal 50 token baru.
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)Didukung oleh
Langkah ini mengonversi keluaran model (dalam format ID token) kembali menjadi teks yang dapat dibaca:
outputs memilih urutan pertama dan satu-satunya (dalam kasus ini) yang dihasilkan.
skip_special_tokens=True memberi tahu decoder untuk mengabaikan token khusus seperti padding atau token akhir urutan.
Terakhir, kita mencetak teks yang dihasilkan untuk melihat hasilnya.
Once upon a time, in a far-off kingdom, there lived a young princess named Lily.
She was known throughout the land for her kindness and beauty. Despite living in a grand castle with everything she could ever want, Lily felt something was missing in her life. She longed for adventure and to see the world beyond the castle walls.
One day, while walking in the royal gardens, she stumbled upon a hidden door overgrown with vines. Curiosity got the better of her, and she decided to see where it led. As she pushed open the creaky door, she found herself stepping into a magical forest filled with talking animals and glowing flowers.
Little did Lily know that this discovery would be the beginning of an extraordinary journey that would change her life forever…Didukung oleh
Catatan dan kiat
Berikut beberapa catatan dan kiat yang berguna:
Model Qwen-7B berukuran besar (7 miliar parameter). Pastikan sistem Anda memiliki RAM yang memadai dan sebaiknya GPU untuk pemrosesan yang lebih cepat.
Jika Anda mengalami masalah memori, pertimbangkan untuk menggunakan model yang lebih kecil.
Parameter trust_remote_code=True diperlukan untuk model Qwen karena mereka membutuhkan kode kustom agar berjalan dengan benar.
Selalu tinjau lisensi model dan pembatasan penggunaan pada halaman Hugging Face-nya.
Anda telah berhasil menyiapkan dan menjalankan model Qwen! Silakan bereksperimen dengan berbagai teks masukan dan jelajahi kapabilitas model.
Qwen: Deployment
Model Qwen dapat dideploy menggunakan Platform for AI (PAI) dan Elastic AI Serving (EAS) dari Alibaba Cloud. Mari lihat bagaimana Anda dapat mendeploy model Qwen hanya dalam beberapa klik:
Qwen: Contoh Penggunaan
Mari kita jelajahi beberapa contoh praktis penggunaan Qwen untuk tugas pembuatan teks dan tanya jawab.
Pembuatan teks
Qwen sangat andal menghasilkan teks yang koheren dan relevan secara kontekstual berdasarkan prompt yang diberikan. Mari lihat beberapa contoh:
Pelengkapan teks dasar
prompt ="The future of artificial intelligence is"
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(inputs, max_new_tokens=50)
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)print(generated_text)Didukung oleh
The future of artificial intelligence is bright and full of potential. As technology continues to advance, AI will play an increasingly important role in various aspects of our lives. From healthcare and education to transportation and entertainment, AI will revolutionize the way we live and work. However, it's crucial to ensure that AI is developed and used responsibly, with proper ethical considerations and safeguards in place.Didukung oleh
Penulisan kreatif
prompt ="Write a short poem about the changing seasons:"
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(inputs, max_new_tokens=100, temperature=0.7)
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)print(generated_text)Didukung oleh
Leaves of gold and crimson fall,
As autumn's whisper fills the air.
Winter's chill soon follows all,
Blanketing the earth with care.
Spring awakens with gentle rain,
Coaxing buds to bloom anew.
Summer's warmth returns again,
Painting skies in vibrant blue.
Nature's cycle, ever turning,
Each season brings its own delight.
In this dance, we're always learning,
Of life's beauty, day and night.Didukung oleh
Pembuatan kode
prompt ="Write a Python function to calculate the Fibonacci sequence:"
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(inputs, max_new_tokens=200, temperature=0.2)
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)print(generated_text)Didukung oleh
def fibonacci(n):
"""
Calculate the Fibonacci sequence up to the nth term.
Args:
n (int): The number of terms in the sequence to calculate. Returns:
list: A list containing the Fibonacci sequence up to the nth term.
"""
if n <= 0:
return []
elif n == 1:
return [0]
elif n == 2:
return [0, 1] fib_sequence = [0, 1]
for i in range(2, n):
fib_sequence.append(fib_sequence[i-1] + fib_sequence[i-2]) return fib_sequence# Example usage:
print(fibonacci(10)) Didukung oleh
Qwen dapat digunakan untuk menjawab berbagai pertanyaan, dari yang faktual hingga yang lebih terbuka atau analitis. Berikut beberapa contoh:
Pertanyaan faktual
question ="What is the capital of France?"
inputs = tokenizer(question, return_tensors="pt")
outputs = model.generate(inputs, max_new_tokens=50)
answer = tokenizer.decode(outputs[0], skip_special_tokens=True)print(f"Q: {question}\nA: {answer}")Didukung oleh
Q: What is the capital of France?
A: The capital of France is Paris. Paris is the largest city in France and serves as the country's political, economic, and cultural center. It is known for its iconic landmarks such as the Eiffel Tower, the Louvre Museum, and Notre-Dame Cathedral.Didukung oleh
Pertanyaan terbuka
question ="What are the potential ethical concerns surrounding artificial intelligence?"
inputs = tokenizer(question, return_tensors="pt")
outputs = model.generate(inputs, max_new_tokens=200, temperature=0.7)
answer = tokenizer.decode(outputs[0], skip_special_tokens=True)print(f"Q: {question}\nA: {answer}")Didukung oleh
Q: What are the potential ethical concerns surrounding artificial intelligence?
A: There are several potential ethical concerns surrounding artificial intelligence (AI):
1. Privacy and data protection: AI systems often require large amounts of data, raising concerns about personal information collection and use.
2. Bias and discrimination: AI algorithms can perpetuate or amplify existing biases in training data, leading to unfair treatment of certain groups.
3. Job displacement: As AI becomes more advanced, it may replace human workers in various industries, potentially leading to unemployment and economic inequality.
4. Accountability and transparency: It can be challenging to understand how AI systems make decisions, making it difficult to assign responsibility for errors or harmful outcomes.
5. Autonomous weapons: The development of AI-powered weapons raises concerns about the ethics of warfare and the potential for uncontrolled escalation.
6. Superintelligence: There are concerns about the potential development of AI systems that surpass human intelligence, potentially posing existential risks to humanity.
7. Human autonomy: As AI systems become more integrated into our lives, there are concerns about the erosion of human decision-making and free will.
8. Security risks: AI systems can be vulnerable to hacking or manipulation, potentially leading to severe consequences in critical applications.
9. Social manipulation: AI-powered systems could be used to influence human behavior on a large scale, raising concerns about democracy and free will.
10. Ethical decision-making: As AI systems are tasked with making complex decisions, there are concerns about their ability to navigate ethical dilemmas appropriately.
Addressing these concerns requires ongoing dialogue between technologists, ethicists, policymakers, and the public to ensure responsible development and deployment of AI technologies.Didukung oleh
Contoh-contoh ini menunjukkan bagaimana Qwen dapat menangani berbagai jenis tugas pembuatan teks dan tanya jawab.
Anda dapat menyesuaikan parameter seperti max_new_tokens dan temperature untuk mengendalikan panjang dan kreativitas respons yang dihasilkan agar sesuai dengan kebutuhan spesifik Anda.
Fine-tuning Model Qwen
Fine-tuning model Qwen memungkinkan Anda mengadaptasinya untuk tugas tertentu, yang berpotensi meningkatkan kinerjanya untuk kasus penggunaan Anda. Proses ini melibatkan pelatihan model pralatih pada dataset kustom, sehingga model dapat mempelajari pengetahuan khusus tugas sambil mempertahankan kemampuan pemahaman bahasanya yang umum.
Di bagian ini, kita akan melalui proses fine-tuning model Qwen-7B pada dataset kustom. Kita akan menggunakan teknik fine-tuning yang efisien agar proses ini tetap terjangkau, bahkan untuk model besar. Dalam contoh kita, kita melakukan fine-tuning untuk meningkatkan kinerja pada tugas penerjemahan dan menjawab pertanyaan faktual. Proses ini memungkinkan model belajar dari dataset kustom sambil mempertahankan kemampuan pemahaman bahasa umumnya.
Prasyarat
Sebelum mulai, pastikan Anda telah memasang hal berikut:
pip install datasets torch accelerate peftDidukung oleh
Langkah 1: Siapkan dataset Anda
Pertama, siapkan dataset Anda dalam format JSON. Setiap entri harus memiliki kolom "prompt" dan "completion". Simpan sebagai custom_dataset.json. Kita akan menggunakan contoh berikut:
[
{
"prompt": "Translate to French: 'Hello, how are you?'",
"completion": "Bonjour, comment allez-vous?"
},
{
"prompt": "What is the capital of Spain?",
"completion": "The capital of Spain is Madrid."
}
]Didukung oleh
Langkah 2: Siapkan skrip fine-tuning
Sekarang kita menambahkan impor berikut:
import torch
from transformers import TrainingArguments, Trainer
from datasets import load_dataset
from peft import LoraConfig, get_peft_modelDidukung oleh
Langkah 3: Siapkan dataset
Selanjutnya, kita akan mendefinisikan fungsi untuk memproses dataset dan memuatnya menggunakan pustaka datasets dari Hugging Face:
Untuk membuat fine-tuning lebih efisien, kita akan menggunakan LoRA (Low-Rank Adaptation). Teknik ini memungkinkan kita melakukan fine-tuning model besar dengan lebih sedikit parameter:
lora_config = LoraConfig(
r=8,
lora_alpha=32,
target_modules=["q_proj","v_proj"],
lora_dropout=0.05,
bias="none",
task_type="CAUSAL_LM")
model = get_peft_model(model, lora_config)Didukung oleh
Langkah 5: Tentukan argumen pelatihan
Sekarang, kita akan menyiapkan argumen pelatihan yang mengendalikan berbagai aspek proses fine-tuning:
Dengan dataset dan argumen pelatihan yang sudah siap, kita sekarang dapat membuat objek Trainer dan memulai proses fine-tuning:
trainer = Trainer(
model=model,
args=training_args,
train_dataset=tokenized_dataset["train"],
eval_dataset=tokenized_dataset["test"],
tokenizer=tokenizer,)
trainer.train()Didukung oleh
Langkah 8: Simpan model yang telah di-fine-tune
Setelah fine-tuning selesai, kita akan menyimpan model agar dapat digunakan nanti:
trainer.save_model("./fine_tuned_qwen")Didukung oleh
Fine-tuning model Qwen-7B pada dataset kustom Anda akan meningkatkan kinerjanya pada tugas-tugas yang serupa dengan data pelatihan Anda. Dalam kasus ini, model seharusnya lebih baik dalam menerjemahkan bahasa Inggris ke Prancis dan menjawab pertanyaan faktual tentang ibu kota negara.
Menggunakan model yang telah di-fine-tune
Setelah fine-tuning, Anda dapat menggunakan model untuk inferensi:
fine_tuned_model = AutoModelForCausalLM.from_pretrained("./fine_tuned_qwen", trust_remote_code=True)
fine_tuned_tokenizer = AutoTokenizer.from_pretrained("./fine_tuned_qwen", trust_remote_code=True)defgenerate_response(prompt):
inputs = fine_tuned_tokenizer(prompt, return_tensors="pt").to(fine_tuned_model.device)
outputs = fine_tuned_model.generate(**inputs, max_new_tokens=50)return fine_tuned_tokenizer.decode(outputs[0], skip_special_tokens=True)# Example usage
prompt ="Translate to French: 'Good morning, have a nice day!'"
response = generate_response(prompt)print(f"Prompt: {prompt}\n Response: {response}")Didukung oleh
Prompt: Translate to French: 'Good morning, have a nice day!'
Response: Bonjour, passez une bonne journée !Didukung oleh
Kiat untuk fine-tuning yang efektif
Berikut beberapa kiat yang perlu dipertimbangkan untuk fine-tuning yang efektif:
Pastikan dataset kustom Anda berkualitas tinggi dan representatif untuk tugas target Anda.
Walau dataset yang lebih besar umumnya menghasilkan hasil yang lebih baik, beberapa ratus contoh pun dapat bermanfaat untuk tugas tertentu.
Eksperimen dengan laju pembelajaran, ukuran batch, dan jumlah epoch yang berbeda untuk mengoptimalkan performa.
Secara berkala evaluasi model Anda pada set validasi terpisah untuk mencegah overfitting.
Jika Anda bekerja dengan memori GPU terbatas, pertimbangkan menggunakan akumulasi gradien untuk mensimulasikan ukuran batch yang lebih besar.
Gunakan pelatihan presisi campuran untuk mempercepat proses fine-tuning dan mengurangi penggunaan memori.
Untuk tugas spesifik domain, pertimbangkan pretraining lanjutan pada data spesifik domain sebelum fine-tuning pada dataset khusus tugas Anda.
Fine-tuning Qwen pada dataset kustom Anda memungkinkan pembuatan model khusus yang unggul pada tugas spesifik Anda sambil mempertahankan pengetahuan dan kapabilitas luas dari model pralatih asli. Pendekatan ini memanfaatkan kekuatan model bahasa besar untuk aplikasi dan domain unik Anda.
Qwen: Prospek Masa Depan
Seiring Qwen terus berkembang, kita dapat mengantisipasi beberapa perkembangan menarik:
Iterasi Qwen di masa depan kemungkinan akan menawarkan pemahaman bahasa, generasi, dan pemrosesan multimodal yang lebih maju.
Riset berkelanjutan dapat menghasilkan model yang lebih efisien dengan kinerja tinggi namun membutuhkan komputasi lebih rendah.
Seiring komunitas AI terus mengeksplorasi dan bereksperimen dengan Qwen, kemungkinan kita akan melihat aplikasi baru di berbagai industri dan domain.
Kemajuan AI Etis: Sifat Qwen yang terbuka memungkinkan penelaahan dan kolaborasi yang lebih luas mengenai praktik AI yang etis, yang berpotensi menghasilkan sistem AI yang lebih bertanggung jawab dan adil.
Kesimpulan
Saat kita menutup eksplorasi tentang Qwen, jelas bahwa alat AI ini mewakili lompatan besar menuju AI yang mudah diakses, kuat, dan serbaguna. Qwen lebih dari sekadar rangkaian model AI yang bertenaga—ia mewakili visi untuk membuat AI tingkat lanjut dapat diakses dan dapat diadaptasi oleh semua orang. Dengan menyediakan alat-alat ini sebagai sumber terbuka, Alibaba Cloud mendorong inovasi dan kemajuan teknologi AI.
Jika Anda ingin mengikuti perkembangan terbaru di bidang AI, saya merekomendasikan artikel berikut:
Qwen menawarkan model dalam berbagai ukuran, termasuk 0,5B, 1,5B, 4B, 7B, 14B, 32B, 72B, dan 110B parameter.
Apakah model Qwen dapat menangani panjang konteks yang besar?⌄
Ya, model Qwen mendukung panjang konteks yang panjang. Misalnya, model Qwen 1.5 dari semua ukuran mendukung panjang konteks 32K token. Beberapa model seperti Qwen2-7B-Instruct dan Qwen2-72B-Instruct dapat menangani hingga 128K token.
Bagaimana tokenizer Qwen berbeda dari yang digunakan pada model bahasa lain?⌄
Qwen menggunakan tokenizer unik dengan kosakata besar lebih dari 150.000 token. Ini memungkinkan penanganan banyak bahasa dengan lebih baik dan berpotensi pemrosesan masukan teks yang lebih efisien.
Apa ketentuan lisensi untuk menggunakan model Qwen dalam aplikasi komersial?⌄
Ketentuan lisensi bervariasi tergantung ukuran model. Misalnya, Qwen-72B, Qwen-14B, dan Qwen-7B memerlukan pengisian formulir untuk penggunaan komersial, sedangkan Qwen-1.8B memiliki perjanjian lisensi riset. Pengguna harus memeriksa lisensi spesifik untuk model yang ingin digunakan.
Apa itu Qwen-Agent, dan bagaimana cara menggunakannya?⌄
Qwen-Agent adalah kerangka kerja untuk mengembangkan aplikasi LLM berbasis model Qwen. Ini memanfaatkan kemampuan model dalam mengikuti instruksi, penggunaan alat, perencanaan, dan memori untuk membuat agen AI untuk berbagai tugas.
Ana Rojo Echeburúa adalah spesialis AI dan data dengan gelar PhD di Bidang Matematika Terapan. Ia senang mengubah data menjadi wawasan yang dapat ditindaklanjuti dan memiliki pengalaman luas dalam memimpin tim teknis. Ana menikmati bekerja langsung dengan klien untuk menyelesaikan masalah bisnis mereka dan menciptakan solusi AI yang inovatif. Dikenal karena keterampilan pemecahan masalah dan komunikasi yang jelas, ia sangat antusias terhadap AI, terutama AI generatif. Ana berkomitmen pada pembelajaran berkelanjutan dan pengembangan AI yang etis, serta menyederhanakan masalah kompleks dan menjelaskan teknologi dengan cara yang mudah dipahami.
Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Pelajari cara membuat aplikasi yang didukung oleh kecerdasan buatan (AI) menggunakan alat pengembangan AI terbaru, termasuk OpenAI API, Hugging Face, dan LangChain.
Bagaimana jika siapa pun bisa menggunakan kecerdasan buatan tingkat lanjut, bukan hanya perusahaan teknologi besar? Inilah gagasan besar di balik Qwen, sebuah keluarga model AI baru yang dibuat oleh Alibaba Cloud.
Qwen (singkatan dari Tongyi Qianwen) berupaya membuat model AI mudah diakses oleh semua orang dengan seperangkat alat AI buatan Alibaba Cloud. Qwen melakukan ini dengan menawarkan:
Dengan Qwen, Anda tidak membutuhkan sumber daya atau pengetahuan khusus sebanyak sebelumnya untuk menggunakan AI tingkat lanjut.
Dalam tutorial ini, kita akan:
Apa itu Qwen?
Qwen adalah rangkaian model bertenaga yang dilatih pada dataset multibahasa dan multimodal skala besar. Dikembangkan oleh Alibaba Cloud, Qwen mendorong AI ke level baru, membuatnya lebih cerdas dan lebih berguna untuk pemrosesan bahasa alami, visi komputer, dan pemahaman audio.
Model-model ini mampu melakukan berbagai macam tugas, termasuk:
Model Qwen dilatih awal pada berbagai sumber data dan disempurnakan melalui pelatihan lanjutan pada data berkualitas tinggi.
Keluarga Model
Keluarga Qwen terdiri dari berbagai model khusus yang dirancang untuk kebutuhan dan kasus penggunaan yang berbeda.
Keluarga model Qwen dirancang untuk fleksibilitas dan kemudahan kustomisasi, menawarkan fine-tuning untuk aplikasi atau industri tertentu. Fleksibilitas ini, dikombinasikan dengan kapabilitasnya yang kuat, menjadikan Qwen sumber daya yang sangat berharga untuk teknologi AI di berbagai bidang.
Fitur Utama Qwen
Keluarga model Qwen menyediakan alat yang kuat dan serbaguna untuk berbagai aplikasi AI. Mari kita telusuri fitur-fitur kunci yang membedakan Qwen:
Dukungan multibahasa
Qwen unggul dalam pemahaman dan generasi multibahasa, dengan kemampuan kuat dalam bahasa Inggris dan Mandarin, serta dukungan untuk banyak bahasa lain. Model Qwen2 terbaru telah memperluas cakupan bahasanya mencakup 27 bahasa tambahan, meliputi kawasan seperti Eropa Barat, Eropa Timur dan Tengah, Timur Tengah, Asia Timur, dan Asia Selatan.
Dukungan bahasa yang luas ini memungkinkan Qwen memfasilitasi komunikasi lintas budaya, melakukan terjemahan berkualitas tinggi, menangani skenario alih kode, dan melayani aplikasi global dengan pembuatan konten terlokalisasi.
Pembuatan teks
Model Qwen sangat mahir dalam berbagai tugas pembuatan teks. Beberapa aplikasi utama meliputi:
Kemampuan model untuk mempertahankan konteks pada urutan panjang (hingga 32.768 token) memungkinkan pembuatan keluaran teks yang panjang dan koheren.
Tanya jawab
Qwen juga unggul dalam tanya jawab faktual maupun terbuka. Fitur ini memungkinkan:
Pemahaman gambar
Dengan model Qwen-VL, keluarga Qwen memperluas kemampuannya ke tugas multimodal yang melibatkan gambar. Fitur utama meliputi:
Sumber terbuka
Salah satu fitur paling signifikan dari Qwen adalah sifatnya yang open-source, yang membawa sejumlah manfaat bagi komunitas AI:
Pendekatan open-source telah menghasilkan dukungan luas dari proyek dan alat pihak ketiga:
Qwen: Akses dan Instalasi
Sekarang setelah Anda memahami Qwen dan fitur utamanya, saatnya mempelajari cara menggunakannya secara praktis!
Mengakses model Qwen
Model Qwen tersedia di beberapa platform, sehingga sangat mudah diakses untuk berbagai kasus penggunaan.
Langkah instalasi dan memulai
Di bagian ini, saya akan memandu Anda menggunakan model bahasa Qwen-7B melalui Hugging Face. Kita akan membahas penyiapan lingkungan, masuk ke Hugging Face, dan menjalankan model.
Prasyarat
Langkah 1: Pasang pustaka yang diperlukan
Pertama, pasang pustaka yang diperlukan:
Langkah 2: Masuk ke Hugging Face
Untuk mengakses model Qwen-7B, Anda perlu masuk ke akun Hugging Face. Ini diperlukan karena beberapa model mungkin memiliki pembatasan penggunaan, tetapi Anda tetap dapat mengakses model privat milik Anda sendiri atau organisasi Anda. Ini membantu memantau penggunaan API dan menerapkan pembatasan laju jika diperlukan.
Untuk masuk, ikuti langkah-langkah ini:
1. Kunjungi Hugging Face.
2. Buka pengaturan profil Anda dan buat token akses.
3. Di terminal Anda, jalankan:
4. Saat diminta, masukkan token akses Anda.
Langkah 3: Buat skrip Python dan impor paket
Sekarang, kita akan membuat file Python atau file Jupyter Notebook tempat kita mulai menulis kode.
Pertama, kita akan mengimpor dua kelas dari pustaka
transformers:AutoModelForCausalLM: Kelas ini secara otomatis memilih arsitektur model yang sesuai berdasarkan nama model yang Anda berikan.AutoTokenizer: Kelas ini memuat tokenizer yang tepat untuk model yang Anda gunakan.Langkah 4: Tentukan nama model
Sekarang, kita menentukan model mana yang ingin digunakan. "Qwen/Qwen-7B" mengacu pada versi 7 miliar parameter dari model Qwen yang dihosting di Hugging Face model hub, tetapi silakan gunakan model Qwen lainnya.
Langkah 5: Muat tokenizer
Selanjutnya, kita perlu memuat tokenizer.
Baris ini memuat tokenizer yang terkait dengan model Qwen-7B. Parameter
trust_remote_code=Truediperlukan karena model Qwen mungkin membutuhkan eksekusi kode kustom saat pemuatan.Langkah 6: Muat model
Langkah berikutnya adalah memuat model.
Ini memuat model Qwen-7B yang sesungguhnya. Sekali lagi, kita menggunakan
trust_remote_code=Trueuntuk mengizinkan dijalankannya kode kustom yang terkait dengan model.Langkah 7: Uji contoh
Setelah kita memuat model, kita dapat mengujinya dengan menghasilkan teks berdasarkan masukan tertentu.
Di sini, kita menyiapkan masukan untuk model:
input_textsebagai prompt.return_tensors="pt"menentukan bahwa keluaran yang diinginkan adalah tensor PyTorch.Sekarang, kita menghasilkan teks:
Baris kode pertama memberi tahu model untuk menghasilkan teks:
inputsyang sudah ditokenisasi ke metodegenerate.**inputsmembuka kamus yang dikembalikan oleh tokenizer.max_new_tokens=50membatasi generasi hingga maksimal 50 token baru.Langkah ini mengonversi keluaran model (dalam format ID token) kembali menjadi teks yang dapat dibaca:
outputsmemilih urutan pertama dan satu-satunya (dalam kasus ini) yang dihasilkan.skip_special_tokens=Truememberi tahu decoder untuk mengabaikan token khusus seperti padding atau token akhir urutan.Terakhir, kita mencetak teks yang dihasilkan untuk melihat hasilnya.
Catatan dan kiat
Berikut beberapa catatan dan kiat yang berguna:
trust_remote_code=Truediperlukan untuk model Qwen karena mereka membutuhkan kode kustom agar berjalan dengan benar.Qwen: Deployment
Model Qwen dapat dideploy menggunakan Platform for AI (PAI) dan Elastic AI Serving (EAS) dari Alibaba Cloud. Mari lihat bagaimana Anda dapat mendeploy model Qwen hanya dalam beberapa klik:
Qwen: Contoh Penggunaan
Mari kita jelajahi beberapa contoh praktis penggunaan Qwen untuk tugas pembuatan teks dan tanya jawab.
Pembuatan teks
Qwen sangat andal menghasilkan teks yang koheren dan relevan secara kontekstual berdasarkan prompt yang diberikan. Mari lihat beberapa contoh:
Pelengkapan teks dasar
Penulisan kreatif
Pembuatan kode
Tanya jawab
Qwen dapat digunakan untuk menjawab berbagai pertanyaan, dari yang faktual hingga yang lebih terbuka atau analitis. Berikut beberapa contoh:
Pertanyaan faktual
Pertanyaan terbuka
Contoh-contoh ini menunjukkan bagaimana Qwen dapat menangani berbagai jenis tugas pembuatan teks dan tanya jawab.
Anda dapat menyesuaikan parameter seperti
max_new_tokensdantemperatureuntuk mengendalikan panjang dan kreativitas respons yang dihasilkan agar sesuai dengan kebutuhan spesifik Anda.Fine-tuning Model Qwen
Fine-tuning model Qwen memungkinkan Anda mengadaptasinya untuk tugas tertentu, yang berpotensi meningkatkan kinerjanya untuk kasus penggunaan Anda. Proses ini melibatkan pelatihan model pralatih pada dataset kustom, sehingga model dapat mempelajari pengetahuan khusus tugas sambil mempertahankan kemampuan pemahaman bahasanya yang umum.
Di bagian ini, kita akan melalui proses fine-tuning model Qwen-7B pada dataset kustom. Kita akan menggunakan teknik fine-tuning yang efisien agar proses ini tetap terjangkau, bahkan untuk model besar. Dalam contoh kita, kita melakukan fine-tuning untuk meningkatkan kinerja pada tugas penerjemahan dan menjawab pertanyaan faktual. Proses ini memungkinkan model belajar dari dataset kustom sambil mempertahankan kemampuan pemahaman bahasa umumnya.
Prasyarat
Sebelum mulai, pastikan Anda telah memasang hal berikut:
Langkah 1: Siapkan dataset Anda
Pertama, siapkan dataset Anda dalam format JSON. Setiap entri harus memiliki kolom "prompt" dan "completion". Simpan sebagai
custom_dataset.json. Kita akan menggunakan contoh berikut:Langkah 2: Siapkan skrip fine-tuning
Sekarang kita menambahkan impor berikut:
Langkah 3: Siapkan dataset
Selanjutnya, kita akan mendefinisikan fungsi untuk memproses dataset dan memuatnya menggunakan pustaka datasets dari Hugging Face:
Langkah 4: Siapkan LoRA untuk fine-tuning efisien
Untuk membuat fine-tuning lebih efisien, kita akan menggunakan LoRA (Low-Rank Adaptation). Teknik ini memungkinkan kita melakukan fine-tuning model besar dengan lebih sedikit parameter:
Langkah 5: Tentukan argumen pelatihan
Sekarang, kita akan menyiapkan argumen pelatihan yang mengendalikan berbagai aspek proses fine-tuning:
Langkah 6: Buat Trainer dan mulai fine-tuning
Dengan dataset dan argumen pelatihan yang sudah siap, kita sekarang dapat membuat objek Trainer dan memulai proses fine-tuning:
Langkah 8: Simpan model yang telah di-fine-tune
Setelah fine-tuning selesai, kita akan menyimpan model agar dapat digunakan nanti:
Fine-tuning model Qwen-7B pada dataset kustom Anda akan meningkatkan kinerjanya pada tugas-tugas yang serupa dengan data pelatihan Anda. Dalam kasus ini, model seharusnya lebih baik dalam menerjemahkan bahasa Inggris ke Prancis dan menjawab pertanyaan faktual tentang ibu kota negara.
Menggunakan model yang telah di-fine-tune
Setelah fine-tuning, Anda dapat menggunakan model untuk inferensi:
Kiat untuk fine-tuning yang efektif
Berikut beberapa kiat yang perlu dipertimbangkan untuk fine-tuning yang efektif:
Fine-tuning Qwen pada dataset kustom Anda memungkinkan pembuatan model khusus yang unggul pada tugas spesifik Anda sambil mempertahankan pengetahuan dan kapabilitas luas dari model pralatih asli. Pendekatan ini memanfaatkan kekuatan model bahasa besar untuk aplikasi dan domain unik Anda.
Qwen: Prospek Masa Depan
Seiring Qwen terus berkembang, kita dapat mengantisipasi beberapa perkembangan menarik:
Kesimpulan
Saat kita menutup eksplorasi tentang Qwen, jelas bahwa alat AI ini mewakili lompatan besar menuju AI yang mudah diakses, kuat, dan serbaguna. Qwen lebih dari sekadar rangkaian model AI yang bertenaga—ia mewakili visi untuk membuat AI tingkat lanjut dapat diakses dan dapat diadaptasi oleh semua orang. Dengan menyediakan alat-alat ini sebagai sumber terbuka, Alibaba Cloud mendorong inovasi dan kemajuan teknologi AI.
Jika Anda ingin mengikuti perkembangan terbaru di bidang AI, saya merekomendasikan artikel berikut: