Talim

API nima?

API — dasturlar o‘rtasidagi aloqa protokoli va agentlarning tashqi dunyo bilan bog‘lanish usuli.

8 daqiqa o‘qish · Boshlang‘ich

API (Application Programming Interface) — bu dasturlar o‘rtasidagi aloqa qoidasi. Agent tashqi xizmat bilan shu orqali gaplashadi.

API nima uchun kerak?

Agent’ning tool’lari asosan API’larga so‘rov yuboradi:

  • ob-havo xizmati API’si;
  • qidiruv tizimi API’si;
  • ma’lumotlar bazasi API’si;
  • boshqa AI xizmatlari API’si.

Asosiy tushunchalar

Atama Ma’nosi
Endpoint API’ning manzili (URL)
Method Harakat turi: GET, POST, PUT, DELETE
Request So‘rov (sarlavha + ma’lumot)
Response Javob (holat kodi + ma’lumot)
Status code Natija kodi: 200 OK, 404 topilmadi, 500 xato

Oddiy misol

import requests

# GET so‘rov — ma'lumot olish
response = requests.get(
    "https://api.weather.com/v1/cities/tashkent",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
)

if response.status_code == 200:
    data = response.json()
    print(f"Harorat: {data['temp']}°C")
else:
    print(f"Xato: {response.status_code}")

Eslatma

API kalitlari (API key) maxfiy ma'lumotdir. Ularni kod ichiga yozmang — environment variable'larda saqlang.

REST API

Eng keng tarqalgan API turi — REST:

GET    /cities          → shaharlar ro‘yxati
GET    /cities/tashkent → bitta shahar
POST   /cities          → yangi shahar yaratish
DELETE /cities/tashkent → shaharni o‘chirish

Agent bilan bog‘lash

Agent tool orqali API’ni chaqiradi:

def weather_tool(city: str) -> dict:
    """Shahar ob-havosini qaytaruvchi tool."""
    resp = requests.get(
        f"https://api.weather.com/v1/cities/{city}",
        headers={"Authorization": f"Bearer {os.environ['WEATHER_KEY']}"},
        timeout=10,
    )
    resp.raise_for_status()
    return resp.json()

agent = Agent(model="gpt-4o", tools=[weather_tool])

Amaliy maslahat

API so‘rovlariga har doim timeout qo‘shing. Agent tool'ni chaqirganda, u qancha kutishi aniq bo‘lishi kerak.

Xulosa

API — agentning tashqi dunyoga eshigi. Tool’lar API’larga so‘rov yuboradi va natijani qayta ishlaydi.

Bu dars foydali bo‘ldimi?