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

RAG-сістэмы, якія сапраўды працуюць у прадакшне

RAG-сістэмы для прадакшну: загрузка дакументаў, разбіўка, эмбедынгі, вектарная база, пошук і генерацыя LLM, якая трымаецца крыніц.

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

Крыніцы: Building RAG Systems That Actually Work in Production

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

Што такое RAG?

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

Архітэктура RAG, якая працуе ў прымэтных умовах

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

1. Пачніце з прыемкі дакументаў

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

Трубопрацэс абрабаткі продукцыі

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

2. Разбіўка на часткі мае большое значэнне, ніж здаецца

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

3. Embeddings Не Яўляюцца Магіяй

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

4. Толькі векторны пошук не завжды дастатні

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

5. Пераранжаванне можа зробіць вялікую розніцу

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

6. Тэхніка стварэння кантэксту мае значэнне

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

Top 10 chunks → LLM
Top 50 candidates
        ↓
Reranking
        ↓
Filtering
        ↓
Deduplication
        ↓
Context compression
        ↓
Top relevant context
        ↓
LLM

7. Фундамент для LLM

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

Answer using only the provided context.
If the context does not contain enough information
to answer the question, say that the information
is unavailable.Do not invent facts.When possible, cite the source used to answer.

8. Цітаты — гэта не проста функцыя інтэрфейсу

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

9. Контроль даступу павінен існаваць пры ўзяцце дадзеных

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

Public Documents
Internal Documents
Finance Documents
HR Documents
Executive Documents
Legal Document
User
 ↓
Search Everything
 ↓
LLM
 ↓
Filter response
User Identity
      ↓
Permissions
      ↓
Filtered Retrieval
      ↓
Relevant Documents
      ↓
LLM

10. Адзынак РАГ – гэтыя нехватны ўровень

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

Адзынак пошуку

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

Адзынакоўка гэнеравання

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

11. Створыце рэальны набір дадзенняў для адзынакоўкі

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

Question
Expected Answer
Relevant Document
Relevant Chunk
Difficulty
Category
500–1,000 representative questions

12. Возможнасць назірання ўскладнена неабходная

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

User Query
      ↓
Query Transformation
      ↓
Retriever
      ↓
Retrieved Documents
      ↓
Similarity Scores
      ↓
Reranker
      ↓
Final Context
      ↓
Prompt
      ↓
LLM
      ↓
Final Response

13. Час адпаведзьбы і косцты маюць значэнне

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

Quality
   ↕
Latency
   ↕
Cost

14. Раздзеліце каналы прабрамлення даных і запітоў

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

Офлайн-збір

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

Documents
 ↓
Parsing
 ↓
Cleaning
 ↓
Chunking
 ↓
Metadata
 ↓
Embeddings
 ↓
Index

Запыт у рэальным часе

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

User
 ↓
Query
 ↓
Retrieval
 ↓
Reranking
 ↓
Context
 ↓
LLM
 ↓
Response

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

15. Не ігноравайце версіюванне дакументаў

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

{
  "document": "refund-policy",
  "version": "2026.2",
  "effective_date": "2026-06-01",
  "status": "active"
}

16. Частыя памылкі ў RAG

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

“Проста пакладзіце все ў базу дадзеных вектараў.”

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

«Іспользуйце большыя розмеры фрагментаў.»

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

«LLM сама ўсё разберэцца».

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

“Для пошуку дапаможае вектарны пошук.”

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

«Мы оценім вручную».

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

«Цітаты можна дадаць пазней.»

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

“Безпеку можна адрабатваць на слою UI.”

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

«Што большае колькасць кантэксту, тым лепяй».

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

План RAG, гатовы для працы ў прымэтных умовах

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

Documents
   ↓
Parsing
   ↓
Cleaning
   ↓
Metadata
   ↓
Chunking
   ↓
Embedding
   ↓
Vector / Search Index

Спіс контроля для RAG у працэўнай суперактуальнасці

Калі працюеце над стадзіяй The RAG Production Checklist, спачатку запісайце угоду: неабяжлівыя даныя, сігнал успеху і тое, што выканаецца у разе частковага нявыполнення. Гэты чэк-ліст дапамагае заставіць пазнейшыя змены коду быць чыстымі. Документавайце як шлях успеху, так і шлях вярнення. Перапрыбуткі, людзкія контраліны і обработка некорэктных паведамленняў ёсцю часткай продукту, а не пазнейшым дапрацоўкам. Змяржывайце рэкалі на фіксаваным наборы пытанняў прычымо да налаштавання прапты. Частае змена прапты рэдка калі вярнайце слабкую способнасць да выкарыстоўвання інформацыі. Калі працюеце над стадзіяй The RAG Production Checklist, спачатку запісайце угоду: неабяжлівыя даныя, сігнал успеху і тое, што выканаецца у разе частковага нявыполнення. Гэты чэк-ліст дапамагае заставіць пазнейшыя змены коду быць чыстымі. Спрыятлівайце гэтай стадзіі як угоды межа данымі і перакананымі выходамі. Назвайце артыфакты, задаце крытэрыя успеху і адмовіцеся ад тыхоўага частковага завершэння.

Даны

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

Утрыманне

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

Стварэнне

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

Безпека

Ацэнка

Аператыўнае кераванне

Заключныя меркі

Documents + Embeddings + Vector Database + LLM = RAG

Чэк-ліст для аператыўнай працы