Asosiy kontentga o‘tish
AI qo‘llanmalari

JevHarness bilan tezkor, vazifaga xos qaror qabul qilish jarayonlarini yarating

JevHarness vazifa kuzatuvlarini qanday qilib tizimli, kechikishi past qarorlarga aylantirishini bilib oling. Ushbu qo‘llanmada arxitektura, Claude Code va Codex o‘rnatilishi, arxivlangan Pokémon misoli, vazifaga xos harness yaratish, baholash asosida takomillashtirish, ish vaqti talablari, hisob ma’lumotlari, trace’lar va tasdiqlangan harnessni muzlatish usullari yoritiladi.

JevHarness bilan tezkor, vazifaga xos qaror qabul qilish jarayonlarini yarating

JevHarness nima qiladi

JevHarness mualliflik LLM'iga Jev uchun vazifaga xos qarorlar harness'ini yaratishda yordam beradi. Harness ruxsat etilgan kuzatuvlarni foydali xususiyatlarga aylantiradi, tuzilgan Jev savollari va mezonlarini yaratadi hamda javoblarni qonuniy vazifa amallariga birlashtiradi.

Asosiy g‘oya qimmat strategiya ishlab chiqish jarayonini muntazam bajarishdan ajratishdir:

Ishlab chiqish vaqtida chuqur fikrlang. Strategiyani muzlatib qo‘ying. Jev tez va noaniq qarorlar qabul qilsin.

Ishlab chiqish vaqtida LLM harness kodini, savollarni, grafni, holatni, mezonlarni va xotirani qayta ko‘rib chiqishi mumkin. Harness tanlanib, muzlatilgandan so‘ng, ish vaqtidagi qarorlar shu belgilangan mantiq va Jev chaqiruvlaridan foydalanadi. Mualliflik LLM'i har bir amalni qaytadan tahlil qilishi shart emas.

Bu JevHarness'ni kod ishonchli faktlarni hisoblay oladigan, ammo ayrim qarorlar kontekstga bog‘liq yoki noaniq bo‘lib qoladigan vazifalar uchun mos qiladi. Masalan, kod qonuniy amallarni aniqlashi va sonli xususiyatlarni hisoblashi mumkin, Jev esa mavjud amallardan qaysi biri vazifaga xos mezonlarni eng yaxshi qondirishini baholaydi.

Arxitektura va mas’uliyat chegaralari

JevHarness ishonchli vazifa adapterini qarorlar harness'idan ajratadi. Bu chegara harness'ning o‘z mukofotini o‘zgartirishiga yoki yashirin vazifa holatiga kirishiga yo‘l qo‘ymaydi.

  • Vazifa adapteri: Kuzatuvlar, qonuniy amallar, yon ta’sirlar va baholash uchun javob beradi.
  • Harness: Xususiyatlarni yaratish, Jev baholashlari va qarorlar mantiqiga javob beradi.
  • Muhit: Amallarni bajaradi va ishonchli natijalar yoki mukofotlarni qaytaradi.
  • Mualliflik LLM'i: Ishlab chiqish va ixtiyoriy refleksiya vaqtida harness'ni yaratadi yoki qayta ko‘rib chiqadi.

Tekshirilgan PipelineSpec PipelineRuntime orqali bajariladi. Tanlangandan so‘ng, pipeline spetsifikatsiyasi, runtime muhiti, evaluator'i va e’lon qilingan vazifa resurslari bilan birga muzlatilishi mumkin.

Asosiy imkoniyatlar

Tuzilgan Jev baholashlari

Jev choice, score va noul javob turlarini qo‘llab-quvvatlaydi. So‘rov bir nechta nomlangan savollarni o‘z ichiga olishi mumkin, mustaqil graf tugunlari esa bir vaqtda bajariladi.

Strategiyaning aniq ifodalanishi

