Quay lai Blog
Hướng dẫn

Hướng Dẫn Computer Use Claude — Tự Động Hóa Máy Tính với AI Agent

Đoàn Đình Tỉnh29 tháng 3, 202615 phut doc
Hướng Dẫn Computer Use Claude — Tự Động Hóa Máy Tính với AI Agent
📘 Bản dịch tiếng Việt từ tài liệu chính thức của Anthropic. Cập nhật: 28/03/2026

Hướng Dẫn Computer Use Claude — Tự Động Hóa Máy Tính với AI Agent

Claude có thể tương tác với môi trường máy tính thông qua Computer Use tool — một tính năng beta cho phép Claude chụp màn hình và điều khiển chuột/bàn phím để tự động hóa hoàn toàn giao diện desktop. Đây là bước tiến quan trọng trong AI Agent thực tế: thay vì chỉ xử lý văn bản, Claude có thể "nhìn thấy" màn hình và thực hiện thao tác như con người.

Ứng dụng thực tế cho SME Việt Nam: tự động hóa kiểm thử phần mềm, thu thập dữ liệu web, điền form tự động, xử lý tác vụ lặp đi lặp lại trên desktop mà không cần API.

⚠️ Beta feature: Computer Use vẫn đang trong giai đoạn beta. Yêu cầu beta header trong API request:
  • "computer-use-2025-11-24" — dành cho Claude Opus 4.6, Claude Sonnet 4.6, Claude Opus 4.5
  • "computer-use-2025-01-24" — dành cho Sonnet 4.5, Haiku 4.5, Opus 4.1, Sonnet 4, Opus 4, Sonnet 3.7
✅ Zero Data Retention (ZDR): Tính năng này đủ điều kiện cho ZDR. Khi tổ chức của bạn có thỏa thuận ZDR, dữ liệu gửi qua tính năng này sẽ không được lưu trữ sau khi API trả về response.

Tổng quan Computer Use

Computer Use là tính năng beta cho phép Claude tương tác với môi trường desktop. Tool này cung cấp các khả năng:

  • Chụp màn hình (Screenshot capture): Xem nội dung hiện tại trên màn hình
  • Điều khiển chuột (Mouse control): Click, drag và di chuyển con trỏ
  • Nhập bàn phím (Keyboard input): Gõ văn bản và dùng phím tắt
  • Tự động hóa desktop: Tương tác với bất kỳ ứng dụng hoặc giao diện nào

Computer Use có thể kết hợp với các tool khác như bash và text editor để tạo ra workflow tự động hóa toàn diện hơn.

Cân nhắc bảo mật quan trọng

Computer Use là tính năng beta với những rủi ro đặc thù khác với các tính năng API thông thường. Rủi ro tăng cao khi tương tác với internet.

🔒 Biện pháp bảo mật tối thiểu cần thực hiện:
  1. Dùng máy ảo hoặc container riêng biệt với quyền hạn tối thiểu để tránh tấn công trực tiếp vào hệ thống.
  2. Không cấp quyền truy cập dữ liệu nhạy cảm (thông tin đăng nhập, tài khoản ngân hàng, v.v.).
  3. Giới hạn truy cập internet vào danh sách domain cho phép (allowlist).
  4. Yêu cầu con người xác nhận các quyết định có hậu quả thực tế — chấp nhận cookies, giao dịch tài chính, đồng ý điều khoản.

Lưu ý về Prompt Injection: Trong một số trường hợp, Claude có thể làm theo lệnh từ nội dung trên màn hình ngay cả khi mâu thuẫn với hướng dẫn của người dùng. Ví dụ, hướng dẫn trên trang web hoặc trong hình ảnh có thể ghi đè lên instructions. Anthropic đã thêm classifier để phát hiện prompt injection — khi phát hiện, Claude sẽ tự động yêu cầu xác nhận từ người dùng trước khi tiến hành.

Bắt đầu nhanh

Ví dụ cơ bản với Python — yêu cầu Claude lưu ảnh mèo lên desktop:

import anthropic

client = anthropic.Anthropic()

