Галоўная / Артыкулы

Ваш RAG-канвеер не павольны — у ім залішне шмат шардаў

Ваш RAG-канвеер не павольны, ён перашардаваны. Як шарды вектарнага пошуку разыходзяцца веерам, дзень, калі індэксаванне спынілася, і як менш шардаў вярнулі нармальную затрымку.

Выдавец: REACTAPP.TOP14 хв чытання3231 слоў

Крыніцы: Your RAG Pipeline Isn’t Slow. It’s Over-Sharded.

У гэтым керавані зноў ствараецца парадокс ад сыр'ёў да рабочай сістэмы для: ваша RAG-паіплайн не ў спадзе, яна проста занадта расшарованая. Акцэнт ставіцца на крокі, якія можна выконваць, на чыстае перакананне і на код, які можна проста дадаць у рэпазітарый без неабяснення меты. У стадыўцы агляду неабходна практычна задаць вхідныя даны, адпаведальнага за крок і крытэрыя завершэння прычымкі перад зменай коду. Аператары должны магчымае перадзваніць крок з вядомай точкі контролю, не падозруючы пра схованы стан. Конфігурацыю трэба залічыць парадзельна ад коду прыкладнення. Файлы сераўіса, хранільнікі секрэтных дадзеных і флагі функцый должны знаходзіцца ў аднам месцы, якое аператары можаць пераглядаць, не чытаяўшы весь граф.

Мы трацімо занадто много часу на раздумвання пра мадэлях

Калі працуеце над стадзіяй «Мы вітрачаем занадто многа», спачатку запісайце контракт: неабяжлівыя даны, сігнал успеху і тое, што выходзіць у разе частковага невыпання. Такі спіс пераконтролюе чыстасць пазнейшых змян у кодзе. Документавайце як шлях успеху, так і шлях вярнення. Перапрыбуткі, людзкіе контралі і обработка некорэктных паведамленняў ёсць часткай продукту, а не пазнейшым дапрацоўкам. Зберагайце у кэшы стабільныя інструкцыі сістэмы і схемы інструментаў. Перадача таго ж самога прамэра ёсць частым выклікам зношвання рэсурсаў.

Тыповая архітэктура RAG

Калі працуеце над стадзіяй «Тыповая архітэктура RAG», спачатку запісайце умовы вікорыстоўвання: неабходныя даны, сігнал успеху і тое, што выходзіць у разе частковага абякання. Такі спіс дапамагае залічыць змяны ў кодзе пазнейша. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок абякае, прычына абякання павінна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцюг задач. Перад налаштаваннем запітоў пераканайцеся ў рэверыі на фіксаванай сэтке запытаў. Частае зміненне запытоў рэдка калі-небудзь выправляе слабкую эфектыўнасць адзысквання інформацыі.

Documents
    ↓
Chunking
    ↓
Embeddings
    ↓
Vector Store
    ↓
Retriever
    ↓
LLM
Amazon S3
    ↓
Document Processing
    ↓
Amazon Bedrock Embeddings
    ↓
LangChain
    ↓
Amazon OpenSearch Service
    ↓
LLM

Дзень, калі была абрана індэксацыя

Калі працуеце над стадзіяй «Дзень, калі была абрана індэксацыя», спачатку запішыце угоду: неабяжлівыя даныя, сігнал успеху і тое, што выходзіць на частым неудачам. Такі спіс контроля дапамагае заставіць пазнейшыя змены коду быць чыстымі. Спрыятлівае ставленне да гэтай стадзіі як да угоды межа данымі і перакананымі выходамі. Дайце назвы элементам, задаце крытэрыі успеху і не прыймайце частаг завершэння без паведамлення. Змяркуйце рывень запам’ятовання на фіксаванай сэтцы пытанняў прычым рэгулюванні запітоў. Частае змены запітоў рэдка калі вылечвае слабкую сістэму пошуку. Калі працуеце над стадзіяй «Дзень, калі была абрана індэксацыя», спачатку запішыце угоду: неабяжлівыя даныя, сігнал успеху і тое, што выходзіць на частым неудачам. Такі спіс контроля дапамагае заставіць пазнейшыя змены коду быць чыстымі. Зберагаеце настройкі за межамі коду прыемлівання. Файлы сяродавішча, хранільнікі секрэтных дадзенняў і флагі функцый должны знаходзіцца ў аднам месцы, якое аператары можаць пераглядаць без неабяжлівага чытання всей структуры.