Strategiya kodda, hisoblangan xususiyatlarda, holatda, ko‘rsatmalarda, mezonlarda, xotirada va boshqaruv oqimida saqlanadi. Bu qarorlar jarayonini mualliflik suhbati ichida yashirib qo‘ymasdan, tekshiriladigan va qayta foydalaniladigan holga keltiradi.

To‘liq bajarilish izlari

Refleksiya tanlangan epizodlarning to‘liq yozuvlarini, jumladan kuzatuvlar, qarorlar, tugun kirishlari va chiqishlari, Jev savollari va javoblari, xotira hamda xatolarni qabul qilishi mumkin. Yo‘qotishsiz deduplikatsiya takrorlanishni kamaytiradi. Refleksiya kiritmasi sozlangan bayt limitidan oshsa, u jimgina qisqartirilmaydi, balki arxivlanadi va rad etiladi.

Mukofot asosida ixtiyoriy takomillashtirish

Ixtiyoriy GEPA integratsiyasi instansiyalar frontidan ota variantlarni tanlaydi, har bir ota variant va taklifni bir xil o‘quv paketida taqqoslaydi hamda qabul qilingan takliflarni Eval'da baholaydi. U rad etilgan takliflarni ham qo‘shgan holda, haqiqiy kelib chiqish zanjirini qayd etadi.

Tekshiriladigan muzlatilgan artefaktlar

Muzlatish tanlangan harness va uning e’lon qilingan bog‘liqliklarini saqlab qoladi. Jev tugunlarini o‘z ichiga olgan muzlatilgan harness ish vaqtida ham Jev'ni talab qiladi. Shuningdek, joylashtirilgan model taxallusi kelajakda provayder xatti-harakatlari o‘zgarmasligini kafolatlamaydi; shu sababli saqlangan javoblar va yangi chaqiruvlar takrorlanuvchanlikning turli darajalarini ta’minlaydi.

Talablar

Ishga tushirmoqchi bo‘lgan narsangizga mos talablarni tanlang:

  • Arxivlangan veb-sayt: Node.js va zamonaviy brauzer. Buning uchun model hisob ma’lumotlari, o‘yin dvigateli yoki Python sandbox'i kerak emas.
  • Python loyihasi: Python 3.11 yoki undan keyingi versiya.
  • Funksional Python tugunlari: Qo‘llab-quvvatlanadigan macOS native sandbox'i. Izolyatsiya mavjud bo‘lmasa, bajarilish xavfsiz tarzda to‘xtatiladi.
  • 2-versiya ifodalari va Jev oqimlari: Bular funksional Python worker'larini ishga tushirmaydi.
  • Jonli Jev chaqiruvlari: Qo‘llab-quvvatlanadigan provayder hisobi va tegishli API kaliti.
  • Ixtiyoriy mualliflik va refleksiya: Local Claude CLI, OpenAI, Azure yoki Anthropic endpoint'idan foydalanadigan sozlangan Proposer.

Claude Code'ga skill o‘rnatish

Claude Code uchun eng tezkor sozlash usuli repository'ni plugin marketplace sifatida qo‘shish, plaginni o‘rnatish va plaginlarni qayta yuklashdir.

/plugin marketplace add https://github.com/TianyuCodings/JevHarness.git
/plugin install jev-harness@jevharness
/reload-plugins

Plaginni o‘rnatish skill va unga tegishli ma’lumotnomalarni yuklaydi, ammo Python bog‘liqliklarini o‘rnatmaydi yoki model hisob ma’lumotlarini sozlamaydi. Repository shaxsiy bo‘lsa, GitHub autentifikatsiyasi avvaldan ishlashi va hisobingizda o‘qish huquqi bo‘lishi kerak.

Codex'ga skill o‘rnatish

O‘rnatilgan skill-installer taqdim etadigan Codex host'ida repository'dan o‘rnatishni bevosita so‘rang:

$skill-installer Install the jev-harness skill from https://github.com/TianyuCodings/JevHarness/tree/main/skills/jev-harness

Skill'dan keyingi turn'da foydalaning. Agar Codex uni darhol aniqlamasa, sessiyani qayta ishga tushiring.

