Пређите на главни садржај
OpenAI

27. мај 2026.

Инжењеринг

Изградња пореских агената који се сами побољшавају уз Codex

Аутори, чланови техничког особља: Aravind Srinivasan и Samay Shamdasani (Thrive Holdings), Arthur Fernandes Araujo и John de Wasseige (OpenAI)

Учитавање…

Како су Thrive Holdings и OpenAI заједно развили Tax AI за рачуновође у Crete-у спајањем стручности практичара са петљом коју покреће Codex

Системи из стварног света у продукцији се понашају другачије него у лабораторији и кваре се на начине које је тешко предвидети пре пуштања у рад. Тимови често открију те неуспехе после лансирања, а затим проводе недеље испитујући граничне случајеве, прилагођавајући инструкције и претварајући продукционе повратне информације у трајна побољшања производа. Петља повратних информација је ручна и спора, и побољшава се само када је инжењер унапреди. Али данас, уз пажљиво осмишљену инфраструктуру евалуације, директан приступ практичарима и окружењима из стварног света, и граничне агентске способности Codex-а, можете да градите агенте који се сами побољшавају.

У овом тексту ћемо објаснити како смо користили Codex да изградимо ову врсту агента. Током протеклих шест месеци, инжењери и истраживачи OpenAI-а распоређени на терену, заједно са инжењерима Thrive Holdings-а, сарађивали су на изградњи Tax AI-а уз и за мрежу од 30+ рачуноводствених фирми компаније Crete(отвара се у новом прозору), како би помогли у припреми све сложенијих пореских пријава. Уместо да се ослања на инжењере да пронађу и исправе сваки неуспех, Tax AI користи Codex да продукциону употребу претвори у структуриране сигнале који покрећу аутономно побољшање.

Практичари у Crete-у сваке сезоне припремају десетине хиљада пореских пријава, што захтева рад кроз милионе основних докумената. За пријаве средње до велике сложености, само унос података може да траје осам сати по пријави, често уз неуредне изворе података, документе из претходне године и ручно издвајање и израчунавање. Указали су нам на припрему пореза као на значајно уско грло током најинтензивнијег дела пореске сезоне.

Да би решио овај проблем, Tax AI је ове пореске сезоне обрадио 7.000 пореских пријава у фирмама Crete-а које су учествовале у пилоту. Систем аутоматизује велики део временски захтевног процеса припреме пореских пријава 1040 и 1041, али још убедљивије од добитака у ефикасности јесте то што је сам систем мерљиво бољи од верзије која је први пут пуштена пре три месеца.

Мерљиво самопобољшање

У Tax AI-у, практичари отпремају изворне датотеке заједно са свим белешкама специфичним за клијента. Tax AI затим креира подношење за порески механизам, спремно за преглед. Он практичарима штеди око трећину времена за припрему пореза, саставља пријаве са тачношћу до 97% и повећава пропусну моћ за око 50%, стварајући више простора да време проводе са клијентима. 

Ово побољшање можемо да квантификујемо тако што разумемо колико тачно Tax AI може да доврши пријаву без потребе за каснијом исправком. Тачност меримо тако што проверавамо који удео пријава достиже 75%, 90% или 100% исправно попуњених поља. При лансирању, само четвртина пријава била је на нивоу од 75% исправно попуњених поља, али је у року од шест недеља 86% достигло ту ознаку. Систем је показао још бржи раст на нивоима од 90% и 100% исправно попуњених поља. Ови прагови нам дају практичан увид у то колико накнадног рада практичара различите пријаве још увек захтевају. 

У почетку је Tax AI обрађивао једноставније послове, као што су W-2 и 1099. Како је сезона одмицала, прешао је на сложеније пријаве са K-1, прилозима и тежим граничним случајевима. Свака нова способност штедела је више времена по пријави него претходна, јер су задаци које је преузимала били тежи и одузимали више времена када се раде ручно. И данас настављамо да видимо сталан напредак.

Затим ћемо проћи кроз то како су наши тимови заједнички инжењерски обликовали Tax AI да би се сам побољшавао ослањајући се на три кључна стуба: 1) повратне информације стручних практичара, 2) продукционе трагове (структурирана историја од улаза до коначног излаза) и 3) петљу итерације коју покреће Codex на основу прилагођених евалуација, како би се омогућио континуиран и бржи развој производа. Надамо се да ће наше искуство бити корисно и другим градитељима у доменима у којима је стручност практичара кључна за обликовање квалитета целокупног система и података који кроз њега пролазе.