Validation Failed:
this action would add [10] total shards,
but this cluster currently has [992]/[1000]
maximum shards open

Аналагія з кафэ

Мадэль аналагіі з кафэ працюе найкрашча, калі яе спрыяваць як меравальную паверхню. Запісаце адна ідэальная версія, адзін случай неудачы і прыметкі па поверненню да пачатковага стану пры розшырэнні масштаба. Дакументавайце як успешны, так і варыянт вярнення да нормальнага стану. Перапрыбуткі, людзкія контрольны пункты і обработка некорэктных паведамленняў ёсць часткай продукту, а не элементамі пазнейшага доўнеравання. Раздзеляйце правілы часткавай обработкі і правілы выкарыстоўвання дакументацыі. Змена аднаго з іх не должна вымагаць перапісвання другога, калі зменяюцца паказнікі якосці.

10 Espresso Machines
5 Customers

Скрытыя выкладкі індэксаў

Прыем «Скрытыя выкладкі» працуе наўздоўж калі яго спрыяваць як мерыемую структуру. Запісаўце адну ідэальную версію, адзін прыклад неудачы і прыметку па адкату перш чым расшырваць масштаб. Валічыце маленькія, тэставаныя елементы замест большых скрыптаў. Калі якісьць крока падводзіць, неудача должна вказваць на адну конкрэтную адпаведальнасць, а не на заплутаны ланцужок задач. Раздзеляйце правілы часткавання інфармацыі ад правілаў яе выявлення. Змена ў одных не должна прымусваць перапісванне другых, калі зменяюцца паказнікі якосці.

Dataset A → Index A
Dataset B → Index B
Dataset C → Index C

Стандарты OpenSearch, працоўныя без адносу да іх

Этап стандартных налашчэннях OpenSearch працуе найкрашча, калі яго спрыяваць як мерыемую плошчу. Зафіксавайце адны ідэальны прыклад, адзін кейс неудачы і прыметку па вярнэнню да пачатковага стану пры расшырэнні масштаба. Спрыяйце гэтым этапам як даговор межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Дайце назвы артыфактам, задаце крытэрыя успеху і адмовіцеся ад тыхнага частковага завершэння без паведамлення. Раздзеліце політыку часткавага апрацоўвання дадзеных ад політыкі ўзяць іх. Змена адной з яных не павінна вымагаць перапісвання другой, калі зменяюцыся показнікі якосці. Этап стандартных налашчэннях OpenSearch працуе найкрашча, калі яго спрыяваць як мерыемую плошчу. Зафіксавайце адны ідэальны прыклад, адзін кейс неудачы і прыметку па вярнэнню да пачатковага стану пры расшырэнні масштаба. Зберагачыце налашчэння пазначкі за межамі коду прыемліка. Файлы сяродовысці, хранільнікі секрэтных дадзеных і флагі функцыйяў павінны знаходзіцца ў адном месцы, якое аператары можаць пераглядаць без неабяжнага чытання всіх дадзеных.

{
  "settings": {
    "index": {
      "knn": true
    }
  }
}
number_of_shards
number_of_replicas
5 Primary Shards
1 Replica
10 Total Shards Per Index

Чаму стратэгія шардавання мае значэнне пры запуске

На этапе «Чаму стратэгія шардавання мае значэнне» неабходна дэфініцыя вхідных даных, адміністратара крока і крэтэрыяў завершэння пры зміне коду. Аператары должны магчыма было перзапускаць крок з вядомай точкі контролю, не падозрываючы прыхованы стан. Неабходна адначасовая документацыя успішнага і варыянта вярнення да нормальнасці. Перапрыбуткі, людзкія перакрыцця і апрацоўка некорэктных паведамленняў ёсць часткай продукту, а не чымсь, што дадаецца пазней. Паказвайце часткі тэксту, якія фактычна лежаць у падставе адпаведнай адказы. Без ціх цытатаў аператары не зможаць розразліць галюцынацыю ад прасоў у індэксаванні.

