OpenAgentAGI

Нөхцөл (Condition)

Condition блок нь boolean илэрхийллүүдийн үндсэн дээр workflow-ийн гүйцэтгэлийн замыг салаалуулах боломж олгодог. Ингэснээр та өгөгдөл эсвэл логикт тулгуурлан өөр өөр гүйцэтгэлийн замтай, уян хатан, динамик workflow үүсгэх боломжтой бөгөөд заавал LLM ашиглах шаардлагагүй.

Condition Block

Condition блок нь LLM шаардалгүйгээр детерминист (тодорхой, давтагдах) шийдвэр гаргах боломж олгодог тул энгийн салаалсан логикт хамгийн тохиромжтой.

Тойм

Condition блок нь дараах боломжуудыг олгоно:

Салаалсан логик үүсгэх: Boolean илэрхийллүүдийн дагуу workflow-г чиглүүлэх

Өгөгдөлд суурилсан шийдвэр гаргах: Өмнөх блокуудаас гарсан үр дүнг ашиглан нөхцөл шалгах

Олон хувилбар боловсруулах: Өөр өөр замтай олон нөхцөл тодорхойлох

Детерминист чиглүүлэлт: LLM ашиглахгүйгээр шийдвэр гаргах

Ажиллах зарчим

Condition блок нь дараах дараалсан процессоор ажиллана:

  1. Илэрхийлэл үнэлэх – Одоогийн workflow-ийн өгөгдлийг ашиглан JavaScript/TypeScript boolean илэрхийллийг боловсруулна
  2. Үр дүн тодорхойлох – Илэрхийллийн үнэлгээнд үндэслэн true эсвэл false буцаана
  3. Workflow-г чиглүүлэх – Үр дүнд тохирсон дараагийн блок руу гүйцэтгэлийг шилжүүлнэ
  4. Контекст үүсгэх – Debug болон мониторингод ашиглах шийдвэрийн metadata үүсгэнэ

Тохиргооны сонголтууд

Conditions

Үнэлэгдэх нэг эсвэл хэд хэдэн нөхцөлийг тодорхойлно. Нэг condition нь дараах мэдээллийг агуулна:

  • Expression: True эсвэл false утга буцаах JavaScript/TypeScript илэрхийлэл
  • Path: Нөхцөл true болсон үед шилжих destination блок
  • Description: Нөхцөл юу шалгаж байгааг тайлбарлах (заавал биш)

Нөхцлүүд нь дарааллаар үнэлэгддэг бөгөөд хамгийн эхэнд таарсан condition нь workflow-ийн гүйцэтгэлийн замыг тодорхойлно.

Condition илэрхийллийн формат

Condition-ууд нь JavaScript синтакс ашигладаг бөгөөд өмнөх блокуудаас ирсэн input утгуудыг ашиглаж болно.

// Оноо тодорхой босгоос их эсэхийг шалгах
<agent.score> > 75
// Текст тодорхой түлхүүр үг агуулж байгаа эсэх
<agent.text>.includes('urgent') || <agent.text>.includes('emergency')
// Олон нөхцөлийг зэрэг шалгах
<agent.age> >= 18 && <agent.country> === 'US'

Үр дүнд хандах

Condition үнэлэгдсэний дараа дараах output-уудад хандах боломжтой:

  • <condition.result>: Нөхцөлийн үнэлгээний boolean үр дүн
  • <condition.matched_condition>: Таарсан condition-ийн ID
  • <condition.content>: Үнэлгээний үр дүнгийн тайлбар
  • <condition.path>: Сонгогдсон routing destination-ийн мэдээлэл

Дэвшилтэт боломжууд

Нарийн төвөгтэй илэрхийллүүд

Condition дотор JavaScript-ийн оператор, функцуудыг ашиглаж болно:

// String шалгалт
<user.email>.endsWith('@company.com')

// Array шалгалт
<api.tags>.includes('urgent')

// Математик тооцоолол
<agent.confidence> * 100 > 85