Qo‘lda o‘rnatish

Skill'ni Claude Code, Codex yoki ikkalasi uchun qo‘lda o‘rnatishingiz mumkin. /path/to/your-project o‘rniga mavjud loyiha katalogini kiriting.

git clone https://github.com/TianyuCodings/JevHarness.git
cd JevHarness
python3 scripts/install-skill.py --target both --scope project --project /path/to/your-project

Bu Codex uchun .agents/skills/jev-harness/ va Claude Code uchun .claude/skills/jev-harness/ manzillarida loyiha darajasidagi o‘rnatishlarni yaratadi. Faqat bittasini o‘rnatish uchun --target codex yoki --target claude parametridan foydalaning.

Loyihalar bo‘ylab mavjud bo‘ladigan foydalanuvchi darajasidagi o‘rnatish uchun quyidagini bajaring:

python3 scripts/install-skill.py --target both --scope user

Shaxsiy o‘rnatish joylari ~/.agents/skills/jev-harness/ va ~/.claude/skills/jev-harness/ hisoblanadi. O‘rnatuvchi boshqa mavjud o‘rnatmani ustiga yozishni rad etadi. Agar skill aniqlanmasa, agent sessiyasini qayta ishga tushiring.

Arxivlangan Pokémon misolini ko‘rib chiqing

Ichki Pokémon misolida arxivlangan ishga tushirish, tanlangan harness, ko‘rib chiqish mumkin bo‘lgan evolyutsiya daraxti, to‘liq qaror yozuvlari, rad etilgan takliflar va Jev javoblari bilan sinxronlangan qayta ijro lavhalari mavjud. Ushbu arxivni ko‘rib chiqish modelga hech qanday so‘rov yubormaydi va o‘yinlarni boshlamaydi.

  1. Repozitoriyni klonlang.
  2. Veb-saytni yig‘ing.
  3. Mahalliy preview serverini ishga tushiring.
  4. Saytni zamonaviy brauzerda oching.
git clone https://github.com/TianyuCodings/JevHarness.git
cd JevHarness
node website/build.mjs
node website/preview.mjs --port 8768

localhost:8768 manzilini oching. Jang animatsiyalari Pokémon Showdown rasmiy rendereridan resurslarni yuklab oladi. Arxivlangan jang jurnali brauzerda saqlanadi va replay serveriga yuklanmaydi.

Hisobotga ko‘ra, Pokémon natijasi beshta refleksiya raundidan so‘ng Eval yutuq ko‘rsatkichini 25 foizdan, ya’ni 12 ta o‘yindan 3 tasidan, 75 foizga, ya’ni 12 ta o‘yindan 9 tasiga oshirdi. Qidiruv uchinchi raunddagi nomzodni eng yaxshi harness sifatida saqlab qoldi. Bu selection Eval to‘plamida o‘lchangan va ko‘rilmagan o‘yinlardagi natijadorlikning mustaqil bahosi sifatida qabul qilinmasligi kerak.

Oddiy qarorni tushunish

Harness vazifaga xos Jev so‘rovini yozadi. Unda state, nomlangan questions, javob type, shuningdek mavjud harakatlarni baholash uchun ishlatiladigan instructions va criteria bo‘ladi.

Yozib olingan Pokémon misolida harness Slowbro Gastrodon bilan zarba almashinuvi poygasida yutqazishi ehtimoli yuqori ekanini hisoblaydi. U to‘rtta qonuniy variantni, jumladan uchta harakat va Scizorga almashtirishni taqdim etadi. Harakat savolida choice turi ishlatiladi va Jevdan ro‘yxatdagi aynan bitta harakat ID sini qaytarish talab qilinadi.