number_of_shards

Рэкамендацыі ўзьламвання дадзеных у AWS

У этапы рэкамендацыяў ўзьламвання дадзеных у AWS неабходна практычна адначасова візначыць параметры вхідных дадзеных, адпаведальнага за выкананне крока і крэтыяры завершэння працы перад змінайом коду. Аператары должны магчымае перадзваніць крок з вядомай точкі контролю, не прабуючы спадарацца пра схованы стан. Лепш выбіраць маленькія, тэставаныя елементы заместо велікіх скрыптав. Калі крок не выйшае, прычына неудачы должна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны працэс. Прыкладвайце цітаты з тых частак, якія фактычна лежалі в основе адпаведных адказаў. Без цітатаў аператары не зможаць разлічыць галюцынацію ад працягу праз прычыны, зв’язаныя з індэксаванням.

Работы, якія фокусуюцца на пошуку

Для этапы «Праца з акцэнтам на пошук» неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крэтыры завершэння пры перадзеі коду. Аперацыйныя працавнікі павінны магчымаецца перазапускаць крок з вядомага пункта контролю, не спрабоўваючы здагадвацца пра схованы стан. Спрацавляйце з гэтай стадыяй як з кантрактом межаў вхідных дадзеных і перакананых выходных рэзультатаў. Даць назвы артыфактам, узначыць крэтыры успеху і адмовіцца ад беззвучнага частковага завершэння. Цітаваць тыя часткі, якія фактычна лежалі в основе адпаведнай адказы. Без цітатаў аперацыйныя працавнікі не можуць разлічыць галюцынацію ад працявы індэксавання. Для этапы «Праца з акцэнтам на пошук» неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крэтыры завершэння пры перадзеі коду. Аперацыйныя працавнікі павінны магчымаецца перазапускаць крок з вядомага пункта контролю, не спрабоўваючы здагадвацца пра схованы стан. Храніце настройкі праза код аплікацыі. Файлы сераўіса, хранільнікі секрэтных дадзеных і флагі функцый павінны знаходзіцца ў аднам месцы, якое працавнікі можуць аўдытаваць, не чытаючы весь код.

h.

10–30 GB

Рабочыя навантажэння, спрамованыя на запіс

Калі працуеце над стадзіяй Рабочых навантажэнняў, спрамованых на запіс, спачатку запішыце умовы: неабяжныя даныя, сігнал успеху і тое, што выканаецца у разы ўзельнага неякшага рашэння. Такі чарткі дапамагае заліцьваты пазнейшыя змены ў кодзе. Дакументаваць трэба як шлях успеху, так і шлях вярнення да нормы. Перапрыбуткі, людзкія контралі і обработка некорэктных паведамленняў ёсць часткай продукту, а не пазнейшым дапрацоўкам. Перад налаштаваннем запітаў пераканайцеся ў правільнасці адзыву на фіксаваны набор запітаў. Частая зміна запітоў рэдка калі вярнайце слабкую эфектыўнасць адзыву.

30–50 GB

Пастка чрэзмернага шардавання

Калі працуеце над стадзіяй «Пастка чрэзмернага шардавання», спачатку запісайце контракт: неабяжлівыя даны, сігнал успеху і тое, што выходзіць пад частыя неудачы. Такі спіс контроля дапамагае заліцьварыць пазнейшыя змены ў кодзе. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшоў, неудача должна вказваць на адну адпаведальнасць, а не на заплутаны ланцужок задач. Перад налаштаваннем запітоў пераканайцеся, насколькі эфектыва ўстаўка адпаведных дадзеных на фіксованы набор запітаў. Частая змена запітоў рэдка калі лепшае слабую эфектывасць выкарыстоўвання дадзеных.

100 Indices
5 Primary Shards
1 Replica
1000 Shards
CPU: Healthy
Memory: Healthy
Disk: Healthy