// Огноо харьцуулах
new Date(<api.created_at>) > new Date('2024-01-01')
### 
Олон нөхцлийн дараалсан үнэлгээ

Нөхцлүүд нь дарааллаар шалгагдаж, эхний таарсан condition-оор гүйцэтгэл шийдэгдэнэ:

```javascript
// Нөхцөл 1: Өндөр ач холбогдол
<ticket.priority> === 'high'

// Нөхцөл 2: Яаралтай түлхүүр үг шалгах
<ticket.subject>.toLowerCase().includes('urgent')

// Нөхцөл 3: Default fallback
true

Алдааны менежмент

Condition блок нь дараах тохиолдлуудыг автоматаар зохицуулна:

Undefined эсвэл null утгуудыг аюулгүй үнэлэх

Type mismatch тохиолдолд зохих fallback ашиглах

Буруу илэрхийлэлд алдааны лог бичих

Дутуу хувьсагчид default утга ашиглах

Оролт ба гаралт

  • Conditions: Үнэлэгдэх boolean илэрхийллүүдийн массив
  • Expressions: Блокуудаас ирсэн output ашигласан JavaScript/TypeScript нөхцлүүд
  • Routing Paths: Нөхцөл бүрийн үр дүнд тохирох destination блок
  • condition.result: Нөхцөлийн үнэлгээний boolean үр дүн
  • condition.matched_condition: Таарсан condition-ийн ID
  • condition.content: Үнэлгээний тайлбар
  • condition.path: Сонгогдсон routing destination-ийн мэдээлэл
  • Boolean Result: Нөхцөлийн үндсэн үр дүн
  • Routing Information: Сонгогдсон зам болон нөхцлийн дэлгэрэнгүй
  • Access: Condition блокийн дараах блокуудаас ашиглах боломжтой

Жишээ хэрэглээ

Харилцагчийн дэмжлэгийн чиглүүлэлт

Сценари: Дэмжлэгийн хүсэлтийг ач холбогдлоор нь чиглүүлэх

  1. API блок нь support ticket-ийн өгөгдлийг татна
  2. Condition нь <api.priority> нь 'high' эсэхийг шалгана
  3. Өндөр ач холбогдол → Escalation хэрэгсэлтэй агент
  4. Энгийн ач холбогдол → Стандарт дэмжлэгийн агент
Контент модераци

Сценари: Шинжилгээний үр дүнд тулгуурлан контент шүүх

  1. Agent нь хэрэглэгчийн үүсгэсэн контентыг шинжилнэ
  2. Condition нь <agent.toxicity_score> > 0.7 эсэхийг шалгана
  3. Хортой контент → Модерацийн workflow
  4. Цэвэр контент → Нийтлэх workflow
Хэрэглэгчийн onboarding урсгал

Сценари: Хэрэглэгчийн төрлөөс хамаарч onboarding-ийг хувийн болгох

  1. Function блок нь бүртгэлийн өгөгдлийг боловсруулна
  2. Condition нь <user.account_type> === 'enterprise' эсэхийг шалгана
  3. Enterprise хэрэглэгч → Нарийвчилсан тохиргооны workflow
  4. Энгийн хэрэглэгч → Хялбар onboarding workflow

Шилдэг практик

Нөхцлүүдийн дарааллыг зөв тохируулах: Илүү тодорхой нөхцлүүдийг ерөнхий нөхцлөөс өмнө байрлуул

Default нөхцөл нэмэх: Сүүлд нь true condition нэмж, таараагүй тохиолдлуудыг барих

Илэрхийллүүдийг энгийн байлгах: Уншихад ойлгомжтой, debug хийхэд хялбар болго

Нөхцлүүдээ баримтжуулах: Condition бүрт тайлбар нэмж багийн хамтын ажиллагааг сайжруулах

Захын утгуудыг шалгах: Нөхцлийн хязгаарын утгуудаар тест хийж зөв ажиллаж буй эсэхийг баталгаажуулах

Нөхцөл (Condition)