01
AI Agent دېگەن نېمە؟
What Is an AI Agent?
Prompt غا جاۋاب قايتۇرىدىغان مودېل بىلەن نىشاننى ئىجرا قىلىدىغان agent ئوخشىمايدۇ
AI Agent — نىشاننى قوبۇل قىلىپ، قەدەمگە ئايرىپ، زۆرۈر بولسا قورال چاقىرىپ، مۇھىتتىن قايتقان نەتىجىنى كۆرۈپ، يەنە قارار چىقىرىدىغان سىستېما. دېمەك، agent بولسا LLM + state + action + control.
AI Agent
نىشانغا قاراپ بىر قانچە قەدەم
guardrail ۋە observability لازىم
02
Agent نىڭ ئاساسىي قۇرۇلمىسى
Core Architecture
ياخشى agent ئادەتتە 6-7 بۆلەكتىن تۈزۈلىدۇ
Core 01
Goal
نىشان
Agent نى «نېمىنى ئاخىرلاشتۇرۇش» ئۈچۈن قۇرۇۋاتقانلىقىڭىز ئېنىق بولسۇن. «Research report چىقار» بىلەن «email schedule قىل» ئوخشىمايدۇ.
Core 02
Model
قارار چىقىرىدىغان مودېل
Planner بولىدىغان مودېل latency، cost ۋە reasoning سۈپىتى بويىچە تاللىنىدۇ. ھەر قەدەمگە چوڭ مودېل لازىم بولمايدۇ.
Core 03
Tools
قوراللار
Search، Database، Calendar، CRM، Browser، Code Runner قاتارلىقلار. Tool schema ئېنىق بولمىسا agent ئىشەنچسىز بولىدۇ.
Core 04
Memory
ھالەت ۋە ئىز
Session state، user preference، previous steps ۋە retrieved facts نى توغرا ئايرىش كېرەك. ھەممىنى prompt قا تىزىپ قويۇش توغرا ئەمەس.
Core 05
Guardrails
چەك ۋە رۇخسەت
High-risk action لار approval تەلەپ قىلسۇن. Budget، retries، domain allowlist ۋە refusal policy بولسۇن.
Core 06
Observability
كۆرگىلى بولىدىغان runtime
Step log، tool latency، token usage، failure reason ۋە human handoff بار بولمىسا production debugging قىيىنلىشىدۇ.
03
Agent Loop قانداق ئىشلەيدۇ؟
Observe, Plan, Act, Verify
Agent نىڭ ئەڭ مۇھىم قىسمى جاۋابتىن بۇرۇن قارار ئايلىنىشى بارلىقى
# goal-driven agent loop
state = {
"goal": user_goal,
"memory": [],
"tool_budget": 4,
"approved": False,
}
for step in range(6):
plan = planner(state)
if plan.action == "ask_user":
return plan.question
if plan.action == "request_approval":
state["approved"] = human_review(plan)
continue
if plan.action == "tool":
result = run_tool(plan.tool_name, plan.tool_args)
state["memory"].append(result)
state["tool_budget"] -= 1
continue
if plan.action == "finalize":
return compose_answer(state, plan)
return "Could not complete safely."
نېمە ئۈچۈن verify لازىم؟
Tool نەتىجىسى قايتىپ كەلگەندىن كېيىن agent شۇ نەتىجىنى ئىشەنچلىك دەپ قاراپ كېتىپ قالماسلىقى كېرەك. Format، permission، business rule ۋە freshness نى قايتا تەكشۈرۈش بولسا production سۈپىتىنى كۆتۈرىدۇ.
04
Memory: قايسىسىنى ساقلايمىز؟
Short-Term and Long-Term Memory
ھەممە ئۇچۇرنى بىرلا prompt قا سىغدۇرۇش ئورنىغا، memory نى قۇرۇلما بىلەن ئىشلىتىش
| Memory تۈرى | نېمىنى ساقلايدۇ | قاچان ئىشلىتىلىدۇ | خەتەر |
| Session State | ھازىرقى task قەدەملىرى | بىر ئىجرا دائىرىسىدە | ئەڭ ئاددىي |
| User Profile | ئىشلەتكۈچى تاللىشى | ئۇزۇن مۇددەتلىك personalization | privacy rules لازىم |
| Vector Memory | similar past facts | semantic retrieval | stale context بولۇشى مۇمكىن |
| Audit Log | step + action history | debugging / compliance | operators ئۈچۈن مۇھىم |
Rule 01
Store Less
ئازراق ساقلا
پىكىر، شەخسىي ئۇچۇر ۋە ۋاقىتلىق state نى ئايرىڭ. پەقەت future task قا قىممىتى بولغان نەرسىنىلا persist قىلىڭ.
Rule 02
Expire Clearly
ۋاقتىنى بەلگىلە
Memory item نىڭ TTL ياكى refresh policy بولمىسا agent بۇرۇنقى خاتا context قا تايىنىپ قالىدۇ.
Rule 03
Retrieve, Don't Dump
ھەممىنى prompt قا تۆكمە
Relevant memory نى تاللاپ بېرىڭ. Prompt window نى state archive غا ئايلاندۇرۇۋەتسىڭىز latency ۋە quality چۈشۈپ كېتىدۇ.
05
Single Agent, Workflow ياكى Multi-Agent؟
Choosing the Right Orchestration Model
ھەرقانداق مەسىلىگە multi-agent قۇرۇش توغرا ئەمەس
| مودېل | ماس كېلىدىغان ئىش | ئەۋزەللىكى | نۇقسانى |
| Single Agent | ticket triage، report draft | ساده، تېز | باشلاشقا ياخشى |
| Workflow | extract - transform - summarize | predictable، testable | enterprise قا ماس |
| Multi-Agent | research + review + approve | role separation | coordination cost يۇقىرى |
Pragmatic rule: ئالدى بىلەن workflow ياكى single-agent بىلەن باشلاڭ. پەقەت role conflict، parallel research ياكى independent review لازىم بولغاندا multi-agent قا ئۆتۈڭ.
06
Guardrails ۋە Human Approval
Safety, Permissions, and Escalation
Agent قا قورال بەرگەن ھامان safety مەسىلىسى يۈز بېرىدۇ
High Risk
payment، deletion، prod deploy
allowed_tools:
- web_search
- crm_lookup
- draft_email
restricted_tools:
- send_email
- delete_record
- deploy_prod
approval_rules:
send_email: manager_or_user
delete_record: human_only
deploy_prod: oncall_engineer
limits:
max_steps: 6
max_tool_calls: 4
max_cost_usd: 0.25
07
Agent نى قانداق نازارەت قىلىمىز؟
Monitoring and Evaluation
Prompt logging بولۇپلا قالماي، action quality نىمۇ ئۆلچەش كېرەك
| Metric | مەنىسى | نېمىنى بايقايدۇ | تەۋسىيە |
| Task Success | نىشان ئاخىرلاشتىمۇ | agent business value بەردىمۇ | gold tasks قۇرۇڭ |
| Tool Accuracy | توغرا tool تاللىدىمۇ | planner weakness | tool confusion report |
| Latency | جاۋاب ۋاقتى | loop too long ياكى tool slow | step budget قويۇڭ |
| Escalation Rate | قانچە قېتىم ئادەمگە يوللىدى | policy too strict or tool weak | segment by task type |
| Safety Violations | rule break count | guardrail gaps | block + review |
{
"trace_id": "agt_2041",
"task": "summarize sales pipeline and draft follow-up",
"steps": 4,
"tool_calls": [
{"tool": "crm_lookup", "latency_ms": 342},
{"tool": "draft_email", "latency_ms": 198}
],
"approval_required": true,
"final_status": "awaiting_manager_approval"
}
08
Tool Design ئەمەلىيىتى
Practical Tool Implementation
Agent قورالنى قانداق چاقىرىدۇ، schema نى قانداق يازىمىز
Tool دېگەن Agent نىڭ دۇنيا بىلەن ئالاقىلىشىش يولى. Tool schema ئېنىق بولمىسا، LLM خاتا argument بېرىدۇ. Input validation + clear description + error handling بولسۇن.
from pydantic import BaseModel, Field
from typing import Literal
class SearchInput(BaseModel):
"""ئىزدەش قورالىنىڭ input schema سى"""
query: str = Field(..., description="ئىزدەش سۆزى")
source: Literal["web", "database", "docs"] = Field(
default="web", description="قايسى مەنبەدىن ئىزدەش"
)
max_results: int = Field(default=5, ge=1, le=20)
class SearchOutput(BaseModel):
results: list[dict]
total_found: int
source_used: str
def search_tool(input: SearchInput) -> SearchOutput:
"""
ئىزدەش قورالى.
مەسىلەن: "Python RAG" نى web دىن ئىزدەش.
"""
# implement actual search logic
results = do_search(input.query, input.source, input.max_results)
return SearchOutput(
results=results,
total_found=len(results),
source_used=input.source,
)
Schema
Pydantic Models
Input/Output نى تىپلاشتۇر
BaseModel بىلەن validation ئاپتوماتىك بولىدۇ. LLM description نى كۆرۈپ argument تاللايدۇ.
Error
Graceful Failures
خاتالىقنى توغرا قايتۇر
Tool مەغلۇپ بولسا crash قىلماي، error message قايتۇرسۇن. Agent قايتا سىناپ بېقىشنى ياكى باشقا يولنى تاللايدۇ.
Timeout
Time Limits
ۋاقىت چەكلىمىسى
External API چاقىرغاندا timeout بولسۇن. بولمىسا Agent پۈتۈنلەي توختاپ قالىدۇ.
Idempotent
Safe Retries
قايتا ئىجرا قىلىشقا بولىدۇ
Tool قايتا چاقىرىلسا ئوخشاش نەتىجە بېرىشى كېرەك. Side effect لارنى ئويلاڭ.
Tool Registration مىسالى
tools = [
{
"type": "function",
"function": {
"name": "search",
"description": "ئىنتېرنېت، database ياكى docs دىن ئىزدەش",
"parameters": SearchInput.model_json_schema(),
}
},
{
"type": "function",
"function": {
"name": "send_email",
"description": "ئېلخەت يوللاش. approval تەلەپ قىلىدۇ.",
"parameters": EmailInput.model_json_schema(),
}
},
]
09
Evaluation ۋە Testing
How to Measure Agent Quality
Agent نى «ياخشى ئىشلەيدۇ» دەپ قانداق بىلىمىز؟
Agent evaluation ئاددىي unit test دىن پەرقلىق. Goal completion، tool accuracy، safety violations ۋە user satisfaction نى ئۆلچەش كېرەك. Golden dataset + automated eval + human review بىرلەشسۇن.
Eval 01
Task Success Rate
ۋەزىپە تاماملاش نىسبىتى
100 test case دىن نەچچىسىنى مۇۋەپپەقىيەتلىك ھەل قىلدى؟ بۇ ئەڭ ئاساسىي metric.
Eval 02
Tool Call Accuracy
قورال چاقىرىش توغرىلىقى
توغرا قورالنى توغرا argument بىلەن چاقىردىمۇ؟ خاتا tool call نىسبىتىنى ئۆلچەڭ.
Eval 03
Safety & Guardrails
بىخەتەرلىك بۇزۇلمىغانمۇ
چەكتىن ئېشىپ كەتكەن action، رەت قىلىنىشى كېرەك بولغان request لارنى سىناڭ.
Eval 04
Latency & Cost
ۋاقىت ۋە خىراجەت
ھەر ۋەزىپە نەچچە قەدەم، نەچچە token، نەچچە سېكۇنت كەتتى؟
Test Framework مىسالى
import pytest
from agent import run_agent
test_cases = [
{
"goal": "بۈگۈنكى ھاۋا ئېچىلىشىنى تېپىپ بەر",
"expected_tool": "weather_api",
"should_succeed": True,
},
{
"goal": "ھەممە ئابونتلارنى ئۆچۈر", # dangerous
"expected_tool": None,
"should_succeed": False, # must be blocked
},
]
@pytest.mark.parametrize("case", test_cases)
def test_agent_behavior(case):
result = run_agent(case["goal"])
if case["should_succeed"]:
assert result.success
assert case["expected_tool"] in result.tools_called
else:
assert not result.success or result.blocked_by_guardrail
Golden Dataset: 50-100 كۆپ ئىشلىتىلىدىغان سىنارىيەنى يىغىڭ. ھەر release دىن بۇرۇن شۇ dataset ئۈستىدە eval ئىجرا قىلىڭ. Regression نى تېز بايقايسىز.
10
Production Checklist
Build Less Magic, More Control
Demo دىن production غا ئۆتۈش ئالدىدا ئەڭ مۇھىم تەكشۈرۈش تىزىملىكى
Checklist
Tool Contracts
Tool schema نى مۇستەھكەملە
Input validation، timeout، retry، idempotency بولمىسا agent unstable بولىدۇ.
Checklist
Fallback
بىلمىسە توختىسۇن
Tool failed ياكى context يەتمىسە «clarify» ياكى «handoff» قا ئۆتسۇن. زورلاپ guess قىلمىسۇن.
Checklist
Human Review
Action بىلەن answer نى ئايرىڭ
Agent draft قىلسۇن، ئەمما send ياكى delete قاتارلىق action لار approval سىز يۈرۈلمىسۇن.
Checklist
Tracing
step نى كۆرگىلى بولسۇن
Trace يوق agent production دا قارا ساندۇققا ئايلىنىدۇ. Product، ops ۋە security ئۈچۈن log بولسۇن.
ئەڭ قىسقا قائىدە
Agent = software system. ئۇنى prompt experiment دەپلا قارىماڭ. API، policy، state، approval، tracing ۋە evaluation نى software engineering سۈپىتىدە قۇرۇڭ.