Правільны спосаб вычыслення шардаў

Калі чыніцеся паэтап «Вычысленне шардаў правальна», спачатку запішыце кантракт: неабходныя даныя, сігнал успеху і тое, што выходзіць у разе частковага нявыпання. Такі спіс контроля дапамагае заставіць пазнейшыя змены коду быць чыстымі. Спрыятлівае ставленне да гэтага паэтапу як да кантракта межы вхіднымі данымі і перакананымі выходамі. Даць назву артыфактам, задаць правіла пераканання успеху і не падзеўляцца частковым завершэнням без паведамлення. Змяроўваце рэкалі на фіксаваным наборы пытанняў прычынай налаштавання запітоў. Частае змены запітоў рэдка калі вярнуюць слабкую эфектыўнасць адзысквання інформацыі. Калі чыніцеся паэтап «Вычысленне шардаў правальна», спачатку запішыце кантракт: неабходныя даныя, сігнал успеху і тое, што выходзіць у разе частковага нявыпання. Такі спіс контроля дапамагае заставіць пазнейшыя змены коду быць чыстымі. Храніце налаштаванні параду ўнеўхідным кодам прыкладнення. Файлы сераў, сховішчы секрэтных даных і флагі функцый павінны знаходзіцца ў аднам месцы, якое аператары можаць пераглядзець без неабходнасці чытання всей структуры.

Primary Shards =
(Daily Data Volume × 1.25)
÷ Target Shard Size
300 GB/day
÷ 30 GB
≈ 10 Primary Shards

Рэплікі не завжды дапамагаюць

Рэплікі не завжды ўсунуць проблемы, і яны работаюць наяўней калі ўваходзяць у склад меркаваных параметраў. Запісайце адну успешную сітуацыю, адзін прыклад неудачы і прыметкі па поверненню да пярвоначальнага стану пры расшырэнні масштаба. Дакументавайце як успешны, так і вярнучыся шляхі працы. Перапрыбуткі, людзкі контроль і обработка некорэктных паведамленняў ёсць часткай продукту, а не элементамі пазнейшага доўнелення. Раздзельна ставіце політыку часткавай обработкі і політыку выкарыстоўвання дакументаў. Змена адной з іх не должна вымагаць перапісву другой, калі зменяюцыся показнікі якосці.

1 Node
1 Primary
1 Replica
Primary → Assigned
Replica → Unassigned
number_of_replicas = 0

Незгадваны герой: шаблоны індэкса

Этап стварання індэкса «Незгадваны герой» працюе найэфектывней, калі яго розглядаць як меркавыя елемент. Зберагачыце адны ідэальны прыклад, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расшырваць масштабы. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, прычына неудачы павінна вказываць на адную адпаведальнасць, а не на заплутаны ланцюг задач. Раздзеляйце правілы фрагментавання інфармацыі ад правіл яе выкарыстоўвання. Змена адных не павінна вымагаць перапісвання іншых, калі змянююцца паказчыкі якосці.

OpenSearchVectorSearch.from_documents(...)
{
  "index_patterns": ["my_index_*"],
  "template": {
    "settings": {
      "index": {
        "number_of_shards": 1,
        "number_of_replicas": 0
      }
    }
  }
}

Паказнікі, якія кожная команда RAG павінна сочыць

Кожная стадзія команды RAG працуе наяўней, калі яе спрыяваць як меравальную плошчу. Зберагучы аднай «золатай» транскрыпцыі, адны прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расшырваць масштабы. Спрыявайце гэтую стадзію як кантракт межа вхіднымі дадзеннямі і перакананымі выходнымі рэзультатамі. Даўце назвы артыфактам, задаць крытэрыя успеху і адмовіцеся ад тыхняй частковай працы без паведамлення. Раздзеліце правілы чанкавання ад правілаў выкарыстоўвання дадзенняў. Змена аднаго з іх не павінна вымагаць перапісвання другога, калі зменяюцца паказнікі якосці. Кожная стадзія команды RAG працуе наяўней, калі яе спрыяваць як меравальную плошчу. Зберагучы аднай «золатай» транскрыпцыі, адны прыклад неудачы і запіс пра вярнэнне да пачатковага стану, перш чым расшырваць масштабы. Зберагачы канфігурацыю параду ўнутры коду прыкладнага програмы. Файлы сяродавішча, хранільнікі секрэтных дадзенняў і флагі функцый павінны знаходзіцца ў адном месцы, куды аператары можаць адбавляць аўдыт, не чытаючы весь граф.

