14 poin oleh kwonhl0211 2024-07-15 | Belum ada komentar. | Bagikan ke WhatsApp
  • Pengalaman Linus Lee dalam pengembangan AI

    • Linus Lee bekerja di Notion sebagai lead AI engineer.
    • Sebelum bergabung dengan Notion, ia banyak melakukan riset tentang NLP, machine learning, dan HCI, serta aktif membuat prototipe dan menulis.
    • Di Notion, ia mengembangkan fitur Q&A, Autofill, dan AI Writing, serta juga melakukan riset tentang model ruang laten.
  • Gambaran umum pengembangan AI di Notion

    • Linus Lee telah mengembangkan berbagai web app dan alat produktivitas sejak masa kuliah.
    • Sepanjang 2022, ia secara mandiri mulai membaca paper dan melakukan riset terkait AI.
    • Pada Oktober 2022, ia bergabung dalam proyek beta AI Writer milik Notion.
    • Saat ia masuk ke Notion, tim AI terdiri dari empat orang, tetapi kini telah berkembang menjadi sekitar 20 orang.
    • Proyek utama yang ia ikuti adalah AI Writer, Autofill, dan Q&A, yang masing-masing dirilis pada Februari, Mei, dan November 2023.
    • Ke depan, Notion AI berencana lebih meningkatkan kegunaan melalui teknologi agent.
  • Pengenalan office dan tim AI di Notion

    • Notion memiliki office di San Francisco dan New York, dan office San Francisco digunakan untuk makan siang atau ruang acara.
    • Office New York adalah tempat Linus Lee tinggal dan bekerja, dengan lingkungan kerja yang didesain rapi.
    • Pengembangan fitur AI di Notion dimulai pada 2013, dan CEO serta CTO ikut terlibat langsung dalam pengembangan produk.
    • Dalam foto rapat tim AI pada musim gugur 2022, terlihat manajer, CEO Ivan, CTO Simon, product manager, dan desainer sedang mengadakan sesi Q&A.
    • Dalam pengembangan produk AI, kualitas dan evaluasi adalah elemen penting, dan mereka menggunakan teknik evaluasi yang mempertimbangkan spektrum antara research benchmark dan penggunaan nyata di production.
    • Notion memeriksa performa antara benchmark dan data nyata, serta mengevaluasi performa model secara akurat melalui pengujian terprogram.
    • Item evaluasi mencakup keberadaan kata tertentu, trust, penyertaan keyword, dan performa bahasa yang akurat.
  • Pengembangan produk AI di Notion

    • Evaluasi manusia merupakan elemen penting dalam pengembangan produk AI Notion.
    • Pada test dataset, manusia memeriksa data, dan produk diuji melalui pengujian terprogram.
    • Setelah produk dikembangkan, pemantauan berkelanjutan diperlukan berdasarkan umpan balik pengguna.
    • AI harus menyediakan fungsi di berbagai tingkat agar dapat secara efektif mengumpulkan kasus kegagalan pengguna dan menjawab pertanyaan.
    • Kunci pengembangan produk AI berkualitas tinggi adalah revisi dan kualitas data. Karena itu, penting menyesuaikan data dunia nyata dengan model.
    • Tim Notion mengembangkan fitur revisi dengan mendiskusikannya bersama engineer, researcher, desainer, dan product manager.
    • Dengan menggunakan model seperti GPT-4, mereka terus meningkatkan model revisi untuk menaikkan kualitas hasil.
  • Proses pengembangan fitur AI di Notion

    • Engineer AI di Notion mengembangkan model melalui pengumpulan informasi dan penyusunan data. Karena itu, data harus dianalisis secara menyeluruh dan disesuaikan dengan kebutuhan pengguna.
    • Mereka meneliti cara menata informasi seperti catatan rapat dan web page milik pengguna Notion, lalu membangun dataset. Ini penting karena memengaruhi performa model AI.
    • Melalui riset, mereka mengidentifikasi use case seperti Q&A dan menguji model, agar dapat memberikan jawaban yang efektif atas pertanyaan pengguna.
    • Mereka mengembangkan sistem prototipe menggunakan GPT-4 dan model cloud, lalu mengujinya secara internal untuk menemukan masalah awal.
    • Mereka menganalisis kasus kegagalan yang terkumpul dari penggunaan internal, lalu memperbaiki dataset dan model berdasarkan hal itu. Dengan demikian, akurasi model ditingkatkan melalui pengujian dan umpan balik berulang.
  • Prosedur pengembangan dan evaluasi model AI di Notion

    • Proses iterasi model mencakup revisi prompt, fine-tuning model, dan penambahan tahap kedua pada pipeline language model.
    • Jika pada tahap pengembangan dianggap masalah sudah terselesaikan, model akan dideploy kembali, lalu lebih banyak kasus kegagalan dikumpulkan untuk menjalani proses iteratif.
    • Proses ini terus diulang sampai kualitas input dan output di lingkungan internal memuaskan.
    • Pada titik tertentu, produk dibuka ke sejumlah kecil pengguna melalui program beta, lalu umpan balik pengguna dan data log yang terkumpul otomatis dipantau.
    • Pada tahap awal pembangunan dataset, berbagai metode digunakan untuk memastikan apakah dataset cukup merefleksikan use case nyata.
  • Tahap awal pengembangan fitur AI

    • Mereka membuat prototipe dan mengujinya bersama tim AI internal.
    • Dengan begitu, mereka mengumpulkan berbagai input dan contoh melalui penggunaan internal.
    • Kumpulan input awal tidak harus sepenuhnya merepresentasikan kasus dunia nyata secara sempurna.
    • Setelah pengujian internal, produk didistribusikan ke kelompok pengguna yang lebih luas untuk secara bertahap memperoleh data yang lebih realistis.
    • Dataset awal juga dapat dibangun berdasarkan kasus kegagalan yang diperkirakan.
    • Saat mengembangkan fitur dukungan bahasa, mereka menggunakan dataset QA yang sudah ada dengan menerjemahkannya ke bahasa asing.
  • Pengumpulan data dan evaluasi melalui pengujian internal dan eksternal

    • Dataset awal tidak harus sepenuhnya realistis. Karena itu, data yang lebih baik dikumpulkan melalui pengujian.
    • Prototipe diuji kepada pengguna internal atau sejumlah kecil pengguna eksternal, lalu contoh output yang salah dikumpulkan dengan berbagai cara.
    • Evaluasi dilakukan secara terprogram berdasarkan keyword atau struktur output, dan log disimpan untuk semua inferensi AI. Dengan demikian, output yang gagal dapat diperiksa dan dianalisis.
    • Melalui wawancara pengguna, mereka dapat memahami use case nyata dan menemukan cara penggunaan yang tidak terduga.
    • Sebagai contoh, saat menguji fitur Autofill secara internal, mereka menemukan banyak karyawan memakainya untuk tujuan terjemahan, lalu mengembangkan versi terjemahan yang lebih dioptimalkan dari fitur tersebut.
  • Umpan balik dan metode evaluasi produk AI

    • Tombol umpan balik suka dan tidak suka tidak terlalu berguna bagi pengguna sehingga jarang dipakai.
    • Selain itu, dengan skala pengguna Notion, data yang cukup juga tidak bisa diperoleh hanya melalui tombol umpan balik semacam ini.
    • Namun, sesekali tombol itu tetap membantu karena bisa menangkap kasus-kasus pengecualian yang tidak ditemukan lewat use case lain.
    • Secara internal, mereka mengevaluasi performa model terhadap input tak terduga melalui adversarial testing.
    • Adversarial testing berguna untuk memahami batas performa model dan mengidentifikasi titik munculnya masalah.
    • Mereka terus memantau kekuatan dan kelemahan model melalui data penggunaan nyata.
  • Elemen inti dalam pengembangan produk AI

    • Evaluasi dan log adalah yang paling penting.
    • Perlu membangun log yang komprehensif, lengkap, dan dapat dijalankan ulang sepenuhnya.
    • Melalui contoh output buruk yang muncul dalam penggunaan nyata atau hasil pengujian internal, pipeline dapat dibangun ulang dan di-debug.
    • Setiap contoh dijalankan kembali di lingkungan pengembangan untuk diuji dengan prompt atau model baru guna mencari solusi.
    • Setelah masalah diselesaikan, contoh tersebut ditambahkan ke test dataset agar masalah yang sama tidak muncul lagi.
  • Pelajaran penting dalam pengembangan AI

    • Pemahaman terhadap task harus diperdalam dengan menggunakan produk lebih awal dan sering mengujinya.
    • Faktor diferensiasi dalam AI bukanlah performa model, melainkan tingkat pemahaman terhadap task.
    • Saat membangun aplikasi AI untuk pengguna akhir, tim AI harus memahami secara mendalam tingkat kesulitan task dan batas model.
    • Penting untuk memecah task menjadi bagian-bagian kecil, lalu memahami di bagian mana model sering gagal dan di bagian mana model secara alami bekerja dengan baik.
    • Cara terbaik memahami kesulitan task adalah dengan sering menggunakan produk dan menganalisis output untuk memahami penyebab kesalahan model.
  • Hal-hal yang perlu diperhatikan saat mengembangkan produk AI

    • Spesifikasi produk harus menjelaskan bukan hanya antarmuka dan fungsi, tetapi juga kriteria evaluasi dan standar output yang baik.
    • Kriteria evaluasi digunakan sebagai titik komunikasi utama antara penanggung jawab produk, engineer, dan researcher.
    • Pengalaman machine learning tradisional juga dapat diterapkan pada model LLM dan generative AI, dan ini memberi lebih banyak insight daripada yang dibayangkan.
    • Namun, jika dalam machine learning tradisional orang menangani dataset besar dan menganalisis cluster atau subset besar, pada language model lebih sering dilakukan peninjauan terhadap kasus kegagalan individual dan log individual.
    • Karena itu, pekerjaan dengan language model memerlukan alat dan workflow yang berbeda.
  • Pentingnya evaluasi model AI dan pendekatan yang digunakan

    • Evaluasi berangkat dari pengguna dan apa yang benar-benar mereka lakukan sebagai sumber kebenaran.
    • Karena itu, materi evaluasi harus mencerminkan use case nyata berdasarkan data penggunaan internal dan eksternal.
    • Tantangan penting dalam proses evaluasi adalah memastikan cakupan yang memadai atas seluruh ruang input tempat sistem diharapkan bekerja dengan baik.
    • Membangun pipeline evaluasi otomatis dapat menghemat waktu saat nanti harus menangani banyak data, tetapi pada tahap awal penting bagi anggota tim untuk meninjau dan memahami output secara langsung.
    • Ini membantu memahami penyebab kegagalan model dan kecenderungan model terhadap tugas tertentu.
  • Cara membentuk tim AI

    • Ada dua pendekatan utama. Yang pertama adalah mengubah tim machine learning yang sudah ada menjadi tim AI.
    • Dengan begitu, tim bisa berfokus pada data, validasi, dan benchmark. Karena itu, penting melakukan evaluasi yang sesuai dengan kebutuhan pengguna dan ekspektasi dunia nyata.
    • Kedua, tim engineer yang sudah ada dapat mempelajari language model API seperti OpenAI API. Notion juga menggunakan pendekatan ini. Karena itu, tim AI awal mereka sebagian besar terdiri dari web engineer.
    • Keunggulan tim semacam ini adalah kekuatan dalam memahami pengguna dan eksperimen pengujian. Namun, mereka perlu mempelajari pentingnya evaluasi yang ketat dan dataset berkualitas tinggi.
    • Selain itu, praktik higienis dan workflow yang baik penting dalam pemeliharaan dataset. Karena itu, memastikan data point berkualitas tinggi adalah hal yang esensial.

Belum ada komentar.

Belum ada komentar.