response = client.beta.messages.create(
    model="claude-opus-4-6",
    max_tokens=1024,
    tools=[
        {
            "type": "computer_20251124",
            "name": "computer",
            "display_width_px": 1024,
            "display_height_px": 768,
            "display_number": 1,
        },
        {"type": "text_editor_20250728", "name": "str_replace_based_edit_tool"},
        {"type": "bash_20250124", "name": "bash"},
    ],
    messages=[{"role": "user", "content": "Save a picture of a cat to my desktop."}],
    betas=["computer-use-2025-11-24"],
)
print(response)

Ví dụ với Shell (curl):

curl https://api.anthropic.com/v1/messages \
  -H "content-type: application/json" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: computer-use-2025-11-24" \
  -d '{
    "model": "claude-opus-4-6",
    "max_tokens": 1024,
    "tools": [
      {
        "type": "computer_20251124",
        "name": "computer",
        "display_width_px": 1024,
        "display_height_px": 768,
        "display_number": 1
      }
    ],
    "messages": [
      {
        "role": "user",
        "content": "Take a screenshot of the current screen."
      }
    ]
  }'
💡 Lưu ý: Beta header chỉ cần thiết khi dùng computer use tool. Ví dụ trên hiển thị 3 tool cùng lúc — vì có computer use tool nên cần beta header.

Cách Computer Use hoạt động

Quy trình hoạt động của Computer Use theo 4 bước:

Bước 1: Cung cấp tool và prompt cho Claude

Thêm computer use tool (và tùy chọn các tool khác) vào API request. Bao gồm prompt yêu cầu tương tác desktop, ví dụ: "Lưu ảnh mèo vào desktop của tôi."

Bước 2: Claude quyết định dùng computer use tool

Claude đánh giá xem computer use tool có thể giúp được không. Nếu có, Claude tạo request sử dụng tool được định dạng đúng. API response sẽ có stop_reasontool_use, báo hiệu ý định của Claude.

Bước 3: Thực thi tool và trả kết quả

Ứng dụng của bạn trích xuất tên tool và input từ request của Claude. Thực thi tool trong container hoặc máy ảo. Tiếp tục hội thoại bằng message user mới chứa block tool_result.

Bước 4: Claude tiếp tục gọi tool cho đến khi hoàn thành

Claude phân tích kết quả tool để xác định có cần thêm tool nữa không. Nếu cần, Claude respond với tool_use khác (quay lại bước 3). Nếu không, Claude tạo phản hồi text cho người dùng.

Vòng lặp bước 3 và 4 lặp đi lặp lại mà không cần input từ người dùng được gọi là "agent loop" — Claude respond bằng tool use request và ứng dụng của bạn phản hồi Claude với kết quả của việc thực thi tool đó.

Môi trường tính toán

Computer Use cần môi trường sandbox để Claude tương tác an toàn. Môi trường bao gồm:

  1. Virtual display: Máy chủ hiển thị X11 ảo (Xvfb) render giao diện desktop mà Claude sẽ "thấy" qua screenshot và điều khiển.
  2. Desktop environment: Giao diện đồ họa nhẹ với window manager (Mutter) và panel (Tint2) chạy trên Linux.
  3. Applications: Ứng dụng Linux được cài sẵn như Firefox, LibreOffice, text editors và file managers.
  4. Tool implementations: Code tích hợp dịch các yêu cầu tool trừu tượng của Claude (như "di chuyển chuột" hoặc "chụp màn hình") thành thao tác thực tế.
  5. Agent loop: Chương trình xử lý giao tiếp giữa Claude và môi trường.

Cách triển khai Computer Use

Agent Loop — Vòng lặp Agent

Cốt lõi của Computer Use là "agent loop" — chu trình Claude yêu cầu thao tác tool, ứng dụng thực thi và trả kết quả. Ví dụ đơn giản:

from anthropic import Anthropic