Што, як пазней знадобяцца больш шардаў?

Для ўрагу «Што, як вам патрэбна дапамога?» неабходна перад змянай коду адзначыць вхідныя даны, адпаведальнага за крок і крытэрыя завершэння. Аператары должны магчымае запускаць крок з вядомай точкі контролю, не прабуючы вычысляць схованы стан. Неабходна адзначыць як шлях успеху, так і шлях вярнення да нормы. Перапрыбуткі, людзкія перакрыцця і апрацоўка некорэктных паведамленняў ёсць часткай продукту, а не дадатковымі элементамі пасля яго стварэння. Паказваць трэба тыя часткі тэксту, якія фактычна лежаць у падставе адпаведнай адказы. Без ціх цытатаў аператары не зможаць розразліць галюцынацыю ад працягу праз прычыны, зв’язаныя з індэксаванням.

Reindex API

Для этапы Reindex API неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крэтыры завершэння пры змяне коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не падозрываючы схованы стан. Лепш выбіраць маленькія, тэставаныя елементы замест большых скрыптов. Калі крок не выконваецца, прычына неудачы должна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны працэс. Прытамульвайце тыя часткі тэксту, якія фактычна лежаць у падставе адпаведнай адказы. Без ціх прытамульванняў аператары не зможаць розразліць галюцынацыю ад працягу індэксавання.

Split Index API

Для этапы API Split Index неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крэтыры завершэння пры перадзеі коду. Аперацыйныя працавнікі должны магчымае запускаць крок з вядомай точкі контролю, не падозрываючы прыхованы стан. Спрацавляйце з гэтай стадыяй як з кантрактом межа вхіднымі данымі і перакананымі выходнымі рэзультатамі. Даўце назвы артыфактам, узначыце перакананні успеху і адмовіцеся ад бяспрэчнага частковага завершэння. Цітуйце тыя часткі, якія фактычна сталі падставай для адпаведнай адказы. Без цітатаў аперацыйныя працавнікі не зможуць адразніць галюцынацыю ад прасоў у індэксаванні. Для этапы API Split Index неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крэтыры завершэння пры перадзеі коду. Аперацыйныя працавнікі должны магчымае запускаць крок з вядомай точкі контролю, не падозрываючы прыхованы стан. Зберагачыце настройкі за межамі коду прыемленае. Файлы сераўіса, хранільнікі секрэтных дадзеных і флагі функцыяў должны знаходзіцца ў аднам месцы, якое працавнікі можуць аўдытаваць, не чытаючы весь граф.

Шаблоны індэксаў

Калі працуеце на стадыі шаблонаў індэксаў, спачатку запішыце умовы кантракту: неабходныя даны, сігнал успеху і тое, што выканаецца у разы ўзельнага неякшэння. Такі чарткі дапамагае заліцьваты змяны ў кодзе пазней. Дакументаваць трэба як шлях успеху, так і шлях вярнення да стану нормы. Перапрыбуткі, людзкія контралі і обработка некорэктных паведамленняў ёсць часткай продукту, а не дадатковым элементам для паліровання. Перад налаштаваннем запітоў памерыце рэкалі на фіксаванай сэтке запытаў. Частае змена запытаў рэдка калі вярнайце слабую эфектыўнась ціскання інформацыі.

OpenSearch Serverless

