Flazzo memiliki fokus utama untuk menambah nilai bisnis Anda.

Blog

Memahami teka -teki modernisasi kode

laptop-2595394_1280.jpg
Blog

Memahami teka -teki modernisasi kode

[ad_1]

Seperti banyak perusahaan besar, kita harus menavigasi keindahan dan kekacauan kode yang diwariskan. Dalam kasus kami, beberapa dekade prosedur SQL dan logika komersial yang mendasari platform yang mampu mengelola lebih dari 3 juta pengguna simultan dan ratusan penyebaran kode mikro per minggu. Ini adalah mesin yang kompleks. Sentuh permainan dan Anda berisiko melanggar 10 orang lainnya. Inilah sebabnya mengapa modernisasi basis kode merupakan tantangan teknis dan tantangan manusia. Ini membutuhkan empati, kepercayaan diri, dan kemampuan untuk membuat asumsi yang terinformasi.

Di dalam mesin inovasi

Di Bet365, fungsi inovasi platform ditetapkan untuk menyebabkan kemungkinan. Kami adalah tim khusus yang bertanggung jawab untuk mengeksplorasi teknologi yang muncul dan masa depan. Tujuan kami adalah mengidentifikasi di mana mereka dapat memiliki dampak terbesar dan membantu organisasi dalam arti luas untuk memahami bagaimana menggunakannya secara signifikan.

Kami adalah katalis dan duta besar untuk perubahan. Pekerjaan kami mencakup segalanya, dari pengembangan produk dan keamanan siber hingga masa depan tenaga kerja. Model panduan kami adalah tiga cakrawala pertumbuhan McKinsey yang didesain ulang untuk inovasi. Horizon 1 berfokus pada apa yang dapat kita terapkan hari ini. Horizon 2 mengeksplorasi apa yang akan terjadi. Horizon 3 berani mempertimbangkan masa depan bahwa belum ada yang berbicara.

Kerangka kerja ini membantu kita menyeimbangkan ambisi dengan pragmatisme. Ini menciptakan ruang untuk bereksperimen tanpa kehilangan nilai operasional, dan menjamin bahwa pengembang, arsitek, dan pemangku kepentingan kami adalah bagian dari percakapan yang sama.

Saat Genai bertemu para pengembang

Ketika GPT-4 jatuh pada tahun 2023, semuanya berubah. Seperti sebagian besar dunia teknologi, kami terpesona. AI generatif menawarkan visi yang menarik tentang masa depan yang diisi dengan prospek yang lebih cepat, ringkasan instan dan refactoring otomatis. Tapi kegembiraan dengan cepat memberi jalan bagi keraguan. Kami telah memberikan LLM yang kuat kepada pengembang yang sangat kompeten dan berkata: “Silakan.” Hasilnya beragam.

Mereka memasukkan kode ke jendela cepat, menghilangkan konteks untuk menghemat ruang dan berharap AI akan mengerti. Ini bukan masalahnya. Para pengembang bingung, frustrasi dan, secara alami, skeptis. Mereka melihat AI sebagai jalan pintas, bukan pasangan, dan ketika output tidak memenuhi harapan, frustrasi diikuti. Banyak yang menanyakan pertanyaan yang sama: “Mengapa saya meminta mesin penulisan kode yang bisa saya tulis sendiri?”

Apa yang kami pelajari sangat dalam. Masalahnya bukan AI. Itu adalah hubungan antara AI dan orang yang menggunakannya. Kami berasumsi bahwa keterampilan rekayasa perangkat lunak akan secara otomatis menghasilkan keterampilan dalam rekayasa cepat. Ini bukan masalahnya. Apakah kita melewatkan sesuatu? Poin yang tidak dapat kami abaikan adalah selama latihan, pengembang kami menyelesaikan tugas secara teratur sekitar 80% dari perkiraan waktu. Pasti ada sesuatu di sini. Kami hanya tidak tahu apa itu. JADI, Kami telah kembali ke dasar -dasarnya.

Batas pengkodean dan kepercayaan diri

Ada istilah baru dalam budaya pengembang: “pengkodean atmosfer”. Di sinilah Anda melemparkan sepotong kode ke LLM, mendapatkan jawaban, menyesuaikannya, membuangnya. Iterier dengan cepat. Kapal lebih cepat. Ini modis. Itu menarik. Tetapi bukan tanpa risiko.

Tanpa pemahaman yang jelas tentang niat atau konteks, pengkodean suasana hati dapat dengan cepat menjadi permainan tes dan kesalahan. Dan ketika sistem Anda serumit kami – banyak database yang berurusan dengan 500.000 transaksi per detik – “tes dan kesalahan” tidak cukup baik. Kami membutuhkan lebih dari getaran. Kami membutuhkan visi.

Konteks konten

Titik balik datang ketika kami menyadari bahwa pekerjaan yang sebenarnya tidak mengajarkan cara menulis kode yang lebih baik. Itu adalah guru manusia bagaimana berkomunikasi dengan AI. Kami belajar mantra baru: niat + konteks + detail. Inilah yang dibutuhkan AI. Bukan hanya konten. Bukan hanya “koreksi fungsi ini”. Tapi: “Inilah yang dilakukan kode ini, inilah mengapa ini penting, dan inilah yang saya butuhkan.” Wawasan ini adalah kuncinya.

