Практычныя прытамулкі: Я змерыў кожны элемент “наяснейшай практыкі” на 746 сторонках продукту.
Практычныя прыказкі: Я змерыў кожную «наяўную лепшую практыку» на 746 сторонках продукту: контракты, перакрыццяі і слоты для коду для команд, якія викорыстоўваюць гэты шаблон.
У гэтым керавану практычныя нарады паказваюць, як стварыць работаючую систему пры выкарыстоўванні сыр'ёў: Я перапісаў усе «наякнейшыя практыки» для RAG на 746 стороніх інструкцый да продукту. Толькі чатыры з іх засталіся… Акцэнт ставяцца на крокі, якія можна выконваць, чыстае перакананне ў правільнасці дзействаў, а таксама на код, які можна проста дадаць у репазітарый без неабязковасці з'ясоўвання меты. На стадіі агульнага аналізу неабходна з'явіць вхідныя даны, адпаведальнага за крок і критэрыя завершэння пры перамены коду. Аперацыйныя працавнікі должны магчымае перадзвануць крок з вядомай точкі контролю, не падозрываючы прыхованы стан системы. Неабходна аддокументаваць як шлях успеху, так і шлях вярнення да нормальнага стану. Перапрыбуткі, людзкія перакананні і обработка некоректных паведамленняў є частью самага продукту, а не чымсь, што дадаецца пазней.
Баг, які пераважыў усе гіперпараметры
Калі працуеце над раздзелам «Баг, які пераважыў стадію», спачатку запісайце умовы кантракту: неабходныя даны, сігнал успеху і тое, што выходзіць па частковай нявыполненасці. Такі список контроля дапамагае залічыць пазнейшыя змены ў кодзе. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшоў, прычына нявыполненасці павінна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцюг задач. Перад налаштаваннем запитоў пераканайцеся, наскількі эфектыва система адпаведзядае на фіксованы набор запитаў. Частая зміна запитоў рэдка калі вярнайша слабую эфектывнасць адзысквання інформаціі.
SOFT = "" # U+00AD, the soft hyphen
for manual in manuals:
print(manual.name, extract(manual).count(SOFT))
Найлепшы размер частак — гэта падступ
Калі працюеце над стадзіяй «Найлепшы размер чанка», спачатку запісацеце кантракт: неабяжлівыя вхідныя даны, сігнал успеху і тое, што выходзіць у разе частковага нявыпання. Такі список пераконтроўкаў дапамагае заліцьваты пазнейшыя змены ў кодзе. Спрацоўваеце гэтую стадзію як кантракт межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Даўце назвы артыфактам, задаце правілы пераканання успеху і адмовіцеся ад мовчкавага частковага завершэння. Замерыяўце рівень запамятовання на фіксаванай сэтцы пытанняў прычым регулюванні запрошэнняў. Частае змены запрошэнняў рэдка калі вялікі эфект на слабую систему адзыскання інформацыі.
Вочывыя перамогі, якія коштавалі 22 балы
Калі працуеце над стадзіяй «Явная паводка», спачатку запісайце умовы працы: неабяжлівыя данні, сигнал успеху і тое, што выходзіць у разе частковага нявыпання. Такі список контролю дапамагае заліцьваты пазнейшыя змены ў кодзе. Запісвайце час выканання і кост токена або запиту праза функцыональныя рэзультаты. Відразлівасць костаў з самага пачатку запобегае неспакойным рахункам, калі процес пераходзіць з дэмаверсіі ў спяльныя среды. Замерьце рэткість адказаў на фіксаваны набор запытанняў прычым регулюванні прапаза. Частыя змены прапазаў рэдка калі вядуць да павышэння якосці адказоў. Калі працуеце над стадзіяй «Явная паводка», спачатку запісайце умовы працы: неабяжлівыя данні, сигнал успеху і тое, што выходзіць у разе частковага нявыпання. Такі список контролю дапамагае заліцьваты пазнейшыя змены ў кодзе. Дакументавайце як «шчаслівы» так і «восстанавляючы» маршруты разам. Перапрыбуткі, людзкія контролі і обработка некоректных адказоў ёсць часткай продукту, а не пазнейшым дапрацоўкам.
Альбо востатку прыхіліцеся да абходжэння інференцыі
Метод «Альбо прыскнуць стадію адгукцыі, альбо не працаваць» работае наяўней, калі яго спрыяваць як мерыемую паверхню. Запісаце адна ідеальная транскрыпцыя, адзін прыклад неудачы і прыметку па адвярненню роботы перш чым расширваць масштаб. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не працуе, неудача павінна вказваць на адную адпаведальнасць, а не на заплутаны ланцюг задач. Раздзеляйце правілы часткавання інфармацыі ад правіл яе выявлення. Змена ў одных не павінна прымусваць перапісванне іншых, калі змянююцца паказатэлі якосці.
Оптымізацыя, якая ніколі не працавала, і тое, што ўскрылося пасля яе вылечэння
Оптымізацыя, яка ніколі не працуе на певным этапе, дае найкращыя результаты, калі яе расследжваць як мэтрыку, якая можа быць вымераная. Запісайце адны ідеальны прыклад, адну справу з неудачай і прыметку па поверненню да пярвінскага стану пры розширэнні масштаба. Расследжвайце гэты этап як кантракт межа вхіднымі даннымі і перакананымі выходнымі рэзультатамі. Даўце назвы артыфактам, задаць критэрыя успеху і не падзеўляйцеся частым, непূরным выкананнем задачы. Раздзеліце правілы частковага абрабатавання дадзеных і правілы ўтрымання іх. Змена адных не павінна вымагаць перапісву іншых, калі зменяюцыся показнікі якосці.
Той, хто два разы сабе заплатіў
Этап платных тэстаў працюе наякша, калі яго спрыяглядаць як вимерную паверхню. Зафіксавайце адны ідеальны прыклад роботы, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перад расшырэнням масштаба. Запісвайце часы выканання аперацый, а таксу купонамі чы роезапытамі праз адныя з функцыйнальных рэзультатаў. Відразлівае паказанне вартасцей запобегае неспадзячым рахункам, калі процес пераходзіць з дэмовай среды ў спяльнаныя сераўеры. Раздзеліце правілы частковага обробкі дадзеных ад правіл ўтрымання інформацыі. Змена адных не павинна вымагаць перапісвання іншых, калі змянююцыся паказнікі якосці. Этап платных тэстаў працюе наякша, калі яго спрыяглядаць як вимерную паверхню. Зафіксавайце адны ідеальны прыклад роботы, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перад расшырэнням масштаба. Дакументавайце як шлях успеху, так і шлях вярнэння да нормальнага стану адночасна. Перапрыбуткі, людзкія перакрыцчы і обробка некоректных паведамленняў є часткай продукту, а не чымсь, што дадаецца пазней.
Што на самай працэ пераводзіцца
Для стадіі «Што на самай працо пераводзится» неабяжна ўскладненне вхідных дадзенаў, адпаведальнага за шаг і крэатарыяў выходу пры перадзеі коду. Аператары павінны магчымае перзапускать шаг з вядомай точкі контролю, не падозрываючы прыхованы стан. Лепш выбіраць маленькія, тэставаныя елементы замест большых скрыптов. Калі шаг не выйшаў, прычына неабяжна адносіцца да адной адпаведальнасці, а не да заплутанага ланцацька. Наводзіце тыя часткі тексту, якія фактычна сталі падставай для адпаведнай адказы. Без ціх цитатаў аператары не зможаць разлічыць галюцинацію ад працоўнай памялі індэксавання.
Практычная праця з кодам
Для роботы на гэтым этапе неабяжна падзначыць вхідныя даны, адпаведальнага за кожны крок і критэрыі завершэння пры змяне коду. Аперацыйныя працавнікі должны магчымаць перзапуск кроку з вядомай точкі контролю, не падозрываючы прыхованы стан. Спрыяйце гэтаму этапу як дагавору межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Даўце назвы артыфактам, падзначыць критэрыі успеху і адмовіцеся ад тыхняга частковага завершэння без паведамлення. Цітуйце тыя часткі, якія фактычна сталі падставай для адпаведнай адказы. Без цітатаў аперацыйныя працавнікі не зможуць адразліць галюцинацыю ад прасоў у індэксаванні.
Какі ў вас дзеянне?
Для этапа «Як вы думаеце?» неабяжна прадзефінаваць вхідныя даны, адпраўніка крока і крэтыяры завершэння пры зміне коду. Аперацыйныя працавнікі должны магчыма было перзапускаць крок з вядомай точкі контролю, не спрабоўваючы здагадвацца пра схованы стан. Запісвайце час выконання і кост токенаў або запытаў разам з функцыйнаімі рэзультатамі. Відразлівае прадставленне костаў запобегае неспакойным рахункам, калі процес пераходзіць з дэмавайнага сераўера у спяльныя сераўеры. Указвайце тыя часткі тексту, якія фактычна ляглі воснова для адпаведнай адпаведзі. Без цых цытатаў аперацыйныя працавнікі не можуць разлічыць галюцинацію ад працягу індэксавання. Для этапа «Як вы думаеце?» неабяжна прадзефінаваць вхідныя даны, адпраўніка крока і крэтыяры завершэння пры зміне коду. Аперацыйныя працавнікі должны магчыма было перзапускаць крок з вядомай точкі контролю, не спрабоўваючы здагадвацца пра схованы стан. Дакументавайце як «шчаслівы» шлях, так і шлях вяснавання проблем. Перапрыбуткі, людзкія контрольныя пункты і обработка некоректных запытаў є часткай продукту, а не пасляднім дапрацоўкам.
Чэк-ліст аператыўнай роботы
Этап чэк-ліста аператыўнай роботы працюе наякша, калі яго спрыяваць як мерыемую структуру. Запісаўце адна ідеальная версія, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расширваць сферу дзеяння.
Зберагаўце настройкі праза код аплікацыі. Файлы сяродавішча, хранільнікі секрэтных дадзеных і пазнакі функцый должны знаходзіцца ў адном месцы, якое аператары можаць пераглядаць без неабяжнай чытанняў усіх элементаў.
Раздзеліце правілы часткавага оброблення дадзеных ад правіл ях выявлення. Змена ў одных не павинна прымусваць перапісванне іншых, калі змянююцыся паказатэлі якосці.
Калі дозволяе бюджет, дадзіце тэст на аблікованасць, які перацягвае критычны маршрут у процесе CI з викорыстаннем фіксатыв, а не рэальных платных API.
Документаваўце як успішны, так і патэнцыйны маршруты роботы аплікацыі разам. Перапрыбуткі, людзкія контрольныя пункты і обробка некоректных дадзеных ўжо є часткай продукту, а не елементамі пазнейшага доўрабкі.
Неабяжнае правіле чанкавання і правіле адгэтування. Зменшэнне адна з іх не павінна прымусваць перапісванне другой, калі зменшуюцца паказнікі якосці.
Перш чым пераводзіць систему на вышэйшую версію, заморажавайце версіі, зафіксавайце ідеальны транскрыпт для критычнага маршруту і паверыце крокі аб адвярненні змян. У спакульнаваных средах патрэбны ліміты частоты, пераконтроўкі аб’ектаў і чысты власнік для ротацыі секрэтных дадзеных. Лепш выбіраць простую надзеянасць на стабільнасць, чым хітрыя експерыментальныя прыклады.
Прымітка для 2f798f3ac6f6: не кладзіце ключы прадаўцоў у репазітарый, задаце верхнюю межу токена на кожную сесію і зберагаўце транскрыпты празаўсёды разам з фіксатрамі для ацэнкі, каб пазнейшыя замены моделей заставаліся порównанымі.
Для стадіі 0 пры практыцы зміцнення неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і критэрыя завершэння пры зміне коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не падозрываючы прыхованы стан. Спрыяйце цій стадіі як даговору межаў вхідных даных і перакананых выходных рэзультатаў. Даць назвы артыфактам, узначыць перакананні ў успеху і адмовіцца ад беззвучнага частковага завершэння.
Дзеянні зміцнення 0/879: вымерыць час выканання, класію каштоўкаў і выкарыстоўванне токенав для гэтай прыметкі, а пасля — вырашыць, чы рашыцца застаўіць змяну, ствараючыся на адной фіксованай сэтцы пытанняў, а не на асобістых спазыраннях.
Калі працуеце над першым этапам зміцнення, спачатку запісайте умовы кантракта: неабяцковыя даны, сігнал успеху і тое, што выходзіць на частым неудачам. Такі список дапамагае залічваць пазнейшыя змены коду чыста і прозрачна. Зберагайце настройкі пазней ад коду прыемліка. Файлы сераўнавання, храненні секрэтных данных і флагі функцыйяў должны знаходзіцца ў аднам месцы, куды аператары можаць пераглядаць іх без неабяцковага чытання всіх элементаў.
Дзялённе зміцнення 1/879: вымерыце час выканання, класію памылак і колькасць викорыстоўваных токенав для гэтага пункту, а потым выберыце, чы робіць змену на адной пазначанай базе пытанняў, а не на адной толькі прыватнай інформацыі.
Этап зміцнення 2 працуе лепей, калі яго спрыяваць як меравальную плошчу. Запісайце адны ідеальны прыклад работы, адзін прыклад неудачы і запіску пра вярнэнне да пачатковага стану, перш чым расширваць сферу дзеяння. Валідзіце маленькія, тэставаныя елементы замест большых скрыптав. Калі якісь крок не выйшае, неудача должна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцужок дзеяння.
Дзеянне паўжырання 2/879: зважыце час выканання, класію адказаў і колькасць токенаў, выкорыстаных для гэтага зазначэння, а пасля вырашыце, чы рашыцца застаўіць змяну на аднойчы назначанай сэткі пытанняў, а не на адзінокых прыкладах.
Для 3-й стадзіі паўжырання неабходна перад змянай коду чытаць вхідныя даны, выклікача крока і критэрыя завершэння. Аперацыяныя працавнікі должны магчыма было перазапускаць крок з вядомай точкі контролю, не спрабоўваючы здагадвацца пра схованы стан. Запісвайце час выканання і кост токенаў або запытаў па боку функцыйнаых рэзультатаў. Відкрытая інформацыя пра косты запобегае неспакою, калі процес пераходзіць з дэмаверсіі ў спяльныя сераўы.
Дзеянне паўжырання 3/879: зважыце час выканання, класію адказаў і колькасць токенаў, выкорыстаных для гэтага зазначэння, а пасля вырашыце, чы рашыцца застаўіць змяну на аднойчы назначанай сэткі пытанняў, а не на адзінокых прыкладах.
Калі працюеце над 4-й стадзіяю практыкы забезпечэння надзеі, спачатку запісайце умовы кантракта: неабяжлівыя данні, сігнал успеху і тое, што выканаецца у разе частковага нявыпалення. Такі список контроля дапамагае заліцварыць пазнейшыя змены коду.
Документавайце як шлях успеху, так і шлях вярнення да нормальнага стану. Перапрыбуткі, людзкія перакрыцця і обробка некоректных паведамленняў ёсць часткай продукту, а не пазнейшым дапрацоўкам.
Дзеянні практыкы забезпечэння надзеі 4/879: вымерайце час выканання, класыя ошибкі і колькасць викорыстоўваных токенав для гэтай практыкі, а потым выберайце, чы робіць змены на аднойчы заданых крэтарыях, а не на аднойчы прыкладах.