Функц (Function)
Function блок нь таны workflow дотор захиалгат JavaScript эсвэл TypeScript кодыг гүйцэтгэх боломжийг олгоно. Үүнийг өгөгдөл хувиргах, тооцоолол хийх, эсвэл бусад блокууд дээр байхгүй нарийн логикийг хэрэгжүүлэхэд ашиглана.

Тойм
Function блок нь дараах боломжуудыг олгодог:
Өгөгдөл хувиргах: Формат хөрвүүлэх, текст задлах, массив болон объект боловсруулах
Тооцоолол хийх: Математик үйлдэл, статистик, санхүүгийн тооцоолол
Захиалгат логик хэрэгжүүлэх: Нарийн нөхцөл шалгалт, давталт болон алгоритмууд
Гадаад өгөгдөл боловсруулах: Хариу задлах, хүсэлт форматлах, баталгаажуулалт боловсруулах
Хэрхэн ажилладаг вэ
Function блок нь таны кодыг аюулгүй, тусгаарлагдсан орчинд ажиллуулна:
- Оролт хүлээн авах: Өмнөх блокуудын өгөгдлийг
inputобъектоор дамжуулан авна - Код гүйцэтгэх: JavaScript эсвэл Python кодыг ажиллуулна
- Үр дүн буцаах:
returnашиглан өгөгдлийг дараагийн блок руу дамжуулна - Алдаа боловсруулах: Суурилагдсан алдаа барих болон лог бичих боломжтой
Алсын гүйцэтгэл (E2B)
- Хэлүүд: JavaScript болон Python-ыг тусгаарлагдсан E2B sandbox орчинд ажиллуулна.
- Идэвхжүүлэх: Function блок дээр “Remote Code Execution” тохиргоог асаана.
- Хэзээ ашиглах вэ: Илүү хүнд логик, гадаад сангууд, эсвэл Python-д зориулсан код хэрэгтэй үед.
- Гүйцэтгэл: Sandbox эхлэлт болон сүлжээний зардлаас шалтгаалан local JS-ээс удаан.
- Тэмдэглэл: Local орчинд ажиллуулахад
E2B_API_KEYшаардлагатай. Хамгийн бага хоцролттой ажиллуулахын тулд local JS (Fast Mode) ашиглахыг зөвлөе.
Оролт ба гаралт
Code: Ажиллуулах JavaScript / Python код
Timeout: Гүйцэтгэх дээд хугацаа (анхдагч нь 30 секунд)
Input Data: Холбогдсон бүх блокуудын гаралтын өгөгдөл
function.result: Function-оос
returnхийсэн утгаfunction.stdout: Код доторх
console.log()-ийн гаралт
Ашиглах жишээнүүд
Өгөгдөл боловсруулах pipeline
Сценари: API-ийн хариуг бүтэцтэй өгөгдөл болгон хувиргах
- API блок түүхий хэрэглэгчийн өгөгдөл татна
- Function блок өгөгдлийг боловсруулж, баталгаажуулна
- Function блок нэмэлт үзүүлэлтүүдийг тооцоолно
- Response блок форматлагдсан үр дүн буцаана
Бизнес логик хэрэгжүүлэх
Сценари: Үнэнч байдлын оноо ба түвшин тооцоолох
- Agent хэрэглэгчийн худалдан авалтын түүхийг авна
- Function блок үнэнч байдлын үзүүлэлтүүдийг тооцоолно
- Function блок хэрэглэгчийн түвшинг тодорхойлно
- Condition блок түвшнээс хамаарч урсгалыг чиглүүлнэ
Өгөгдөл шалгалт ба цэвэрлэгээ
Сценари: Хэрэглэгчийн оруулсан өгөгдлийг шалгаж, цэвэрлэх
- Формоор илгээсэн хэрэглэгчийн өгөгдлийг хүлээн авна
- Function блок имэйл болон утасны дугаарын форматыг шалгана
- Function блок өгөгдлийг цэвэрлэж, стандартчилна
- API блок баталгаажсан өгөгдлийг өгөгдлийн санд хадгална
Жишээ: Үнэнч байдлын оноо тооцоологч
// Process customer data and calculate loyalty score
const { purchaseHistory, accountAge, supportTickets } = <agent>;
// Calculate metrics
const totalSpent = purchaseHistory.reduce((sum, purchase) => sum + purchase.amount, 0);
const purchaseFrequency = purchaseHistory.length / (accountAge / 365);
const ticketRatio = supportTickets.resolved / supportTickets.total;
// Calculate loyalty score (0-100)
const spendScore = Math.min(totalSpent / 1000 * 30, 30);
const frequencyScore = Math.min(purchaseFrequency * 20, 40);
const supportScore = ticketRatio * 30;
const loyaltyScore = Math.round(spendScore + frequencyScore + supportScore);
return {
customer: <agent.name>,
loyaltyScore,
loyaltyTier: loyaltyScore >= 80 ? "Platinum" : loyaltyScore >= 60 ? "Gold" : "Silver",
metrics: { spendScore, frequencyScore, supportScore }
};Шилдэг туршлагууд Функцийг төвлөрсөн байлгах: Нэг функц нэг зорилготой байвал засвар, debug хийхэд хялбар
Алдааг зөв удирдах: try/catch ашиглан ойлгомжтой алдааны мэдээлэл өгөх
Захын тохиолдлуудыг шалгах: Хоосон, null утга болон хязгаарын нөхцлүүд
Гүйцэтгэлийг оновчлох: Том өгөгдөл дээрх тооцоолол, санах ойн хэрэглээг анхаарах
Debug хийхдээ console.log() ашиглах: stdout-оор дамжуулан гүйцэтгэлийг хянах