Калі працуеце з фазай OpenSearch Serverless, спачатку запісаце кантракт: неабяжлівыя даныя, сігнал успеху і тое, што выходзіць пад частковыя неудачы. Такі спіс контроля дапамагае заліцьварыць пазнейшыя змены коду. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выйшае, неудача должна вказваць на адзіну абяжлівасць, а не на заплутаны працэс. Перад налаштаваннем праптыкаў пераканайцеся ў рэкале на фіксаваным наборы пытанняў. Частае змена праптыкаў рэдка калі вярнайце слабкую эфектыўнасць пошуку.

Вярнучы шарды без вытрымкі дадзенняў

Калі працуеце над стадзіяй «Вярнучы фрагменты без адарожэння», спачатку запісайце контракт: неабяжлівыя вхідныя даны, сігнал успеху і тое, што выходзіць у разе частковага невыпання. Такі спіс контроля дапамагае заліцьваваць пазнейшыя змены ў кодзе. Спрэцьвачайце гэтую стадзію як контракт межаў вхідных даных і перакананыя выходныя даны. Дайце назвы артыфактам, задацьце крытэрыя успеху і не падтрымайце тыхі частковыя завершэння. Замерайце рэкалі на фіксаваным наборэ запітанняў прычынай налаштавання прапты. Частае змены прапты рэдка калі вярнуць слабкую эфектыўнасць адзысквання інформацыі. Калі працуеце над стадзіяй «Вярнучы фрагменты без адарожэння», спачатку запісайце контракт: неабяжлівыя вхідныя даны, сігнал успеху і тое, што выходзіць у разе частковага невыпання. Такі спіс контроля дапамагае заліцьваваць пазнейшыя змены ў кодзе. Зберагайце налаштаванні за межамі коду прыемлівача. Файлы сяродавішча, хранільнікі секрэтных даных і флагі функцый должны знаходзіцца ў аднам месцы, якое аператары можаць пераглядаць без неабяжлівага чытання всей структуры.

Стратэгія міграцыі

Этап Стратэгіі міграцыі працуе наяўней, калі яго спрыявае можласць вімеры. Зафіксавайце адну успешную транскрыпцыю, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расшырваць сферу дзеяння. Дакументавайце як успешны, так і вярнучыся шляхі разам. Перапрыбуткі, людзкія контрольныя пункты і обработка некорэктных паведамленняў ёсць часткай продукту, а не элементамі пазнейшай дапрацоўкі. Раздзеліце політыку частковай обработкі дадзеных ад політыкі ўтрымання іх. Змена адной з яных не должна вымагаць перапісвання другой, калі зменяюцыся паказнікі якосці.

Old Index (5 Primary, 1 Replica)
           ↓
Create New Index (1 Primary, 1 Replica)
           ↓
Reindex Documents
           ↓
Validate Counts
           ↓
Switch Alias
           ↓
Delete Old Index

Чаму такы падход быў разумны

Этап «Чаму такы падход» работае найкрашча, калі яго розглядаць як вімерную плошчу. Запісаўце адна ідэальная транскрыпцыя, адзін прыклад неудачы і прыметку па адвярненню перад расшырэнням масштаба. Валіце маленькія, тэставаныя елементы замест большых скрыптов. Калі якісь крок не выходзіць, прычына неудачы павінна вказываць на адную адпаведальнасць, а не на заплутаны ланцюг задач. Раздзеляйце правілы часткавання і правілы выкарыстоўвання дадзеных. Змена адных не павінна вымагаць перапісву іншых, калі зменяюцца паказнікі якосці.

Маленькі практычны урок

Этап «Маленькія практычныя урокі» працюе найэфектывней, калі яго спрыяваць як меравальную плошчу. Зафіксавайце адны ідэальны прыклад, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расшырваць масштабы. Спрыявайце гэты этап як кантракт между вхіднымі данымі і пераканаленымі выходнымі рэзультатамі. Дайце назвы артыфактам, задаць крытэрыя успеху і не падзеўляйцеся частым, непূরным выкананнем задач. Раздзеліце політыку часткавага абрабатвання дадзеных і політыку ўзяць іх. Змена адной з яных не должна прымусіваць перапісванне другой, калі зменяюцыся показнікі якосці. Этап «Маленькія практычныя урокі» працюе найэфектывней, калі яго спрыяваць як меравальную плошчу. Зафіксавайце адны ідэальны прыклад, адзін прыклад неудачы і запіс пра вярнэнне да пачатковага стану перш чым расшырваць масштабы. Зберагаюце настройкі пазначкай за межамі коду прыемліка. Файлы сяродавішняе сераўісу, хранілішчы секрэтных дадзеных і флагі функцый должны знаходзіцца ў аднам месцы, куды аператары можаць аўдытаваць іх, не чытаючы весь структураны код.

