Чаму простасць перамагае складнасць у сучасных архітектурах AI-агентаў
У этай статыцэ расследуецца троўка аргументаў 2024 года проты баз дадзеных вектарных, памяці гіперграфаў і складнасці оркестрацыі, паказваючы, што простэйшыя системы часта прадтаюць заінтэресаваныя стакі агентаў.
Чытаючы достатню колькасць матэрыяла пра агенты AI за гэты год, раней чым паследуе які-небудзь аргумент, выяўляецца певны законамітнасць. Практычна всё, што пропанаваецца, ўскладнюе систему. Дадаёцца шар памяці, дадаецца граф, дадаёцца фрэймворк для керавання, дадаёцца лінія обробкі данных з трыма стадзіямі переранжавання. Даўаецца больш агентоў, задачай якіх є нагляд за тыми агентамі, якія ўжо створены. Пад усім гэтым лежыць тая ж незгадваная пераконанасць: што чым больша складнасць, тым больш прагрэс, і якщо ваша система не ўскладнела больш, чым паловы год назад, значы вы атрымліваеце задоўгу.
Агент з розбудовы команд, верагчайна, ўжо склікаў часткі гэтай ж самой архітектуры і можа быў тады практычна апрацаваў каліянне дзеякіх з тых выбораў. Таму, калі ў гэтым годзе з’явілася калька доказоў, якіе ставілі працупаконтрольную тэзу — адносна тое, што гэтыя складныя дадаткі, верагчайна, не былі варты такіх зусиль — яны заслугавалі на большую увагу, чым зазвычай прыносзяць загаловкі на кшталт „вам гэта не патрэбна“. Большасць контрапартыяных технічных статэй ёсць проста гіперболай, якія выказваюць аднаковую впэўненасць, але не маюць достатку доказоў. Гэтыя тры аргументы былі іншымі. Кожны з іх стоўіць на чымсь пераканальным: на рэзультатах теставання, структурным аргументе чы простай характарыстыцы таго, як фактычна выглядае работа ў практыцы ў кожны дзень. Гэта стандарт, які трэба застосавіць у гэтым случае, і гэты стандарт будзе прытрымлівацца весь рэшта частка гэтага твору.
Прыгаю тры прыклады. У кожнам з іх система праглаў большай архітектуры, калі рэальная проблема была значна менш значным пытаннем.
Першы прыклад: ваш агент, верагодна, не патрэбуе базы дадзеных на векторах
Выбір сэрвісу для зберагчання дадзеных агента, падтрымванага базай на векторах, зазвычай прымэняецца за секунды. Хтось выказвае трэбаванне: «Агент должен памятаць рэшты між сесіямі», і аўтаматычны адказ — укладзіць данні, зберагчыць іх і аднаходзіць па сэмабільнасці. Гэта становіцца стандартам не таму, што хтось перапытваў гэты спосаб у праце з іншымі варыянтамі, а таму, што ў кожным падручніку так і робяць.
Гэта падзея якраз і была пераканалена ў адным з матэралאў гэтага года — статыце Анубхава «Ваш агент AI не патрабуе базы дадзеных у вектарнай форме». Рэзультат, які варта запамятаць, паўстануў у рамках тэста LoCoMo: базовы прыемліванне, якое складалася толькі з каталогу файлаў у простай формате, якія шукаліся за дапамогою grep, перамогла калькольваныя, спецыяльна створаныя продукты для зберагчэння дадзеных, саме на тым жа тэсте, па якому ўжо ацэнюваліся гэтыя продукты. Гэта не была фальсівая пораўнання, створаная для таго, каб павысіць рэйтинг. Болей сложныя системы, дзеякія з яых аб’еднавалі эмбеддынгі, пошук сэродзеленасці і нават память у графічнай структуре, таксама прасіліся перед тым, што можна было стварыць за аднаго дня.
Калі гэты рэзультат стане зрозумелым, адказ перестае выглядаць нечаканым. Вектарная сэроднечнасць — это тэхніка адзыскання, а не тэхніка разумавання. Яна чырпаець тэксты, якія семантычна блізкія да запиту. Аднак яна паслаба ў тых задачах, якія дзейсна выкарыстоўваюць памяць, напрыклад у відлічэнні таго, што факт, зазначаны трохі больш чым тры недзелі таму, вже заменены апошнім апдэйтом, або што два зберажаныя элементы проста суперсачуцца і аднам з іх трэба даць прыорітет. У вектарным індексе няма вбудованага разумэння часу і няма панявы пра корекцію. Ён проста вяртае тое, што знаходзіцца найбліжэй у просторе вектараў, і заставляе модель саму выясніць, чаму два з пяці найболей падходзячых рэзультатаў не супакоюцца.
Існуе ўжо адна няпасоўнасць — яна менш стосуецца чыстых можаўносцэй, а больш — знайомасці. Моделі мовы практычна вырашылі вельмі вялікі объём дадзеных для навчання, якіе спрямованы на работу з файламі: чытанне іх, пошук у іх, рэдагаванне, апісветленне каталогаў, выявленне ланцаў імпорту. Гэта не парадуксальны эфект, а ўсё больш сярод основнай часткі іх корпусу для навчання. Цикл, пабудованы на grep і чытанні файлаў, безпасебна адыграецца на гэтую вялікую знайомасць. У працоўны час жа інтерфейс запытаў вектарной базы дадзеных — гэта інструмент, які модель павінна сама з’ясаваць, як эфектыва выкарыстоўваць у вашым конкрэтным контексте, без такога глубокага практычнага досвіду работы з файламі, як у ўсём прынцыпе. У такім разе вы заменяеце навык, які модель вже мае, на той, які ёй павінна адразу ж выучыць, і за гэту замену плаціце за затрымкі ў вставлэнні і выкарыстоўванні дадзеных.
Гэта прыблізна формуліраванне рашэння, якое можа быць выдатлена зараз, пасля таго, як яго насправды прааналізавалі, а не проста паследавалі звычцай:
WHEN A FILESYSTEM + GREP BASELINE IS ENOUGH WHEN YOU ACTUALLY NEED A VECTOR STORE
------------------------------------------------ ------------------------------------------------
Single-agent or small-team memory Retrieval across a corpus too large to
fit or scan in context at all
Facts that change over time and need Cross-document semantic search where
correction, not just accumulation keyword overlap is genuinely weak
Memory the model itself writes, Centralized memory shared by many agents
manages, and re-reads in its own loop that needs access control and auditing
Debuggable state, plain text you can Multi-hop or relational reasoning across
open, diff, and edit by hand thousands of entities where similarity
search is doing real narrowing work
Цикл запісу, карыстоўвання і чытання, описанный у тым матэрыяле, заслуговае на конкретную рэалізацыю, адколі фраза «проста викорыстоўваць файлы» можа здавацца недастатнекай, пакуль не будзе показан код, які гэта робіць. Ёсць версія, якая можа працаваць сёння без патрэбы ў хоставаных службах:
import os
import subprocess
from datetime import datetime
MEMORY_DIR = "agent_memory"
def write_memory(topic: str, content: str) -> str:
os.makedirs(MEMORY_DIR, exist_ok=True)
path = os.path.join(MEMORY_DIR, f"{topic}.md")
timestamp = datetime.utcnow().isoformat()
with open(path, "a", encoding="utf-8") as f:
f.write(f"\n## {timestamp}\n{content}\n")
return path
def recall(query: str) -> str:
# ripgrep if you have it, grep -r works fine too
result = subprocess.run(
["rg", "-i", "-C", "2", query, MEMORY_DIR],
capture_output=True, text=True
)
return result.stdout or "no matches"
def list_topics() -> list[str]:
if not os.path.isdir(MEMORY_DIR):
return []
return [f[:-3] for f in os.listdir(MEMORY_DIR) if f.endswith(".md")]
З’ўяжыце эты тры функцыі як інструменты, нехай сама модель вяршыць рашэнне пра тое, калі пісаць запіску, калі шукати, і калі проста заваносіць цэлы файл тэмы ў контекст, калі ён дастаткова короткі, ўсё це дае систему памяці без жадных витатаў на імбеддынг, без неабходнасці трэбаваць або плаціць за базу вектарных даных, пры чым стан можна безпосередньа адкрываць у рэдагувальніку тексту, калі ўтрапляюць проблемы. Якщо гэтае рашэнне згодна часу стане недастатковым, прычына будзе явная — ёй будзе адпавядаць конкрэтная неудача: корпус даных, занадта великі для шыранага пошуку за дапамогою звычных інструментаў для тексту, або запит з калькамі, які пошук за ключовымі словамі справжньа не можа адпавясці. Гэта набагато кращая практычная прычына для введэння базы вектарных даных, чым проста наследаванне таго, што показвалася ў якомнебудзь навучальным матэрыяле.
Ніхто не кажае, што вектарныя базы дадзеных не маюць месца ў свеце. Справа простая: не вжывайце іх раней, чым насправды пераканаецеся, як далека можа дайсці стандартная база дадзеных. Спачатку спробуйце метод загрузкі всіх дадзеных і выкарыстоўвання файловай системы з функцыяй глэінгу. Вжывайце платныя продукты для каштовання памяці толькі тады, калі ўжо існуючая база дадзеных значна аступае ў спроможнасцях, і це можа праверыцца з точкі зору як фінансавых витакоў, так і можлівасцяў дыбаггавання. Большасць задач, якія выкарыстоўваюць память агента, ніколі не досягаюць такога рубежа.
Другі случай: гіперграфы таксама не адрадзяюць вашу систему RAG
Якщо векторныя базы дадзеных былі аптэмальным выборам мяркавага года, то RAG на аднойчынных графах стала выборам цяперашняга года, а гіперграфы — это ўскладненне, якое з’яўляецца тады, калі команда вырашае, што звычны граф знанняў ўсё ж недастаткова выразны. На першы погляд, цяперашняя ідея здаецца разумной: звычны рэглайн графа спаявае роўна два вузлы, але багато рэальных фактаваў уключаюць больш чым двух учаснікаў адразу. Уявіце сцэнарый, калі аднаму працавальніку дозволяюць падтвердзіць витраты на паўзачас у колегі ад імені цэлага вялікага падразделення за адзін конкрэтны бюджетны цыкл — у гэтым факце з’яўляюцца пяць разных учаснікаў. Якщо спробаваць перакласты гэта на парнія рэглайны, то застанешся пры выборе: або ты втрачаеш уявленне пра тое, што гэта была адна целая подыя, або роздзеляеш гэта на калькі бінарных рэглайнаў, якія пасля таго трэба знову склеўваць пад час запиту. Гіперрэглайн, які можа спаяваць любыя колькасць вузлаў адразу, выглядае як
Больш адаковы спосаб моделювання гэтага. Таму команды ствараюць системы Hypergraph RAG, вырашаючы, што такая адаковасць прыведзе да лепшага выкарыстоўвання інформацыі.У стацыянце, выданама гэтагодзе пісьменнікам на імя Дастын пад назвай „Гіперграфы не зробяць вашу систему RAG кращай. Чаго на самае праця ўсё-такі даскледжуюць“, гэта перакананне было перапытана на працоўнасць з рэальным адбыткам практычнага викорыстоўвання гіперграфных методаў у системах RAG, а не толькі з їхнім абстрактным описам. Рэзультаты былі па-свойму камічныя: HyperGraphRAG, система, пры якой асновная ідея заключаецца ў тым, што справжнія гіперрэшты маюць значэнне, на самае фактычна зберагае ўсё внутршняя інфармацыю ў стандартной базе дадзеных графаў, выкарыстоўваючы звычайныя бінарныя рэшты. І ўсё болю значным яўляецца тое, што самі автары стацыянка паказваюць, што такая трансляцыя — ператворэнне кожнага гіперрэшта на невялікі кластар бінарных рэшт, абгорнутых навакол узагальненага вузла, які представляе паводак — не прыменшае нічога. Ніч гэтаго, што ўскладнюе асновную структуру, не згубляецца пад час такога ператворэння. Тое, што лячыцца болей адкрытым выражэнням гіперграфа, і „банальная“ версія з бінарнымі рэштамі, могуць быць восстанавленыя адна з другой абсалютна точна.
ly.Это не якась незначная прытамака ўжо па часткі адкалэгання — гэта падрывае весь аргумент. Якщо натыўны гіперканец і кластэр бінарных канэцоў, уявлены як ролі, кодуюць тую ж структуру інцыдэнцій, і кожны з іх можа быць проста перабудаваны з іншага, то выбір аднаго з іх замест другога на самай справе не ўжо являецца выборам моделі з наступнымі наследкамі. Це проста рашэнне па формату зберагачвання. Адгукнік да таго артыкула, Фелікс Андерсан, сказаў актуальную матэматыку як магчыма чыста: гіперканец і бінарная граф, уявлены як ролі, описваюць тую ж структуру інцыдэнцій, а шырокае значэнне гіпердрэва зменшаецца толькі на сталы канстантны фактор, калі колькасць артыкулів ў канэце є обмежанай. Шырокае значэнне гіпердрэва — гэта рэальны показначык складнасці, який вялікае значэнне для таго, насколькі дорога ў выкарыстоўванні будзе запыт — не колькасць пераходаў, і не тое, скількі учаснікаў пакладзеныя ў адны канец. Якщо змена формату представлення прыносіць толькі сталую змяну гэтага числа, і кожны факт...
Як толькі колькачына ўчаснікаў (што характэрна для практычна ўсіх рэальных ситуацыяў — колька чалавек у ланцугу затверджэння, а не тыясячы), тады весь інжынерны зусілля, витрачанае на пераключэнне, не мае жадных наследкаваў з точкі зору таго паказніка, який насправды вплывае на выкладкі запитоў.Цікава ўсё-такі чыстасць у раз'ясненні таго, чаму так легка падпасть на гэты хыбны вывар. Колькасць пераходаў ёсць інтуітыўная: чым больш вузлаў межы запитам і яго адпаведзеннем, тым, здаецца, запит должны быць сложнейшы. Шырыня гіпердрэва ўжо зовсім не інтуітыўная — яна выводзіцца з тэорыі задовольнення абмежэнняў і складнасці запытаў, і яна можа змянюватыся так, як колькасць пераходаў ніколі не пакажае, якщо толькі хтось спецыяльна не пераканаеся. Праўда, можліва дадаць структурную складнасць, якая зменшыць колькасць пераходаў для аднаго рэштрыкавана выбранага прыкладу запыта, не пазначаючыся на класе асновной складнасці, або нават пагоршыўшы яе часткова. Прыведзеныя ў статыцэ прыклады можу выглядаць вражаюча, але не гаворяць ніч прызначальнага пра загальны случай.
Ось паралельныя порэванні, якія варта рассмотрыць пры выборы между звычным графам, реіфікаваным графам чы ўсталеным хыперграфам:
REPRESENTATION WHAT IT ADDS WHAT IT ACTUALLY CHANGES
--------------------- ------------------------------- --------------------------------
Plain binary graph Simplest to build and query Baseline; loses atomicity of
with standard graph tooling multi-participant facts
Reified binary graph Recovers atomicity via an Same incidence structure as a
(event node + roles) explicit "event" node hyperedge; hypertree width
shifts by a constant only
Native hypergraph Hyperedges as first-class No reduction in query
store objects, arguably cleaner complexity class over a
to write against reified graph; new storage
engine to run and maintain
Нічыя з гэтых пунктаў не ўскладнюе тэзу, што структура графа ўтрымлівае свою цэннасць для техналогій RAG. Багатоэтапны пошук у вазе стосункаў дзейсна выгадвае ад структуры графа паўтарыльна пры порэванні з простым векторным пошукам — у гэтым немае сумневаў. Сумневы існуюць толькі ў додатковым пераходзе ад звычайнага графа да гіперграфа, і калі паглядзець за маркетынгавыя тверджэння і адразу на фактычныя доказы, чыстая заключэнне ў тым, што такі пераход прыносіць модель дадзэнняя, якая выглядае прыемней, але трэба ўтрымванне новай категорыі інфраструктуры для ўпрабаванняя, пры чым не паўтараецца параметр, які вялічыць швальнасць або спрабовнасць выканання запыткаў. Якшо проблема — якасць пошуку, то рашэнне, падтрыманае фактычнымі доказамі, зазвычай — гэта кращая схема стварання графа або розумнейшая стратэгія пошуку ў існуючым графе, а не якісь экзотычныя типы рэёў.
Трэці варыянт: аслівным узгорненнем ніколі не быў сам код
Першыя два аргументы стосаваліся архітектуры выкарыстоўвання дадзеных, тэмы, якая належыць да вядомай сферы. Трэцій аргумент ўсё ж таки іншы, бо ён не пра выбір правильнага інструмента — ён пра тое, з чым на самай справе стоіць старшы інжынер, і ён зачапіў больш близка да реальнасі, чым могло здавацца.
Патрік Косс, тэхнічны кераванцы, які керуе командай з пяціх інжынэраў у компаніі, якая налічвае пад тысячу працавальнікаў, назваў свой артыкул «AI не можа выконваць 95% майго работы (і я — інжынер працоўных програм)». Пачатковая тэза практычна нагадвае зяву пра прымусовую пэразгранку, перш чым ператвараецца на аргумент: напісанне коду — это самая маленькая частка таго, на што ён выдзеляе свой час, і то з вялікым запазненням. Яго команда выкарыстоўвае модель «ты стварыў, ты і керуеш», што значыць, ўсю адпаведальнасць за системы, якіяя належаць ім, несу самі інжынэры, а не окремая група аператывай кіравання, якая можа ставіцца да проблем у працэўным режыме як да чужых. Яго ранкі пачынаюцца або 8:30 з перагляду просьбаў прыняць код, а код, які прадстаўляецца ў гэтых просьбах — большая частка якога напісана агентамі AI, якія виконваюць большую частку роботы з стварэння — значна лепшы, чым той, які ён пераглядаў калькі лет таму. Ён не ставіць пытання, чы можа AI ствараць хорашы код.
Дзень. Ён цэлым чынам прыяжыць гэтай думке, а потым зазначае, што гэта ледзь чыгнае на тое, калі сама робота фактычна выклеквае ад яго.Этая деталь вартая увагі, калі толькі ўсвядоміць, што яна падрыхтавае асумпцыю, прынятыяй у багатьых расчунках, зв’язаных з агентскімі структурами, укладзеных у безлічі аргументаў у гэтай сферы: ідея, што можлівасці валодзець керуе автаматызацыяй. Зазвычай выводзіцца, што як толькі модель можа пісаць правільны код, стварэнне коду перестае быць роботай людзя, і таму частка „работы“, якая автаматызуецца, павінна адпавядаць частцы работы, якая раней выклікала пісьмо коду. Аднак Косс стверджуе, што гэтая логіка вже давно не працуе — проста ШІ робіць гэтыя помылкі болей відчутнымі. Роля тэхнічнага керавальніка ніколі не была пераважна стварэнням коду; яе мета завжды была координацыяю: выбір таго, што трэба стварыць, і ў якой последовасці, пераговоры па межах задачы з усіма зацікавленымі сторонамі з суперсучаснымі прыоритетамі, перагляд та падтрымка тэхнічных рашэнняў іншых людзей, кераванне процесамі та наставніцтва менш досвідчытым спецялістам.
Гэта работа з інжынерамі, якія перакладаюць тое, чаго прагне заўяжаны стакхолдар, і тое, чыя падтрымка ў системе ёсць рэалістычная без нарабатання проблем. Нічога з гэтага не ўжо ёсць кодаваннем пад маскай. Це організацыйная та межчалавечая работа, якая па дорозе дае код — пры тым высока ступеня автаматyzаціі — і якая ўкладзена ў набор адпаведальнасцей, якія протыстояць автаматyzацыі саме таму, што не стосуюцца стварэння продуктав. Яны стосуюцца стварэння адраджэння, компромісаў та адпаведальнасці межы людзьмі.Гэта можа быть найменш адзначаная заўважэнне ў гадовых дыялогах пра агенты, болей значныя за будзь-якія окремы показнікі, таму што яна поясняе, чаму фразы «модэль значна паднялася ў навыках кодавання» і «мая робота значна стала простэйшай» не супрацоўвают адпаведна для багато высокакваліфікаваных інжынераў, нават тых, якія актываўна вжываюць гэтыя інструменты і атрымліваюць ад яных рэальную корысть. Адзірванне балав SWE-bench з одназначных цифраў да сямдзятых за калькі лета паказвае рэальны і значны прырост спроможнасцяў. Але гэты прырост не ператвараецца апошнім часам у роботу, якая стала на 70 процэнта лёгкейшая, таму што робота з самага пачатку ніколі не складалася на 70 процэнта з стварэння коду — а ўсё больш, калі вы вже настаўляецеся на высокай пазіцыі, дзе вашы обавязкі таксама включаюць керуванне змянайчымі групамі і планаванне развіцця, а не толькі обработку запрошэнняў да змян.
Справжня прыткая застерэгацье — гэты аргумент не можа быць узагальнены так жоўчна, як першыя два. Тэзы пра базы дадзеных вектароў і гіперграфы є настолькі тэхнічныя, што іх можна пераканацца па апэксным показніку чы ў доказе, і самаэкспертыза адбываецца роўна так, як і ранейш. Пытанне пра тое, насколькі з роботы высокакваліфікованага інжынера станавіць коордынацыя, а насколькі програмаванне, будзе змінювацца залежна ад розмеру компаніі, ступеня зреласці каманды, таго, насколькі адарожнія організацыйныя витраты є справжнім абаронам, а не проста дысфункцыяй, і ад таго, насколькі высокай кваліфікацыі є адзін чалавек. Пяцчальны калектыў унутрь тысячачальнай компаніі, якая працуе па прыему «ты стварыў, ты і керуеш», — це аднай з форм роботы, а не стандарт для кожной інжынерскай паслявоўкі. Усё-такі, адпаведная корэкцыя, здаецца, застосовываецца загалом: можыцькасці агента задаюць верхню межу таго, насколькі частка напісання коду ў роботе тэорэтычна можа быць автаматызаваная, але гэта паўтарае.
Вы практычна нічога не ведаеце пра тое, насколькі можа складвась частка коордынацыі, адколькі гэтая частка з самага пачатку ніколі не была обмежаная швалом адкалкання чы роўнем коду.Аднойчыны прынцып
Якщо паставіць гэтыя тры прыклады па боку ад боку, то справжні урок не мае нічыя спецыфічнае стосунку да баз дадзеных вектарных, гіперграфаў чы можлівасцяў агентаў. Ён стосуецца несупадання межы там, дзе кожная галузь прыпускала, што слоžнасць знаходзіцца, і там, дзе яна на самай працоўвала.
CASE WHERE COMPLEXITY WAS ADDED WHERE THE REAL BOTTLENECK WAS
------------------ ---------------------------------- --------------------------------
Agent memory Vector embeddings, similarity Whether the model can use a
search, sometimes a graph layer retrieval method it already
on top of that has deep fluency with
RAG structure Native hyperedges, a new The complexity class governing
storage engine, more query cost, which the fancier
elaborate graph modeling structure barely touches
"How much of the An assumption that model Whether the job was ever
job gets automated" capability alone predicts mostly about the thing the
the automatable fraction model is good at
Ніякі з болей складных варыянтов самі па сабе не ўскладняюць прыемліванне рашэння. Базы дадзеных на вектарах спрацоўваюць у правым контэксте для рашэння рэальных проблем, гіперграфы можаць стаць корыстнымі ў дзеякіх ситуацыях, якія тут не практычаны, а агенты ШІ дзейсна пазбавляюць інжынерных задач зайвай ручной працы, што чыста адзначае доследнік, який расследав трэці прыклад. Памылка заключалася не ў прагоне за складнасцю, а ў прыпуску крока перакананняся, чы розраблена складнасць спрямована на асалідныя обмежэння, а не на тые, якія проста ўдобныя для стварэння вражаючага рашэння.
Эта прычка выражаецца таксама за межаю інжынерыі агентаў. Дадаць ўсё новы слой практычна завжды легкае, чым зупініцца і спытаць, чы роўны, неэфектны базовы варіант калі-небудзь быў адпаведна працаваны па асоўнанні з новым слоем. Новая абстракцыя выглядае як візуабельны прагрэс, што-то, на што можна паказаць і назваць апгрэйдам. Перакананне, чы grep вже падходзіць для рашэння задачы, чы складнасць вашага запиту справаджывае павышэнне, чы тое, што займае вашу годзіны, дэйсна є тым, каму вы яго прыродзілі, — гэтая робота ўсё медленней і значна менш задовольняючая, і ў яе рэзультате можна дайсці да вывару, што краща перастаць працаваць над цім, чым продаваць далей.
Ёсць стислая версія чарткі, якаю варта скорыстацца для перагляду будь-якай стак-структуры пры дадаўці новага слоя:
1. Have I benchmarked the boring baseline, not just assumed it loses?
(full-context, grep, a plain graph, a human doing the coordination)
2. Does the new structure change the metric that actually governs cost
or quality, or does it just look more sophisticated on a diagram?
3. Am I reaching for this because a benchmark or proof told me to,
or because it's what the tutorials and the funded products default to?
4. If I strip this layer back out, what specifically breaks?
If I can't name it precisely, I probably don't need the layer yet.
5. Am I solving the bottleneck I actually have, or the bottleneck
that's most interesting to build a sophisticated solution for?
Нічыя з гэтых пунктаў не аполагае за тое, каб ў цэлым зменшыць обсяг інжынерных работ. Яны аполагаюць за тое, каб направіць зусілля інжынераў на выявленне таго, дзе насправды знаходзіцца узгорнута точка, прычаму ўжо перад тым, як ствараць складнае рашэнне, якое прыпускае, што вы вялікі час ведаеце адпаведны адказ. Тры прыклады, якія тут практыкуемы, не былі выбраны для стварэння сенсацый. Яны патрымалі гэты статус таму, што хтось адмахнуўся ад прыемлівай робы — пераканальнага перагляду, і рэзультаты гэтага перагляду не паспакоўвалі стандартным прыпускам. Гэта значна вышэйшы стандарт, чым проста яркая загаловка пад сильнай думкай, і самэ гэтае стандарта трэба прыменяць да своіх технолагічных рашэнняў у будучыні.
Спадневана літэратура
- Розумеўце AI-агентаў: цілі, інструменты, памяць і цикл агента — проста для пачаткуючых інфармацыя пра тое, чаму AI-агенты не адналежаць да чатботаў, з розглядам ключоўых складовых, циклу прыняткі рашэння, рагульнаў автонаміі і прыкладаў ўжыцця ў рэальным жыцці.
- Розумеўце памяці AI: контэкст, імбеддынгі, RAG і параметры модэля — у гэтым артыкуле пояснюецца, як AI-сістэмы фактычна запамячаюць інфармацыю, з увагай да вікнаў контэксту, імбеддынгаў, векторных баз дадзенаў, тэхналогіі RAG і параметраў модэля.