{
  "questions": {
    "action": {
      "type": "choice",
      "instructions": "Butun jangda, faqat shu navbatda emas, g‘alaba qozonish ehtimoli eng yuqori bo‘lgan yagona harakatni tanlang.",
      "criteria": {
        "switch:2": "Scizorga almashtirish; almashtirish bitta tekin hujumni boy berishga olib keladi",
        "move:2": "Psychic; nishonni nokaut qilish uchun taxminan 3 ta zarba kerak",
        "move:3": "Ice Beam; nishonni nokaut qilish uchun taxminan 4 ta zarba kerak",
        "move:4": "Slack Off; kutilayotgan zarar joriy HPdan oshadi"
      }
    }
  }
}

Jev 0.72 harakat tanlash ehtimoli bilan switch:2 ni tanlaydi va harness bu tanlovni qabul qiladi. Bu qiymat ro‘yxatdagi harakatlarni o‘zaro taqqoslaydi; u o‘yinchining jangda g‘alaba qozonish ehtimoli 72 foiz ekanini bashorat qilmaydi.

Yozib olingan to‘liq so‘rov, javob, vaqt ma’lumotlari va kelib chiqish tafsilotlari Pokémonning 12-navbatdagi JSON yozuvida mavjud.

O‘z harnessingizni yarating

Jev uchun barcha ko‘rsatmalar va mezonlarni qo‘lda yozishingiz shart emas. O‘rnatilgan skillni chaqiring va vazifani tavsiflang, so‘ng kodlash agenti kerakli kontrakt tafsilotlarini yig‘ishiga imkon bering.

Claude Code plagini orqali chaqirish

/jev-harness:jev-harness Build a harness that routes support tickets to the right team.
First clarify my inputs, legal actions, examples, success criteria, and budget.
If we have reliable rewards, add evaluation and reflection optimization.

Mustaqil Claude Code orqali chaqirish

/jev-harness Build a harness that routes support tickets to the right team.
First clarify my inputs, legal actions, examples, success criteria, and budget.
If we have reliable rewards, add evaluation and reflection optimization.

Codex orqali chaqirish

$jev-harness Build a harness that routes support tickets to the right team.
First clarify my inputs, legal actions, examples, success criteria, and budget.
If we have reliable rewards, add evaluation and reflection optimization.

Skill avval darhol pipeline yaratish o‘rniga vazifani aniqlashtirishi kerak. Undan quyidagilar haqida ma’lumot to‘plashini kuting:

  • Vazifa kuzatuvlari va yashirin holat chegaralarida ruxsat etilgan ma’lumotlar.
  • Qonuniy harakatlar va harakatlar qanday tekshirilishi.
  • Namunaviy misollar va mavjud ma’lumotlar.
  • Muvaffaqiyat mezonlari, mukofotlar yoki baholash tartiblari.
  • Ishlash muhiti va izolyatsiya talablari.
  • Hisob ma’lumotlari va provayder mavjudligi.
  • Tajriba budjeti va optimallashtirish resurslari.

Kontrakt aniq bo‘lgach, agent harnessni yaratishi va tekshirishi mumkin. Agar ishonchli fikr-mulohaza mavjud bo‘lsa va siz optimallashtirishni so‘rasangiz, tanlangan natijani yakuniy holatga keltirishdan oldin refleksiya uchun trayektoriyalar va mukofotlardan foydalanishi mumkin.

Jev hisob ma’lumotlarini sozlash

JevHarness Jev transportining hujjatlashtirilgan ikkita konfiguratsiyasini qo‘llab-quvvatlaydi:

  • Vercel AI Gateway: JevClient(transport="vercel") ni yarating va AI_GATEWAY_API_KEY ni o‘rnating.
  • TypeSafe to‘g‘ridan-to‘g‘ri: JevClient(transport="typesafe") ni yarating va TYPESAFE_API_KEY ni o‘rnating.

Provayder adapterlari har bir model yoki endpoint hisobingiz uchun mavjud bo‘lishini kafolatlamaydi. Hisob ma’lumotlarini muhit o‘zgaruvchilarida yoki e’tiborsiz qoldiriladigan mahalliy .env faylida saqlang. Hisob ma’lumotlarini hech qachon vazifa kuzatuvlari, trace’lar yoki muzlatilgan artefaktlarga joylamang.