Како се Tax AI ширио на сложеније пријаве, удео оцењених пријава које су достигле 75%, 90% и потпуну попуњеност наставио је да расте током пореске сезоне.

Проблем

Како смо улазили у теже делове припреме пореза (K-1, прилози за некретнине за издавање и порески обрасци у којима су вредности морале да се усклађују кроз више изворних датотека), постало је очигледно да је прави изазов у томе да ли производ може да учини сложене продукционе неуспехе видљивим, разумљивим и погодним за деловање.

У раним данима производа, већина исправки била је ручна. Практичари су могли да исправљају грешке система, али производ није бележио пун контекст: измењена вредност пре подношења могла је да одражава стварни пропуст у издвајању, проблем мапирања, недостатак подршке у производу или очекивани шум тока рада. Разврставање тих случајева и даље је захтевало накнадни рад инжењерског тима. Инжењери су могли да користе агенте за кодирање, али систем још није био осмишљен да смислено користи AI унутар петље побољшања. Нисмо имали сигнал да препознамо право брдо које треба савладати.

Наш приступ: троделна петља

То нас је навело да систем осмислимо око три стуба:

  1. Останите близу практичара: Људи који обављају посао треба да усмеравају шта производ учи. Њихова интуиција и разумевање откривају које су грешке важне и помажу да се одреди на које делове тока рада вреди следеће усмерити пажњу.
  2. Изградите производ тако да продукција ствара доказе: Производ мора да бележи више од самих улаза и излаза; треба да бележи цео пут од изворног материјала, преко издвојених поља и порекла, до низводног подношења и исправке стручњака.
  3. Направите петљу побољшања коју покреће Codex: Када су продукциони проблеми видљиви и структурирани, могу постати налази, прилагођене евалуације и ограничени инжењерски задаци. Codex затим може да помогне у истраживању, предложи измене, потврди их у односу на циљане и регресионе евалуације и помери производ напред брже него чисто ручни циклус итерације. 

Пример некретнина за издавање у наставку показује како та петља функционише у пракси, водећи вас кроз то како исправка практичара постаје структурирани налаз, затим циљ евалуације и на крају инжењерски задатак ограничен за Codex.

Пример некретнине за издавање

Приход од некретнине за издавање пријављује се у Schedule E појединачне пореске пријаве. Из инжењерске перспективе, задатак његовог издвајања је једноставно описати, али тешко добро урадити. Систем мора да чита неуредан изворни материјал (руком писане белешке, имејлове, табеле и друге датотеке клијента), издвоји поља за некретнине за издавање која систем може поуздано да мапира у порески механизам и сачува довољно доказа да практичар може да одобри или исправи резултат. Поједностављени пример у наставку показује како би те изворне датотеке и издвојени излази могли да изгледају.

„“

Изворни пакет за некретнину за издавање нормализује се у цитирана поља пре него што се она мапирају на низводне концепте пореског механизма.

1. Исправка практичара открива неуспех

Разлика између вредности коју је предвидео агент и стварне вредности из поднете пореске пријаве може да одражава стварни пропуст у издвајању, али може бити и преференција практичара, вредност пренета из пријаве за претходну годину у пореском механизму, или вредност уведена или измењена на другом месту у току рада на пријави. Практичари су нам помогли да разлучимо те случајеве како бисмо могли да утврдимо које радње су захтевале исправку практичара или су блокирале подношење.

Пошто смо могли детаљно да видимо те исправке, претворили смо процес прегледа из завршног корака после неуспеха у континуирани циклус учења. Осмислили смо ток рада тако да бележи радње стручњака као структуриране податке. Сада свака интервенција улази у петљу побољшања производа тако што бележи шта је тачно Tax AI предложио, шта је практичар изменио и шта је на крају ушло у поднету пријаву.

2. Трагови производа претварају исправке у процене

