Rumah  >  Artikel  >  Peranti teknologi  >  Tafsir Toolformer

Tafsir Toolformer

WBOY
WBOYke hadapan
2023-05-05 20:10:051605semak imbas

Model Bahasa Besar (LLM) telah menunjukkan kelebihan yang luar biasa dalam menyelesaikan tugasan baharu dengan data teks yang terhad. Walau bagaimanapun, walaupun demikian, mereka mempunyai batasan dalam cara lain, seperti:

  • Kekurangan akses kepada maklumat terkini
  • Kecenderungan untuk berkhayal tentang fakta
  • Kesukaran dengan bahasa sumber rendah
  • Kekurangan kemahiran matematik untuk pengiraan yang tepat
  • Kurang pemahaman tentang proses masa

Cara menggunakan model besar untuk menyelesaikan lebih banyak masalah ? Dalam artikel "Tafsiran TaskMatrix.AI", TaskMatrix.AI ialah gabungan Toolformer dan chatGPT, menghubungkan model asas dengan berjuta-juta API untuk menyelesaikan tugasan. Jadi, apakah itu Toolformer?

Toolformer ialah model sumber terbuka baharu Meta yang boleh menyelesaikan masalah yang memerlukan penggunaan API, seperti kalkulator, carian Wikipedia, carian kamus, dsb. Toolformer menyedari bahawa ia mesti menggunakan alat, menentukan alat yang hendak digunakan dan cara menggunakan alat tersebut. Kes penggunaan untuk Toolformers mungkin tidak berkesudahan, daripada menyediakan hasil carian segera untuk sebarang soalan, kepada maklumat kontekstual, seperti restoran terbaik di bandar.

1. Apakah itu Toolformer?

Apakah itu Toolformer? Pendek kata, Toolformer ialah model bahasa yang boleh mengajar dirinya sendiri cara menggunakan alatan.

Toolformer adalah berdasarkan model GPT-J yang telah dilatih dengan 6.7 bilion parameter, dilatih menggunakan kaedah pembelajaran yang diselia sendiri. Pendekatan ini melibatkan pensampelan dan penapisan panggilan API untuk menambah set data teks sedia ada.

Toolformer berharap dapat menyelesaikan tugas pembelajaran kendiri LLM cara menggunakan alatan melalui dua keperluan berikut:

  • Penggunaan alatan harus dipelajari melalui penyeliaan kendiri tanpa memerlukan banyak buruh kasar Nota.
  • LM seharusnya tidak kehilangan keluasannya dan seharusnya boleh menentukan sendiri masa dan cara menggunakan alat yang mana.

Imej berikut menunjukkan ramalan Toolformer (cth. panggilan API yang dibenamkan dalam sampel data):

Tafsir Toolformer

2. Seni bina Toolformer dan kaedah pelaksanaan

Ciri teras dalam ChatGPT ialah pembelajaran berasaskan konteks (Pembelajaran Dalam Konteks), yang merujuk kepada kaedah pembelajaran mesin di mana model dipersembahkan daripada konteks atau persekitaran tertentu Belajar daripada contoh. Matlamat pembelajaran kontekstual adalah untuk meningkatkan keupayaan model untuk memahami dan menjana bahasa yang sesuai untuk konteks atau situasi tertentu. Dalam tugas pemprosesan bahasa semula jadi (NLP), model bahasa boleh dilatih untuk menjana respons kepada gesaan atau soalan tertentu. Jadi, bagaimanakah Toolformer memanfaatkan Pembelajaran Dalam Konteks?

Toolformer ialah model bahasa besar yang membolehkan penggunaan alat yang berbeza melalui panggilan API. Input dan output setiap panggilan API perlu diformatkan sebagai urutan teks/perbualan untuk mengalir secara semula jadi dalam sesi.

Tafsir Toolformer

Seperti yang anda boleh lihat daripada imej di atas, Toolformer mula-mula memanfaatkan keupayaan pembelajaran kontekstual model untuk mencuba sejumlah besar panggilan API yang berpotensi.

Laksanakan panggilan API ini dan semak sama ada respons yang diperoleh boleh membantu meramalkan token pada masa hadapan dan digunakan sebagai penapis. Selepas penapisan, panggilan API ke alat yang berbeza dibenamkan ke dalam sampel data mentah, menghasilkan set data yang dipertingkat yang modelnya diperhalusi.