async def sampling_loop(
    *,
    model: str,
    messages: list[dict],
    api_key: str,
    max_tokens: int = 4096,
    tool_version: str,
    max_iterations: int = 10,  # Giới hạn vòng lặp để tránh vô hạn
):
    """
    Agent loop đơn giản cho Computer Use.
    Xử lý qua lại giữa:
    1. Gửi message đến Claude
    2. Claude yêu cầu dùng tool
    3. App thực thi tool
    4. Gửi kết quả tool lại cho Claude
    """
    client = Anthropic(api_key=api_key)
    beta_flag = (
        "computer-use-2025-11-24"
        if "20251124" in tool_version
        else "computer-use-2025-01-24"
    )

    tools = [
        {
            "type": f"computer_{tool_version}",
            "name": "computer",
            "display_width_px": 1024,
            "display_height_px": 768,
        },
        {"type": "text_editor_20250728", "name": "str_replace_based_edit_tool"},
        {"type": "bash_20250124", "name": "bash"},
    ]

    iterations = 0
    while True and iterations < max_iterations:
        iterations += 1

        # Gọi Claude API
        response = client.beta.messages.create(
            model=model,
            max_tokens=max_tokens,
            messages=messages,
            tools=tools,
            betas=[beta_flag],
        )

        # Thêm phản hồi của Claude vào lịch sử hội thoại
        messages.append({"role": "assistant", "content": response.content})

        # Kiểm tra xem Claude có dùng tool không
        tool_results = []
        for block in response.content:
            if block.type == "tool_use":
                # Thực thi tool tại đây
                result = {"result": "Tool executed successfully"}
                tool_results.append({
                    "type": "tool_result",
                    "tool_use_id": block.id,
                    "content": result
                })

        # Nếu không có tool nào được dùng, Claude đã xong — trả về messages
        if not tool_results:
            return messages

        # Thêm kết quả tool vào messages cho vòng lặp tiếp theo
        messages.append({"role": "user", "content": tool_results})

Tối ưu hóa hiệu suất với Prompting

Một số mẹo để có kết quả tốt nhất:

  1. Đặt tác vụ đơn giản, rõ ràng và cung cấp hướng dẫn chi tiết cho từng bước.
  2. Claude đôi khi giả định kết quả mà không kiểm tra thực tế. Để ngăn điều này: "Sau mỗi bước, chụp màn hình và kiểm tra kỹ xem bạn đã đạt kết quả đúng chưa. Chỉ chuyển sang bước tiếp theo khi đã xác nhận bước trước thành công."
  3. Một số UI elements (dropdown, scrollbar) có thể khó thao tác bằng chuột — thử dùng phím tắt thay thế.
  4. Với tác vụ lặp đi lặp lại, cung cấp screenshot mẫu và các tool call thành công trong prompt.
  5. Nếu cần Claude đăng nhập, cung cấp thông tin đăng nhập trong prompt bằng XML tags như <robot_credentials>.

Các hành động được hỗ trợ

Hành động cơ bản (tất cả phiên bản)

  • screenshot — Chụp màn hình hiện tại
  • left_click — Click chuột trái tại tọa độ [x, y]
  • type — Gõ chuỗi văn bản
  • key — Nhấn phím hoặc tổ hợp phím (ví dụ: "ctrl+s")
  • mouse_move — Di chuyển con trỏ đến tọa độ

Hành động nâng cao (computer_20250124)

Dành cho Claude 4 models và Claude Sonnet 3.7:

  • scroll — Cuộn theo bất kỳ hướng nào với kiểm soát số lượng
  • left_click_drag — Click và kéo giữa các tọa độ
  • right_click, middle_click — Nút chuột bổ sung
  • double_click, triple_click — Click nhiều lần
  • hold_key — Giữ phím trong khoảng thời gian nhất định
  • wait — Tạm dừng giữa các hành động

Hành động nâng cao (computer_20251124)

Dành cho Claude Opus 4.6, Claude Sonnet 4.6, Claude Opus 4.5:

  • Tất cả hành động từ computer_20250124
  • zoom — Xem vùng cụ thể trên màn hình ở độ phân giải đầy đủ. Cần enable_zoom: true trong định nghĩa tool.

Ví dụ hành động JSON

// Chụp màn hình
{"action": "screenshot"}

// Click tại vị trí
{"action": "left_click", "coordinate": [500, 300]}

// Gõ văn bản
{"action": "type", "text": "Xin chào thế giới!"}

// Cuộn xuống
{"action": "scroll", "coordinate": [500, 400], "scroll_direction": "down", "scroll_amount": 3}

// Shift+click (chọn range)
{"action": "left_click", "coordinate": [500, 300], "text": "shift"}

// Zoom vào vùng cụ thể
{"action": "zoom", "region": [100, 200, 400, 350]}