Выведзеныя урокі

У стадыі «Урокі, якія былі вывучаны», перш чым зменіць код, неабяжна візначыць вхідныя даны, адпаведальнага за крок і крытэрыі завершэння. Аперацыйныя працавнікі должны магчымаць перзапускаць крок з вядомай точкі контролю, не спрабоўваючы здогадвацца пра схованы стан. Неабяжна задокументаваць як «шчаслівы» шлях, так і шлях вярнення. Перапрыбуткі, людзкіе перакрыцця і апрацоўка некорэктных паведамленняў ёсць часткай продукту, а не чымсь, што дадаецца пазней. Паказваць часткі тэксту, якія фактычна лежалі в основе адпаведнай адказы. Без цых цітатаў аперацыйныя працавнікі не зможуць розразліць галюцынацыю ад прасоў у індэксаванні.

Рычыменты і далейшая літэратура

У стадыі «Дапаможныя матэрыялы/Даальшая літаратура» неабходна ўзначыць вхідныя даны, адпаведальнага за крок і крытэрыя завершэння пры перадзеіснавленні коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю, не прабуючы спадароўваць схованы стан. Лепш выбіраць маленькія, тэставаныя елементы заместо велікіх скрыптав. Калі крок не выйшоў, прычына неудачы павінна вказываць на адну конкрэтную адпаведальнасць, а не на заплутаны працэс. Прыкладзіце фрагменты, якія насправды ляглі в основу адпаведнай адказы. Без цых цітатаў аператары не зможуць розразліць галюцынацыю ад працягу індэксавання.

OpenSearch & Sharding

Для этапы шардавання OpenSearch неабяжна ўзначыць вхідныя даны, адпаведальнага за этап і крэтыры завершэння пры змяне коду. Аператары должны магчымаць перзапуск этапу з вядомай точкі контролю, не падозрываючы прыхованы стан. Спрыяйце цій этапы як кантракту межаў вхідных і перакананых выходных дадзенняў. Даўце назвы артыфактам, узначыце перакананні ў успеху і адмовіцеся ад тыхнай частковай завершэння без паведамлення. Цітуйце тыя часткі, якія фактычна лежалі в основе адпаведнай адказы. Без цітатаў аператары не зможаць разлічыць галюцынацію ад працягу індэксавання.

Найлепшыя практыкі шардавання AWS OpenSearch

Для стадыі AWS OpenSearch Sharding Best неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крытэрыі завершэння пры перадзеяванні коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю без неабяжнага вычыслення захаваных станоў.

Ліміты Amazon OpenSearch Service

Для стадыі Ліміты Amazon OpenSearch Service неабяжна ўзначыць вхідныя даны, адпаведальнага за крок і крытэрыі завершэння пры перадзеяванні коду. Аператары должны магчымаць перзапуск кроку з вядомай точкі контролю без неабяжнага вычыслення захаваных станоў.

API налаштавання кластэра OpenSearch

Шаблоны індэксаў OpenSearch

Пошук вектараў & RAG

Пошук вектараў у OpenSearch

Інтэграцыя LangChain з OpenSearch

Базы знаных Amazon Bedrock

Аператывыя задачы & масштабаванне

Калектываванне стану індэксаў у OpenSearch (ISM)

Блог AWS пра большыя даны

Дасведчэнні OpenSearch

Рэкамендаваныя кнігі

Праектаванне прыложэнняў, якія выкарыстоўваюць большыя даны

Внутрошняя структура баз дадзенаў

Асновы інжынерыі дадзенаў

Заключныя заўважэнні

Чарткі для аператывай работы