Khususnya, imej di atas menunjukkan model yang menyelesaikan tugasan ini menggunakan alat soal jawab:

  1. Dataset LM mengandungi teks sampel: Masukkan gesaan "Pittsburgh" untuk "Pittsburgh juga dikenali sebagai" juga dikenali sebagai "The Steel City".
  2. Untuk mencari jawapan yang betul, model perlu membuat panggilan API dan membuatnya dengan betul.
  3. Mensampel beberapa panggilan API, khususnya "Apakah nama lain yang dikenali oleh Pittsburgh dan "Di negara manakah Pittsburgh?"
  4. Jawapan yang sepadan ialah "Bandar Keluli" dan "Amerika Syarikat". Oleh kerana jawapan pertama adalah lebih baik, ia dimasukkan ke dalam set data LM baharu dengan panggilan API: "Pittsburgh juga dikenali sebagai [QA("Apakah nama lain yang dikenali oleh Pittsburgh?") -> Steel City] the Steel City" .
  5. Ini mengandungi panggilan dan respons API yang dijangkakan. Ulangi langkah ini untuk menjana set data LM baharu menggunakan pelbagai alatan (iaitu, panggilan API).

Oleh itu, LM menganotasi sejumlah besar data menggunakan panggilan API yang dibenamkan dalam teks, dan kemudian menggunakan panggilan API ini untuk memperhalusi LM untuk membuat panggilan API yang berguna. Beginilah cara latihan yang diselia sendiri berfungsi, dan faedah pendekatan ini termasuk:

  • Kurang keperluan untuk anotasi manual.
  • Membenamkan panggilan API ke dalam teks membolehkan LM menggunakan berbilang alatan luaran untuk menambah lebih banyak kandungan.

Toolformer kemudian belajar untuk meramalkan alat yang akan digunakan untuk setiap tugasan.

2.1 Persampelan panggilan API

Rajah berikut menunjukkan bahawa input pengguna yang diberikan, Toolformer menggunakan dan untuk mewakili permulaan dan akhir panggilan API. Menulis gesaan untuk setiap API menggalakkan Pembentuk Alat untuk menganotasi contoh dengan panggilan API yang berkaitan.

Tafsir Toolformer

Toolformer memberikan kebarangkalian kepada setiap token sebagai kemungkinan kesinambungan urutan yang diberikan. Kaedah ini mengambil sampel sehingga k kedudukan calon untuk panggilan API dengan mengira kebarangkalian yang diberikan oleh ToolFormer untuk memulakan panggilan API pada setiap kedudukan dalam jujukan. Kedudukan dengan kebarangkalian lebih besar daripada ambang tertentu disimpan, dan untuk setiap kedudukan, sehingga m panggilan API diperolehi dengan pensampelan daripada Pembentuk Alat menggunakan jujukan yang diawali dengan panggilan API dan diakhiri dengan penanda akhir jujukan.

2.2 Pelaksanaan Panggilan API

Pelaksanaan panggilan API bergantung sepenuhnya pada klien yang melaksanakan panggilan. Pelanggan boleh menjadi jenis aplikasi yang berbeza, daripada rangkaian saraf lain, kepada skrip Python, kepada sistem perolehan yang mencari dalam korpus besar. Adalah penting untuk ambil perhatian bahawa apabila pelanggan membuat panggilan, API mengembalikan satu tindak balas jujukan teks. Respons ini mengandungi maklumat terperinci tentang panggilan, termasuk status kejayaan atau kegagalan panggilan, masa pelaksanaan dan banyak lagi.

Oleh itu, untuk mendapatkan keputusan yang tepat, pelanggan harus memastikan bahawa parameter input yang betul disediakan. Jika parameter input tidak betul, API mungkin mengembalikan hasil yang salah, yang mungkin tidak dapat diterima oleh pengguna. Selain itu, pelanggan harus memastikan bahawa sambungan kepada API adalah stabil untuk mengelakkan gangguan sambungan atau isu rangkaian lain semasa panggilan.

2.3 Menapis panggilan API

Semasa proses penapisan, Toolformer mengira kehilangan rentas entropi wajaran Toolformer melalui token selepas panggilan API.

Kemudian, bandingkan dua pengiraan kerugian yang berbeza:

(i) Satu ialah panggilan API, yang hasilnya diberikan sebagai input kepada Toolformer

(ii) Satu ialah bukan panggilan API atau panggilan API tetapi tiada hasil dikembalikan.

Panggilan API dianggap berguna jika input dan output yang disediakan untuk panggilan API memudahkan Pembentuk Alat meramalkan token masa hadapan. Gunakan ambang penapisan untuk mengekalkan hanya panggilan API yang perbezaan antara kedua-dua kerugian adalah lebih besar daripada atau sama dengan ambang.

2.4 Penalaan Halus Model