Pengembang kami, khususnya mereka yang menyerang masalah yang saling bergantung paling kompleks, dengan cepat diadaptasi. Mereka dulu berpikir secara mendalam, untuk memberikan pembenaran dan berlayar dalam ambiguitas. Mereka mendapatkannya. Mereka memberi makan AI apa yang dia butuhkan. Mereka makmur. Perbedaannya adalah keadaan pikiran. Kami datang untuk menyebut fenomena ini “narator yang tidak dapat diandalkan”. Bukan hanya AI, tetapi pengembangnya. Karena seringkali masalahnya bukan karena mesin itu salah. Terkadang kami tidak jelas tentang apa yang kami minta.

Rag, Graphrag, dan Kekuatan Konteks yang Dikenakan ke Bumi

Untuk membangun dukungan yang andal dan selaras untuk manusia, kami membutuhkan cara untuk mendasarkan apa yang AI lihat sebenarnya. Di sinilah kami melihat kekuatan generasi dengan pemulihan (RAG). Rag memungkinkan model AI untuk memulihkan konteks yang relevan dari sumber eksternal – seperti dokumentasi, metadata sistem atau basis pengetahuan – sebelum menghasilkan jawaban. Lebih cepat diimplementasikan dan lebih fleksibel daripada penyesuaian halus, yang membuatnya ideal untuk lingkungan yang dinamis dan intensitas domain tinggi seperti kita. Pengembang dapat memperbarui basis pengetahuan tanpa mendaur ulang model, menjaga -to -date dan tamasya bumi.

Tapi Rag memiliki batasannya. Ketika sebuah pertanyaan meluas pada beberapa sistem atau membutuhkan penalaran melalui informasi yang terputus, kain tradisional, yang didasarkan pada kesamaan teks, mulai melemah. Inilah sebabnya kami beralih ke Graphrag, pendekatan yang lebih maju yang menggunakan grafik pengetahuan untuk meningkatkan LLM Othings.

Grafik pengetahuan tidak hanya berisi fakta, tetapi juga kode hubungan. Dia menangkap bagaimana komponen berinteraksi, di mana dependensi berada dan apa yang bisa rusak jika Anda mengubah sesuatu. Graphrag menggunakan struktur ini untuk meningkatkan petunjuk pada saat permintaan, memberikan AI konteks relasional yang harus ditanggapi secara tepat. Ini terutama benar di lingkungan di mana presisi sangat penting dan halusinasi tidak dapat diterima.

Sebagai latihan di dunia nyata, kami telah memeriksa domain SQL Server kami. Kami ingin membangun sistem yang dapat kami gunakan untuk mendapatkan informasi berharga tentang cara kerja sistem.

Untuk membangunnya, kami mulai dengan menganalisis semua objek basis data kami, termasuk tabel, tampilan, prosedur, fungsi, dll. Dalam pohon sintaks abstrak (AST). Menggunakan naskah Microsoft, kami mengekstraksi fakta -fakta kunci dan menggunakannya untuk membangun grafik pengetahuan awal. Kami telah menumpangkan ini dengan deskripsi bahasa alami untuk menjelaskan lebih banyak apa yang telah dilakukan setiap elemen dan menambahkan statistik eksekusi seperti frekuensi eksekusi, waktu prosesor dan volume membaca.

Hasilnya adalah representasi relasional yang kaya dari bidang SQL kami, dengan informasi kontekstual tentang bagaimana objek dikonsumsi dan bagaimana mereka berinteraksi. Kemudian, kami memunculkan kecerdasan ini ke pengembang melalui tiga alat dasar:

  1. Chatbot yang memungkinkan pengguna untuk meminta sistem dalam bahasa yang jelas
  2. Pemirsa yang membuat kartu 3D dependensi dan hubungan
  3. Seorang pelaksana sesuai dengan permintaan dan analisis grafik lanjutan

Yang penting untuk dicatat adalah bahwa sebagian besar nilai sistem terletak pada grafik, bukan model. AI tidak perlu tahu segalanya. Dia hanya perlu tahu di mana harus mencari dan bagaimana mengajukan pertanyaan yang tepat. Itu adalah kekuatan pembumian.

Bagi kami, Graphrag tidak hanya menyenangkan, itu menjadi penting. Ini membantu kami beralih dari bantuan generik ke sesuatu yang jauh lebih berharga: sistem yang memahami apa arti kode kami, bagaimana itu berperilaku dan apa yang berdampak.

Kami tidak lagi menulis kode. Kami mengaturnya. Kami merasakan niat di baliknya. Pengembang kami sekarang memiliki alat untuk mendapatkan informasi tambahan untuk menjadi pemeriksa kode, perancang sistem dan agen transformasi di a Tingkat ahli di departemen besar yang mencakup arsitektur. Semua dari antarmuka sederhana yang memungkinkan permintaan bahasa alami, itu adalah perubahan nyata. Masa depan tidak menyangkut AI yang melakukan pekerjaan kita. Ini adalah pertanyaan untuk menciptakan kembali apa pekerjaan itu.

Keberhasilan program modernisasi kode kami tidak ada hubungannya dengan algoritma dan segalanya berkaitan dengan sikap. Kami harus melepaskan kebiasaan lama, memikirkan kembali hubungan kami dengan kode dan merangkul budaya rasa ingin tahu. Kami harus berhenti menanyakan jawaban AI dan mulai mengajukan pertanyaan yang tepat. Teknologi adalah bagian yang mudah. Orang terpisah, sekarang itu adalah terobosan nyata.

[ad_2]