Thông số tool

Thông số Bắt buộc Mô tả
type Phiên bản tool (computer_20251124 hoặc computer_20250124)
name Phải là "computer"
display_width_px Chiều rộng màn hình tính bằng pixel
display_height_px Chiều cao màn hình tính bằng pixel
display_number Không Số hiển thị cho môi trường X11
enable_zoom Không Bật hành động zoom (computer_20251124). Mặc định: false

Xử lý tọa độ khi màn hình độ phân giải cao

API giới hạn hình ảnh tối đa 1568 pixels ở cạnh dài nhất và khoảng 1.15 megapixel tổng cộng. Ví dụ, màn hình 1512x982 bị downscale xuống khoảng 1330x864. Claude phân tích ảnh nhỏ hơn này và trả về tọa độ trong không gian đó, nhưng tool thực thi click trong không gian màn hình gốc.

import math

screen_width, screen_height = 1512, 982

def get_scale_factor(width, height):
    """Tính scale factor để đáp ứng giới hạn API."""
    long_edge = max(width, height)
    total_pixels = width * height

    long_edge_scale = 1568 / long_edge
    total_pixels_scale = math.sqrt(1_150_000 / total_pixels)

    return min(1.0, long_edge_scale, total_pixels_scale)

scale = get_scale_factor(screen_width, screen_height)
scaled_width = int(screen_width * scale)
scaled_height = int(screen_height * scale)

# Khi thực thi click, scale tọa độ ngược lại
def execute_click(x, y):
    screen_x = x / scale
    screen_y = y / scale
    perform_click(screen_x, screen_y)

Giới hạn và lưu ý quan trọng

Computer Use vẫn đang trong giai đoạn beta. Nhà phát triển cần biết các hạn chế sau:

  1. Độ trễ cao: Tốc độ xử lý hiện tại có thể quá chậm so với người dùng thông thường. Tập trung vào các use case không yêu cầu tốc độ cao (thu thập thông tin nền, kiểm thử phần mềm tự động).
  2. Độ chính xác của computer vision: Claude có thể nhầm hoặc hallucinate khi tạo ra tọa độ cụ thể. Cần kiểm tra và xác nhận kết quả.
  3. Độ chính xác khi chọn tool: Claude có thể nhầm khi chọn tool hoặc thực hiện hành động bất ngờ. Prompt cẩn thận khi yêu cầu tác vụ phức tạp.
  4. Tương tác với niche apps: Độ tin cậy thấp hơn khi tương tác với ứng dụng ít phổ biến hoặc nhiều ứng dụng cùng lúc.
  5. Tạo tài khoản mạng xã hội: Khả năng tạo tài khoản hoặc đăng nội dung lên mạng xã hội bị hạn chế.
  6. Prompt injection: Lỗ hổng prompt injection vẫn tồn tại. Luôn cách ly Computer Use trong môi trường trusted.
  7. Hành động bất hợp pháp: Theo điều khoản Anthropic, không được sử dụng Computer Use để vi phạm pháp luật.
⚠️ Luôn kiểm tra kỹ: Xem xét và xác minh các hành động và log của Claude khi dùng Computer Use. Không dùng cho tác vụ đòi hỏi độ chính xác tuyệt đối hoặc thông tin người dùng nhạy cảm mà không có sự giám sát của con người.

Chi phí token

Computer Use theo dõi mô hình định giá tool use tiêu chuẩn:

Chi phí Token
System prompt overhead (beta) 466–499 tokens
Định nghĩa tool (Claude 4.x) 735 tokens
Screenshot images Theo Vision pricing
Tool execution results Theo lượng nội dung trả về
🚀 Khám phá thêm về Claude
Xem đầy đủ thông tin về Claude tại trang Claude Anthropic trên Agentwork.vn. Tìm hiểu thêm về Extended Thinking để kết hợp suy luận sâu với Computer Use. Xem Tool Use tổng quan để hiểu cách Claude tích hợp với các công cụ bên ngoài. Khám phá thêm các nền tảng AI hàng đầu khác phù hợp cho doanh nghiệp của bạn.
Chia se bai viet
ĐĐ

Đoàn Đình Tỉnh

admin

Bai viet lien quan

Chat ZaloGoi: 0911.000.000Chat Telegram