Akhir sekali, Toolformer menggabungkan baki panggilan API dengan input asal dan mencipta panggilan API baharu untuk menambah set data. Dalam erti kata lain, set data ditambah mengandungi teks yang sama seperti set data asal, dengan hanya panggilan API disisipkan.

Kemudian, gunakan set data baharu untuk memperhalusi ToolFormer menggunakan objektif pemodelan bahasa standard. Ini memastikan penalaan halus model pada set data tambahan terdedah kepada kandungan yang sama seperti penalaan halus pada set data asal. Penalaan halus data tambahan membolehkan model bahasa memahami masa dan cara menggunakan panggilan API berdasarkan maklum balasnya sendiri, dengan memasukkan panggilan API di lokasi yang tepat dan menggunakan model bantuan untuk meramal input token masa hadapan.

2.5 Inferens

Semasa inferens, proses penyahkodan terganggu apabila model bahasa menghasilkan token "→", yang menunjukkan tindak balas dijangka seterusnya kepada panggilan API. Kemudian, hubungi API yang sesuai untuk mendapatkan respons dan teruskan penyahkodan selepas memasukkan respons dan token.

Pada ketika ini, kita perlu memastikan bahawa respons yang diperolehi sepadan dengan respons yang diharapkan daripada token sebelumnya. Jika ia tidak sepadan, kita perlu melaraskan panggilan API untuk mendapatkan respons yang betul. Sebelum meneruskan penyahkodan, kami juga perlu melakukan beberapa pemprosesan data untuk menyediakan langkah seterusnya dalam proses inferens. Proses data ini termasuk analisis respons, pemahaman konteks dan pemilihan laluan inferens. Oleh itu, semasa proses inferens, anda bukan sahaja perlu memanggil API untuk mendapatkan respons, tetapi anda juga perlu melakukan satu siri pemprosesan dan analisis data untuk memastikan ketepatan dan ketekalan proses inferens.

2.6 Alat API

Setiap alat API yang boleh digunakan dalam Toolformer mesti memenuhi dua syarat berikut:

  • Input/output perlu diwakili sebagai teks urutan .
  • Terdapat tunjuk cara tersedia yang menunjukkan cara menggunakan alatan ini.

Pelaksanaan awal Toolformer menyokong lima alatan API:

  1. Soal Jawab: Ini adalah satu lagi LM yang menjawab soalan fakta mudah.
  2. Kalkulator: Pada masa ini hanya menyokong 4 operasi aritmetik asas dan membundarkan kepada dua tempat perpuluhan.
  3. Carian Wiki: Enjin carian yang mengembalikan teks pendek yang dipotong daripada Wikipedia.
  4. Sistem terjemahan mesin: LM yang boleh menterjemah frasa dalam mana-mana bahasa ke dalam bahasa Inggeris.
  5. Kalendar: Panggilan API ke kalendar yang mengembalikan tarikh semasa tanpa menerima sebarang input.

Rajah berikut menunjukkan contoh input dan output semua API yang digunakan:

Tafsir Toolformer

3. Contoh aplikasi

Toolformer berprestasi lebih baik daripada model garis dasar dan GPT-3 dalam tugasan seperti LAMA, set data matematik, jawapan soalan dan set data temporal, tetapi berprestasi lebih teruk daripada model lain dalam menjawab soalan berbilang bahasa. Toolformer menggunakan panggilan API untuk menyelesaikan tugas, seperti API LAMA, API Kalkulator dan API Alat Carian Wikipedia.

3.1 LAMA

Tugasnya ialah melengkapkan kenyataan yang kurang fakta. Toolformer mengatasi model garis dasar dan model yang lebih besar seperti GPT-3. Jadual berikut menunjukkan keputusan yang diperoleh melalui panggilan API LAMA:

Tafsir Toolformer

3.2 Set Data Matematik

Tugasnya adalah untuk menilai penaakulan matematik of Toolformer Keupayaan untuk membandingkan pelbagai model asas. Toolformer berprestasi lebih baik daripada model lain, mungkin kerana penalaan halus contoh panggilan API. Membenarkan model membuat panggilan API dengan ketara meningkatkan prestasi pada semua tugasan dan mengatasi prestasi model yang lebih besar seperti OPT dan GPT-3. Dalam hampir semua kes, model memutuskan untuk meminta bantuan alat kalkulator.

Jadual berikut menunjukkan keputusan yang diperoleh melalui panggilan API Kalkulator:

Tafsir Toolformer

3.3 Soalan Jawapan