За сложен ток рада као што су некретнине за издавање, систем мора да сачува шта се дешава између изворних датотека и поднете пријаве. Дуж тог пута, документи се организују, деле и класификују; поља за некретнине за издавање издвајају се са цитатима који воде назад до изворног материјала; те вредности се мапирају у порески механизам; а практичари их и даље могу исправити пре подношења. Ти трагови на нивоу производа омогућавају да се истражи где је дошло до неуспеха. Да би исправке практичара претворио у корисне циљеве евалуације, систем их обрађује у три корака:

  • Забележите разлику: Излаз услуге Tax AI пореди се са поднетом пријавом да би се добили редови прегледа на нивоу поља који бележе очекивану вредност, предвиђену вредност и да ли разлика делује као нешто на шта се може деловати.
  • Групишите повезане неуспехе: Слични редови прегледа групишу се да би се понављајући неуспеси производа раздвојили од очекиваног шума тока рада. На пример, поновљене исправке практичара могу показати да Tax AI често пропушта поља „дани фер издавања“, погрешно обрађује „остале трошкове“ или меша више некретнина за издавање у оквиру истог изворног пакета.
  • Претворите понављајуће обрасце у циљеве евалуације: Када се прегледају и измере, поновљени налази постају јасни циљеви евалуације које Codex треба да побољша.
„“

Редови прегледа за некретнине за издавање раздвајају понављајуће неуспехе производа од очекиваног шума, а затим случајеве који омогућавају деловање претварају у циљеве евалуације који услузи Codex дају брдо које треба савладати.

3. Налаз постаје брдо које Codex треба да савлада

Трећи стуб је стварање инжењерске петље способне да делује на основу ових нових евалуација. Ту Codex постаје кључан.

Претпоставимо да наш цевовод за евалуацију означи да Tax AI доследно пропушта поље "дани фер издавања", док га практичари поуздано попуњавају. Пошто је овај налаз већ упакован у циљани скуп евалуације, са репрезентативним изворним пакетима и очекиваним излазима, Codex може директно да истражи основни узрок унутар скеле производа.

Codex не ради само са недовољно добрим коначним излазом. Он заједно испитује траг, евалуацију, депо и вештине:

  • Истражите цевовод: Испитајте изворне пакете, шеме издвајања, понашање мапера и путање кода да бисте утврдили да ли је проблем неподржано поље, пропуштен образац издвајања, проблем избора извора, празнина у маперу или проблем са оцењивачем.
  • Спроведите циљане исправке: Проширите шему издвајања, побољшајте избор извора за документе о некретнинама за издавање, ажурирајте мапер пореског механизма или дорадите оцењивач ако се очекивани шум тока рада рачуна као неуспех.
  • Потврдите и предложите: Поново покрените циљану евалуацију, покрените шире регресионе скупове и прикажите кандидатски захтев за преглед измена за инжењерски преглед.
  • Затворите петљу: Претворите понављајућу исправку практичара у мерљив инжењерски задатак. Ако су докази нејасни или се не могу безбедно аутоматизовати, случај се враћа тиму за производ уместо да се на силу прогура кроз петљу.
„“

Петља самопобољшања од краја до краја: продукциони трагови откривају поновљене исправке на нивоу поља, које постају сигнали неуспеха које Codex може да испита заједно са трагом, проценама, депоом и вештинама. Обрасци који омогућавају деловање постају ограничене евалуације и кандидати за измене производа; нејасни случајеви се враћају инжењерима на преглед. Свако испоручено побољшање ствара нове продукционе доказе за следећи циклус.

Како користити Codex за изградњу ове петље

Пример некретнина за издавање представља шири образац који се може поново користити: коришћење продукционих артефаката и трагова за побољшање способности агента. Уз прегледане налазе из продукционих података, изворне трагове, очекивани излаз пореског механизма, релевантне примере кода и команде за евалуацију као скуп улаза, Codex може суштински да побољша перформансе и тачност током недеља и месеци. Ово се надовезује на принципе описане у нашем раду о инжењерингу harness-а и Symphony, који објашњавају како да задаци буду читљиви Codex-у, како да се обезбеде ограничени контекст и алати и како да валидација и људски преглед остану део окружења. 

Ти докази не постају аутоматски задатак за Codex. Исправка практичара може одражавати пропуст у издвајању, проблем мапирања, неподржано понашање производа, пореску процену или очекивани шум тока рада. Тек након што се поновљене разлике прегледају и групишу у налаз на који се може деловати, систем их претвара у ограничен задатак са јасним условом успеха.

Ову аутоматизацију примењујемо на ограничени слој производа. Овај слој врши издвајање и мапира изворне документе у пореске токове рада. Инжењери и даље остају одговорни за архитектуру, одлуке о производу и испоруку. Практичари усмеравају петљу побољшања кроз посао који већ обављају: исправљање издвојених вредности, преглед пријава и одобравање коначних подношења.

За Codex, резултат није нејасно упозорење већ ограничен инжењерски задатак са доказима, површинама производа које се могу уређивати и експлицитним капијама валидације. Контекст за репрезентативан задатак у вези са некретнинама за издавање може се сажети овако:

Обичан текст

1
/candidates/FIND-RENTAL-0042/
2
3
├── repo/ [1]
4
│ └── branch: codex/fix-rental-0042
5
│ │
6
│ ├── AGENTS.md
7
│ │
8
│ ├── tasks/FIND-RENTAL-0042/
9
│ │ ├── task.yaml
10
│ │ ├── EXEC_PLAN.md
11
│ │ └── RESULTS.md
12
│ │
13
│ ├── app/tax-ai/rental-income/ [2]
14
│ │ ├── agent.ts
15
│ │ ├── schema.ts
16
│ │ ├── provenance.ts
17
│ │ └── mapper.ts
18
│ │
19
│ ├── evals/ [3]
20
│ │ ├── datasets/fair-rental-days.yaml
21
│ │ ├── suites/fair-rental-days.yaml
22
│ │ ├── suites/rental-income-regression.yaml
23
│ │ └── graders/rental-income.yaml
24
│ │
25
│ ├── skills/ [4]
26
│ │ ├── eval-runner/
27
│ │ └── tax-field-docs/
28
│ │
29
│ └── docs/ [4]
30
│ ├── architecture/
31
│ └── task-environments/
32
33
└── scoped-tools/ [5]
34
├── production-trace
35
├── source-artifacts
36
└── tax-engine-docs

Ограничено Codex окружење задатка раздваја уписиво радно стабло [1] од продукционог контекста само за читање [5]. Радно стабло садржи ограничену површину производа коју Codex може да испита или измени [2], циљане и регресионе евалуације које дефинишу успех [3], и поново употребљиве вештине/документацију који кодирају како да се задатак изврши и испоштују претходне одлуке [4]. Контекст само за читање обезбеђује продукциони траг, изворне документе, предвиђање Tax AI-а, финализовану пријаву и документацију поља пореског механизма, тако да Codex може да истражи неуспех без мењања основних доказа.

Ширење на нове домене

Иста петља важи и изван некретнина за издавање. За некретнине за издавање било је потребно око шест недеља и значајан инжењерски надзор да би се достигло 90% прецизности и одзива, али је тај рад произвео поново употребљиве апстракције, артефакте прегледа, конвенције евалуације и обрасце имплементације који су олакшали подршку слично сложеним прилозима као што су Schedule C и Schedule A.

Tax AI показује пут ка изградњи агената који се сами побољшавају. Практичари генеришу сигнале повратних информација високе вредности пружањем услуге. Токови рада производа чувају те сигнале као структуриране доказе. Инжењерски системи поткрепљени евалуацијама потврђују побољшања пре него што стигну у продукцију, а петља коју покреће агент одржава систем у континуираном току самопобољшања. 

Структура Thrive Holdings-а нам омогућава да ово окружење поновимо у одређеним индустријама. Holdings је и власник и оператер, па наши удружени инжењерски тимови могу директно да раде са практичарима и продукционим подацима изнутра, у компанијама као што је Crete, не као добављач већ као партнери. То значи да су технологија, производ и услуга под истим кровом, што нам помаже да се крећемо брже и градимо изузетне производе.

Једна виша рачуновођа, која је прошле године потрошила 180 сати на припрему пореза, ове године је на то потрошила само 15 сати. Део тог времена уложила је у то да позове сваког свог клијента и проведе га кроз његову пријаву, ниво веома посвећене услуге који пре годину дана није био могућ. Преостало време искористила је да преузме нове клијенте и прошири понуду услуга.

Заједно, наши тимови сада користе исти троделни дизајн из Tax AI као нацрт за изградњу токова рада у другим доменима широм Thrive Holdings(отвара се у новом прозору); рачуноводствених токова рада као што су књиговодство и ревизија, и оперативних токова рада као што је аутоматизација IT службе за помоћ. Кроз домене и индустрије, важи шире обећање агената који се сами побољшавају. Најбоље агенте усмеравају људи како би временом постајали способнији, поузданији и вреднији.

Да бисте сазнали више о OpenAI тиму који је радио на овом пројекту, јавите нам се.

Аутор

Aravind Srinivasan, Samay Shamdasani, Arthur Fernandes Araujo и John de Wasseige