Harnessni baholang va yaxshilang

Refleksiya ixtiyoriy. Undan faqat ishonchli mukofot yoki baholash usuliga ega bo‘lsangiz foydalaning. Amaliy ish jarayoni quyidagicha:

  1. Vazifa chegaralarini belgilang. Yashirin holat, ball hisoblash, qonuniy harakatlarni tekshirish va nojo‘ya ta’sirlarni ishonchli adapterda saqlang.
  2. Bazaviy harness yarating. Ishonchli xususiyatlarni kodda hisoblang va Jev’ni kontekstga bog‘liq mulohazalar uchun ajrating.
  3. Pipeline’ni tekshiring. PipelineSpec va runtime vazifa shartnomasiga mos kelishini tasdiqlang.
  4. To‘liq izlarni to‘plang. Kuzatuvlar, tugun kiritmalari, chiqishlar, savollar, javoblar, xotira, xatolar va mukofotlarni saqlang.
  5. Qayta ko‘rib chiqishlarni taklif qiling. Mualliflik LLM’iga dalillarni tekshirish va kod, promptlar, graf tuzilmasi yoki xotirani qayta ko‘rib chiqish imkonini bering.
  6. Adolatli taqqoslang. Ota-versiya va taklifni bir xil o‘quv paketi asosida taqqoslang.
  7. Qabul qilingan takliflarni baholang. To‘liq Eval baholashini ishga tushiring va rad etilgan takliflarni ham qo‘shgan holda haqiqiy nomzod ajdodligini saqlang.
  8. Tanlangan harness’ni muzlating. G‘olib spetsifikatsiyani uning runtime’i, baholovchisi va e’lon qilingan vazifa resurslariga bog‘lang.

O‘quv dalillari va Eval tanlov natijalarini aniq ajratib turing. Agar Eval nomzodni tanlash uchun ishlatilsa, uni ko‘rilmagan vazifalardagi unumdorlikning xolis bahosi sifatida emas, tanlov unumdorligi sifatida ko‘rsating.

Kechikish va parallellik

Arxivlangan Pokémon Eval sinovida tanlangan harness to‘liq qarorni median 568 millisekundda yakunladi. Alohida Jev so‘rovlarining median davomiyligi 269 millisekundni tashkil etdi. Dastlabki harness’da to‘liq qaror vaqti median 678 millisekund bo‘lgan.

  • Dastlabki harness to‘liq qarori: median 678 ms, P95 1,495 ms, 238 ta qaror.
  • Tanlangan harness to‘liq qarori: median 568 ms, P95 657 ms, 113 ta qaror.
  • Tanlangan harness’dagi alohida Jev so‘rovi: median 269 ms, P95 348 ms, 226 ta so‘rov.

To‘liq qaror vaqti xususiyatlarni hisoblash, parallel Jev chaqiruvlari va yakuniy harakatni tanlashni o‘z ichiga oladi. Alohida so‘rov vaqti mijoz va tarmoq kechikishini ham o‘z ichiga oladi. Parallel chaqiruvlar davomiyligi bir-biriga ustma-ust tushadi, shuning uchun ularni qo‘shmaslik kerak. Jang simulyatsiyasi va mualliflik yoki refleksiya vaqti ushbu qaror o‘lchovlaridan tashqarida.

Ushbu arxivlangan kuzatuvlarda mahalliy javob keshidan olingan natijalar hisobga olinmagan, biroq ular har bir runtime qarorini LLM qabul qiladigan nazoratli benchmark ham bo‘lmagan.

Ilg‘or maslahatlar

Mulohaza so‘rashdan oldin faktlarni hisoblang

Qonuniy harakatlar, sonli baholar, chegaralar va hosilaviy holat kabi faktlar uchun deterministik kod yoki ifodalardan foydalaning. Qolgan noaniq tanlov uchun Jev’ga yo‘naltirilgan holat va aniq mezonlarni bering.

Harakat mezonlarini aniq ifodalang

Mavjud har bir harakatni vazifaga tegishli dalillar yordamida tasvirlang. Pokémon harness’ida mezonlarga qolgan salomatlik, zarar baholari, tezlik, nokaut uchun zarur bo‘lgan yurishlar soni va almashganda bepul hujumga imkon berish qiymati kiradi.

Mustaqillik mavjud bo‘lgan joyda parallel tugunlardan foydalaning

Mustaqil graf tugunlari bir vaqtda ishlashi mumkin, bir nechta savol esa bitta so‘rovni bo‘lishishi mumkin. Vazifa talab qilmaydigan bog‘liqliklarni kiritmasdan, bundan foydalanadigan tarzda grafni tuzing.

Ehtimollarni to‘g‘ri talqin qiling

Tanlov ehtimoli so‘rovda taqdim etilgan variantlarni reytinglaydi. Baholovchingiz bu ma’noni alohida tasdiqlamagan bo‘lsa, uni umumiy vazifa muvaffaqiyatining kalibrlangan ehtimoli sifatida talqin qilmang.

Muvaffaqiyatsizliklarni to‘liq saqlang

Muvaffaqiyatsizliklar noto‘g‘ri taxminlar, yetishmayotgan kuzatuvlar va mo‘rt mezonlarni ochib berishi mumkin. Refleksiya to‘liq dalillarga ega bo‘lishi uchun ularni muvaffaqiyatli qarorlar bilan birga izlarda saqlang.

Yashirin qisqartirishdan saqlaning

Realistik refleksiya bayt limitini sozlang. JevHarness dalillar yaxlitligini himoya qilish uchun hajmi oshib ketgan refleksiya kiritmalarini qisqartirmasdan, arxivlaydi va rad etadi; shu sababli tajribalar hajmini oldindan rejalashtirish kerak.

Muzlatilgan mantiqni muzlatilgan provayder xatti-harakatidan ajrating

Harness’ni muzlatish tanlangan pipeline va e’lon qilingan resurslarni o‘zgarmas qiladi, biroq joylashtirilgan model taxallusi vaqt o‘tishi bilan o‘zgarishi mumkin. Aniq tarixiy tekshiruv muhim bo‘lsa, yozib olingan javoblarni saqlang va yangi provayder chaqiruvlarini takrorlanuvchanlikning boshqa sharti sifatida ko‘ring.

Repository xaritasidan foydalaning

  • auto_jev/ spetsifikatsiyani tekshirish, parallel runtime, Jev transportlari, refleksiya, GEPA, saqlash va muzlatishni o‘z ichiga oladi.
  • examples/pokemon/ ishonchli jang adapteri, boshlang‘ich qiymati belgilangan mahalliy engine ko‘prigi, harness’lar va taqdimot kodini o‘z ichiga oladi.
  • examples/pokemon/sample/ tanlangan harness va saralangan veb-sayt arxivini o‘z ichiga oladi.
  • docs/ vazifa muallifligi materiallari, yozib olingan Jev chaqiruvi, videolar va skrinshotlarni o‘z ichiga oladi.
  • skills/jev-harness/ vazifaga xos harness’larni yaratadigan kod agentlari uchun ko‘rsatmalarni o‘z ichiga oladi.
  • website/ faqat o‘qish uchun mo‘ljallangan namoyish va joylashtirish adapterini o‘z ichiga oladi.

Xulosa

JevHarness LLM tomonidan ishlab chiqilgan strategiyani aniq va tekshiriladigan runtime mantiqiga aylantiradi. Avval qat’iy vazifa chegarasini belgilang, skill’ga pipeline’ni yaratish va tekshirishga imkon bering, refleksiyaga asoslangan takomillashtirishni istasangiz, to‘liq izlar hamda ishonchli mukofotlardan foydalaning. Nomzod tanlangach, uni muzlating, shunda odatiy qarorlar har bir harakat uchun mualliflik LLM’ini chaqirmasdan, uning kodi va yo‘naltirilgan Jev mulohazalaridan foydalanishi mumkin.