The tugasan ialah Untuk menjawab soalan, Toolformer mengatasi model garis dasar dengan saiz yang sama, tetapi mengatasi GPT-3(175B). Toolformer menggunakan alat carian Wikipedia untuk kebanyakan contoh dalam tugasan ini. Jadual berikut menunjukkan keputusan yang diperolehi melalui panggilan API alat carian Wikipedia:

Tafsir Toolformer

3.4 Menjawab Soalan Berbilang Bahasa

Soal Jawab set data digunakan Pada soalan berbilang bahasa menjawab tanda aras MLQA, yang mengandungi petikan konteks dalam bahasa Inggeris dan soalan dalam bahasa Arab, Jerman, Sepanyol, Hindi, Vietnam atau Cina Ringkas. Toolformer bukanlah pemain yang paling kuat di sini, mungkin disebabkan kekurangan penalaan CCNet merentas semua bahasa.

Jadual berikut menunjukkan hasil yang diperoleh melalui panggilan API alat carian Wikipedia:

Tafsir Toolformer

3.5 Set Data Temporal

Tugasnya adalah untuk mengetahui di mana tarikh semasa adalah penting untuk menjawab soalan. Toolformer dapat mengatasi prestasi asas, namun, ia jelas tidak menggunakan alat kalendar 100% pada masa itu. Sebaliknya, ia menggunakan carian Wikipedia. Jadual berikut menunjukkan keputusan yang diperolehi melalui panggilan API alat carian Wikipedia:

Tafsir Toolformer

4. Had ToolFormer

Toolformer masih mempunyai beberapa Had seperti ketidakupayaan untuk menggunakan berbilang alatan pada masa yang sama, ketidakupayaan untuk mengendalikan alatan yang mengembalikan terlalu banyak hasil, kepekaan terhadap perkataan input yang membawa kepada ketidakcekapan, kegagalan untuk mempertimbangkan kos penggunaan yang mungkin membawa kepada kos pengiraan yang tinggi, dsb. Butirannya adalah seperti berikut:

  1. Toolformer tidak boleh menggunakan berbilang alatan dalam proses memandangkan panggilan API untuk setiap alat dijana secara bebas.
  2. Terutama untuk alatan yang mungkin mengembalikan ratusan hasil yang berbeza (seperti enjin carian), Toolformer tidak boleh digunakan secara interaktif.
  3. Model yang dilatih menggunakan Toolformer sangat sensitif terhadap perkataan input yang tepat, pendekatan ini tidak cekap untuk sesetengah alatan dan memerlukan dokumentasi yang luas untuk menjana sebilangan kecil panggilan API yang berguna.
  4. Apabila membuat keputusan untuk menggunakan setiap alat, kos penggunaannya tidak dipertimbangkan, yang mungkin mengakibatkan kos pengiraan yang lebih tinggi.

5. Ringkasan

Toolformer ialah model bahasa berskala besar yang menggunakan Pembelajaran Dalam Konteks untuk meningkatkan keupayaan model memahami dan menjana bahasa yang sesuai untuk konteks atau situasi tertentu. Ia menggunakan panggilan API untuk menganotasi sejumlah besar data dan kemudian menggunakan panggilan API ini untuk memperhalusi model untuk membuat panggilan API yang berguna. Toolformer belajar untuk meramalkan alat yang akan digunakan untuk setiap tugas. Walau bagaimanapun, Toolformer masih mempunyai beberapa batasan, seperti ketidakupayaan untuk menggunakan berbilang alatan dalam proses dan ketidakupayaan untuk menggunakan alatan secara interaktif yang mungkin mengembalikan ratusan hasil yang berbeza.

[Bahan rujukan dan bacaan berkaitan]

  • Pembentuk Alat: Model Bahasa Boleh Ajar Diri Menggunakan Alat, https://arxiv.org/pdf/2302.04761.pdf
  • Meta's Toolformer Menggunakan API untuk Mengungguli GPT-3 pada Zero-Shot NLP Tasks, https://www.infoq.com/news/2023/04/meta-toolformer/
  • Toolformer: Model Bahasa Boleh Mengajar Sendiri untuk Menggunakan Alat (2023), https://kikaben.com/toolformer-2023/
  • Breaking Down Toolformer, https://www.shaped.ai/blog/breaking-down-toolformer
  • Toolformer: Meta Masuk Semula Perlumbaan ChatGPT Dengan Model Baharu Menggunakan Wikipedia, https://thechainsaw.com/business/meta-toolformer-ai/
  • Model bahasa Toolformer menggunakan alat luaran sendiri , https://the-decoder.com/toolformer-language-model-uses-external-tools-on-its-own/

Atas ialah kandungan terperinci Tafsir Toolformer. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam