Cara Menggunakan Alat Agen AI OpenAI (Tutorial API Pengembang)

Pelajari cara pakai alat baru OpenAI (Responses API & Agents SDK) buat agen AI canggih. Web, file, & komputer.

Ardianto Nugroho

Ardianto Nugroho

12 July 2025

Cara Menggunakan Alat Agen AI OpenAI (Tutorial API Pengembang)

Anda mungkin pernah mendengar tentang inovasi terbaru OpenAI, alat baru mereka untuk membangun agen. Alat-alat ini, yang didukung oleh OpenAI API, merevolusi cara pengembang membuat sistem cerdas dan responsif. Baik Anda seorang pemrogram berpengalaman atau baru memulai, postingan blog ini akan memandu Anda melalui semua yang perlu Anda ketahui tentang memanfaatkan penawaran OpenAI untuk membangun agen Anda sendiri.

💡
Dan sebelum kita mulai, izinkan saya memberi Anda informasi singkat: jika Anda ingin meningkatkan pengalaman pengembangan API Anda, unduh Apidog secara gratis hari ini—ini adalah alat yang fantastis untuk menyederhanakan pekerjaan Anda dengan API seperti OpenAI!
button

Mengapa Alat Baru OpenAI untuk Membangun Agen Mengubah Permainan

OpenAI mengumumkan integrasi kemampuan pencarian web ke dalam OpenAI API. Pembaruan ini memperkenalkan jawaban cepat dan terkini dengan tautan ke sumber web yang relevan, semuanya didukung oleh model yang sama di balik pencarian ChatGPT. Ini adalah lompatan besar bagi pengembang yang ingin membangun sistem agentik, pikirkan asisten AI yang dapat menangani tugas-tugas kompleks, mengambil data waktu nyata, dan berinteraksi dengan pengguna secara mulus.

OpenAI memperkenalkan Responses API, kemampuan pencarian web, alat pencarian file, fitur penggunaan komputer, dan Agents SDK. Bersama-sama, mereka membentuk kerangka kerja yang kuat untuk membangun agen yang terasa lebih cerdas dan lebih otonom dari sebelumnya. Alat-alat baru ini dirancang untuk membantu pengembang membuat agen yang aman, efisien, dan kuat.

Apa Itu Agen? Penyegaran Singkat

Agen, dalam konteks AI, adalah sistem atau program otonom yang dapat memahami lingkungannya, membuat keputusan, dan mengambil tindakan untuk mencapai tujuan tertentu. Anggap saja mereka sebagai sahabat digital Anda yang mampu menjawab pertanyaan, menjalankan tugas, atau bahkan belajar dari interaksi.

Alat baru OpenAI memberdayakan pengembang untuk membangun agen-agen ini menggunakan OpenAI API, menjadikannya lebih cerdas, lebih cepat, dan lebih terhubung ke web.

Memulai: Memahami Responses API OpenAI

Responses API adalah pengubah permainan yang menggabungkan fitur terbaik dari Chat Completions dan Assistants API OpenAI ke dalam alat yang lebih sederhana dan lebih kuat. Jika Anda terbiasa dengan API OpenAI sebelumnya, Anda akan menghargai bagaimana ini menyederhanakan proses pembangunan agen.

Untuk memulai, kunjungi dokumentasi pengembang OpenAI. Responses API memungkinkan Anda mengintegrasikan beberapa alat dan model untuk menjalankan tugas-tugas kompleks, menjadikannya sempurna untuk membuat agen AI yang dapat menangani segalanya mulai dari menjawab pertanyaan hingga mengatur alur kerja multi-langkah.

Berikut cara Anda dapat memulai:

OpenAI API menyediakan antarmuka sederhana ke AI canggih model untuk pembuatan teks, pemrosesan bahasa alami, visi komputer, dan banyak lagi. Contoh ini menghasilkan keluaran teks dari perintah, seperti yang mungkin Anda gunakan ChatGPT.

import OpenAI from "openai";
const client = new OpenAI();

const response = await client.responses.create({
    model: "gpt-4o",
    input: "Write a one-sentence bedtime story about a unicorn."
});

console.log(response.output_text);

Analisis masukan gambar

Anda juga dapat memberikan masukan gambar ke model. Pindai tanda terima, analisis tangkapan layar, atau temukan objek di dunia nyata dengan visi komputer.

import OpenAI from "openai";
const client = new OpenAI();

const response = await client.responses.create({
    model: "gpt-4o",
    input: [
        { role: "user", content: "What two teams are playing in this photo?" },
        {
            role: "user",
            content: [
                {
                    type: "input_image", 
                    image_url: "https://upload.wikimedia.org/wikipedia/commons/3/3b/LeBron_James_Layup_%28Cleveland_vs_Brooklyn_2018%29.jpg",
                }
            ],
        },
    ],
});

console.log(response.output_text);

Perluas model dengan alat

Berikan model akses ke data dan kemampuan baru menggunakan alat. Anda dapat memanggil kode khusus Anda sendiri, atau menggunakan salah satu dari OpenAI alat bawaan yang kuat. Contoh ini menggunakan pencarian web untuk memberi model akses ke informasi terbaru di Internet.

import OpenAI from "openai";
const client = new OpenAI();

const response = await client.responses.create({
    model: "gpt-4o",
    tools: [ { type: "web_search_preview" } ],
    input: "What was a positive news story from today?",
});

console.log(response.output_text);

Berikan pengalaman AI secepat kilat

Menggunakan yang baru Realtime API atau server-sent streaming events, Anda dapat membangun pengalaman berkinerja tinggi dan latensi rendah untuk pengguna Anda.

import { OpenAI } from "openai";
const client = new OpenAI();

const stream = await client.responses.create({
    model: "gpt-4o",
    input: [
        {
            role: "user",
            content: "Say 'double bubble bath' ten times fast.",
        },
    ],
    stream: true,
});

for await (const event of stream) {
    console.log(event);
}

Bangun agen

Gunakan platform OpenAI untuk membangun agen yang mampu mengambil tindakan—seperti mengendalikan komputer—atas nama pengguna Anda. Gunakan Agent SDK untuk Python untuk membuat logika orkestrasi di backend.

from agents import Agent, Runner
import asyncio

spanish_agent = Agent(
    name="Spanish agent",
    instructions="You only speak Spanish.",
)

english_agent = Agent(
    name="English agent",
    instructions="You only speak English",
)

triage_agent = Agent(
    name="Triage agent",
    instructions="Handoff to the appropriate agent based on the language of the request.",
    handoffs=[spanish_agent, english_agent],
)


async def main():
    result = await Runner.run(triage_agent, input="Hola, ¿cómo estás?")
    print(result.final_output)


if __name__ == "__main__":
    asyncio.run(main())

# ¡Hola! Estoy bien, gracias por preguntar. ¿Y tú, cómo estás?

Alat bawaan API menjalankan tugas-tugas ini dengan mulus, menghemat waktu dan tenaga Anda. Selain itu, ini dirancang dengan mempertimbangkan keamanan dan keandalan, yang merupakan kemenangan besar bagi pengembang.

Pencarian Web untuk Agen yang Lebih Cerdas

Alat pencarian web OpenAI, yang didukung oleh model seperti pencarian GPT-4o dan pencarian mini GPT-4o, memungkinkan agen Anda mengambil informasi terkini dari internet dan mengutip sumber. Ini sangat berguna untuk membangun agen yang perlu memberikan jawaban yang akurat dan waktu nyata.

Alat pencarian web tersedia dalam pratinjau melalui OpenAI API, dan menawarkan akurasi yang mengesankan. Pada tolok ukur SimpleQA OpenAI, pencarian GPT-4o mencetak 90%, sedangkan pencarian mini GPT-4o mencetak 88%. Itu presisi yang serius!

Untuk menerapkan pencarian web di agen Anda, lihat panduan OpenAI. Berikut ringkasan singkatnya:

Bayangkan membangun bot layanan pelanggan yang menggunakan pencarian web untuk menjawab pertanyaan tentang ketersediaan produk atau tren industri. Dengan pencarian web OpenAI, agen Anda dapat memberikan respons yang tepat waktu dan akurat, meningkatkan kepercayaan dan kepuasan pengguna.

Menguasai Pencarian File untuk Akses Data yang Efisien

Alat ampuh lainnya dalam gudang OpenAI adalah pencarian file. Fitur ini memungkinkan agen AI Anda dengan cepat memindai file di database perusahaan untuk mengambil informasi. Ini ideal untuk aplikasi perusahaan di mana agen perlu mengakses dokumen internal, laporan, atau dataset.

OpenAI menekankan bahwa mereka tidak akan melatih modelnya pada file-file ini, memastikan privasi dan keamanan—pertimbangan penting bagi bisnis. Anda dapat mempelajari lebih lanjut tentang file cari di dokumentasi.

Berikut cara memasukkan pencarian file ke dalam agen Anda:

  1. Unggah File: Gunakan OpenAI API untuk mengunggah file Anda ke platform.
  2. Konfigurasikan Agen: Siapkan agen Anda untuk menggunakan alat pencarian file di dalam Responses API.
  3. Kueri Data: Agen Anda dapat mencari informasi spesifik di dalam file dan mengembalikan hasil yang relevan.

Misalnya, Anda dapat membangun agen SDM yang mencari catatan karyawan untuk memberikan rincian penggajian atau saldo liburan. Tingkat otomatisasi ini dapat menghemat jam kerja manual dan meningkatkan efisiensi di seluruh departemen.

Mengotomatiskan Tugas dengan Kemampuan Penggunaan Komputer

Agen Penggunaan Komputer OpenAI (CUA) model, yang mendukung produk Operator, memungkinkan agen untuk menghasilkan tindakan mouse dan keyboard. Ini berarti agen Anda dapat mengotomatiskan tugas-tugas seperti entri data, alur kerja aplikasi, dan navigasi situs web.

Alat ini saat ini dalam pratinjau penelitian, tetapi sudah menunjukkan janji bagi pengembang. Anda dapat menjelajahi kemampuannya di dokumentasi. Versi konsumen CUA, yang tersedia di Operator, berfokus pada tindakan berbasis web, tetapi perusahaan dapat menjalankannya secara lokal untuk aplikasi yang lebih luas.

Berikut cara memulai:

Bayangkan membangun agen yang mengotomatiskan tugas-tugas kantor yang berulang, seperti memperbarui spreadsheet atau menjadwalkan rapat. Dengan kemampuan penggunaan komputer, agen Anda dapat menangani tugas-tugas ini secara otonom, membebaskan pekerja manusia untuk upaya yang lebih kreatif.

1. Kirim permintaan ke model

Pertama, Anda mungkin ingin menyiapkan kunci OpenAI

import openai
import os

# Set API key
openai.api_key = os.environ.get("OPENAI_API_KEY")

Kirim permintaan untuk membuat Respons dengan computer-use-preview model yang dilengkapi dengan computer_use_preview alat. Permintaan ini harus menyertakan rincian tentang lingkungan Anda, bersama dengan perintah masukan awal.

Secara opsional, Anda dapat menyertakan tangkapan layar dari keadaan awal lingkungan.

Untuk dapat menggunakan computer_use_preview alat, Anda perlu mengatur truncation parameter ke "auto" (secara default, pemotongan dinonaktifkan).

from openai import OpenAI
client = OpenAI()

response = client.responses.create(
    model="computer-use-preview",
    tools=[{
        "type": "computer_use_preview",
        "display_width": 1024,
        "display_height": 768,
        "environment": "browser" # other possible values: "mac", "windows", "ubuntu"
    }],
    input=[
        {
            "role": "user",
            "content": "Check the latest OpenAI news on bing.com."
        }
        # Optional: include a screenshot of the initial state of the environment
        # {
        #     type: "input_image",
        #     image_url: f"data:image/png;base64,{screenshot_base64}"
        # }
    ],
    truncation="auto"
)

print(response.output)

2. Terima tindakan yang disarankan

Model mengembalikan keluaran yang berisi computer_call item, hanya teks, atau panggilan alat lainnya, tergantung pada keadaan percakapan.

Contoh computer_call item adalah klik, gulir, penekanan tombol, atau peristiwa lain yang ditentukan dalam Referensi API. Dalam contoh kami, item tersebut adalah tindakan klik:

"output": [
    {
        "type": "reasoning",
        "id": "rs_67cc...",
        "content": []
    },
    {
        "type": "computer_call",
        "id": "cu_67cc...",
        "call_id": "call_zw3...",
        "action": {
            "type": "click",
            "button": "left",
            "x": 156,
            "y": 50
        },
        "pending_safety_checks": [],
        "status": "completed"
    }
]

Model dapat mengembalikan reasoning item dalam keluaran respons untuk beberapa tindakan. Jika ya, Anda harus selalu menyertakan kembali item penalaran saat mengirim permintaan berikutnya ke model CUA.

Item penalaran hanya kompatibel dengan model yang sama yang menghasilkannya. Jika Anda menerapkan alur di mana Anda menggunakan beberapa model dengan riwayat percakapan yang sama, Anda harus memfilter item penalaran ini dari larik masukan yang Anda kirim ke model lain.

3. Jalankan tindakan di lingkungan Anda

Jalankan tindakan yang sesuai di komputer atau browser Anda. Bagaimana Anda memetakan panggilan komputer ke tindakan melalui kode tergantung pada lingkungan Anda. Kode ini menunjukkan contoh implementasi untuk tindakan komputer yang paling umum.

def handle_model_action(page, action):
    """
    Given a computer action (e.g., click, double_click, scroll, etc.),
    execute the corresponding operation on the Playwright page.
    """
    action_type = action.type
    
    try:
        match action_type:

            case "click":
                x, y = action.x, action.y
                button = action.button
                print(f"Action: click at ({x}, {y}) with button '{button}'")
                # Not handling things like middle click, etc.
                if button != "left" and button != "right":
                    button = "left"
                page.mouse.click(x, y, button=button)

            case "scroll":
                x, y = action.x, action.y
                scroll_x, scroll_y = action.scroll_x, action.scroll_y
                print(f"Action: scroll at ({x}, {y}) with offsets (scroll_x={scroll_x}, scroll_y={scroll_y})")
                page.mouse.move(x, y)
                page.evaluate(f"window.scrollBy({scroll_x}, {scroll_y})")

            case "keypress":
                keys = action.keys
                for k in keys:
                    print(f"Action: keypress '{k}'")
                    # A simple mapping for common keys; expand as needed.
                    if k.lower() == "enter":
                        page.keyboard.press("Enter")
                    elif k.lower() == "space":
                        page.keyboard.press(" ")
                    else:
                        page.keyboard.press(k)
            
            case "type":
                text = action.text
                print(f"Action: type text: {text}")
                page.keyboard.type(text)
            
            case "wait":
                print(f"Action: wait")
                time.sleep(2)

            case "screenshot":
                # Nothing to do as screenshot is taken at each turn
                print(f"Action: screenshot")

            # Handle other actions here

            case _:
                print(f"Unrecognized action: {action}")

    except Exception as e:
        print(f"Error handling action {action}: {e}")

4. Tangkap tangkapan layar yang diperbarui

Setelah menjalankan tindakan, tangkap keadaan lingkungan yang diperbarui sebagai tangkapan layar, yang juga berbeda tergantung pada lingkungan Anda.

def get_screenshot(page):
    """
    Take a full-page screenshot using Playwright and return the image bytes.
    """
    return page.screenshot()

5. Ulangi

Setelah Anda memiliki tangkapan layar, Anda dapat mengirimkannya kembali ke model sebagai computer_call_output untuk mendapatkan tindakan berikutnya. Ulangi langkah-langkah ini selama Anda mendapatkan computer_call item dalam respons.

import time
import base64
from openai import OpenAI
client = OpenAI()

def computer_use_loop(instance, response):
    """
    Run the loop that executes computer actions until no 'computer_call' is found.
    """
    while True:
        computer_calls = [item for item in response.output if item.type == "computer_call"]
        if not computer_calls:
            print("No computer call found. Output from model:")
            for item in response.output:
                print(item)
            break  # Exit when no computer calls are issued.

        # We expect at most one computer call per response.
        computer_call = computer_calls[0]
        last_call_id = computer_call.call_id
        action = computer_call.action

        # Execute the action (function defined in step 3)
        handle_model_action(instance, action)
        time.sleep(1)  # Allow time for changes to take effect.

        # Take a screenshot after the action (function defined in step 4)
        screenshot_bytes = get_screenshot(instance)
        screenshot_base64 = base64.b64encode(screenshot_bytes).decode("utf-8")

        # Send the screenshot back as a computer_call_output
        response = client.responses.create(
            model="computer-use-preview",
            previous_response_id=response.id,
            tools=[
                {
                    "type": "computer_use_preview",
                    "display_width": 1024,
                    "display_height": 768,
                    "environment": "browser"
                }
            ],
            input=[
                {
                    "call_id": last_call_id,
                    "type": "computer_call_output",
                    "output": {
                        "type": "input_image",
                        "image_url": f"data:image/png;base64,{screenshot_base64}"
                    }
                }
            ],
            truncation="auto"
        )

    return response

Mengorkestrasi Agen dengan Agents SDK

Toolkit sumber terbuka OpenAI untuk membangun dan mengelola alur kerja multi-agen. SDK ini dibangun di atas kerangka kerja OpenAI sebelumnya, Swarm, dan menawarkan alat gratis kepada pengembang untuk mengintegrasikan model, menerapkan perlindungan, dan memantau aktivitas agen.

Agents SDK adalah Python-first dan menyertakan fitur-fitur seperti loop agen bawaan dan pemeriksaan keamanan. Ini sempurna untuk membuat sistem kompleks di mana beberapa agen bekerja sama untuk memecahkan masalah.

Berikut cara menggunakan Agents SDK:

  1. Unduh SDK: Akses kode sumber terbuka dari Repositori GitHub OpenAI.
  2. Siapkan Alur Kerja Multi-Agen: Gunakan SDK untuk mengatur tugas antar agen, mendelegasikan berdasarkan kemampuan mereka.
  3. Tambahkan Perlindungan: Terapkan pemeriksaan keamanan untuk memastikan agen Anda beroperasi secara bertanggung jawab dan andal.

Misalnya, Anda dapat membangun tim penjualan agen AI di mana satu agen menangani pencarian web, yang lain mengelola file, dan yang ketiga mengotomatiskan tugas-tugas komputer. Agents SDK mengikat mereka bersama-sama, menciptakan sistem yang mulus dan efisien.

Kesimpulan

Dari Responses API hingga pencarian web, pencarian file, penggunaan komputer, dan Agents SDK, OpenAI telah melengkapi pengembang dengan semua yang dibutuhkan untuk membuat sistem otonom dan cerdas. Baik Anda mengotomatiskan tugas-tugas bisnis, meningkatkan layanan pelanggan, atau menjelajahi batas-batas penelitian baru, alat-alat ini membuka dunia kemungkinan.

Jadi, tunggu apa lagi? Selami OpenAI API, bereksperimen dengan alat baru mereka, dan mulailah membangun agen yang memukau pengguna Anda. Dan jangan lupa unduh Apidog secara gratis untuk menyederhanakan pengembangan API Anda dan membuat perjalanan Anda semakin lancar!

button

Explore more

Cara Menggunakan Lovable AI (Alternatif Cursor untuk Pengembang Web)

Cara Menggunakan Lovable AI (Alternatif Cursor untuk Pengembang Web)

Pelajari cara buat web apa pun dgn Lovable. Panduan lengkap, fitur inovatif, & integrasi Apidog (API gratis).

15 April 2025

Cara Menambahkan Kunci API Kustom ke Cursor: Panduan Komprehensif

Cara Menambahkan Kunci API Kustom ke Cursor: Panduan Komprehensif

Tutorial ini memandu Anda menyiapkan & mengelola API key khusus di Cursor: OpenAI, Anthropic, Google, & Azure.

11 April 2025

Cara Menggunakan NVIDIA Llama Nemotron API untuk Agen AI Tingkat Lanjut

Cara Menggunakan NVIDIA Llama Nemotron API untuk Agen AI Tingkat Lanjut

Pelajari API NVIDIA Llama Nemotron utk buat agen AI canggih.

11 April 2025

Mengembangkan API dengan Apidog

Apidog adalah alat pengembangan API yang membantu Anda mengembangkan API dengan lebih mudah dan efisien.