HOOK: Khi "computer use" không còn là demo
Sáu tháng trước, khi team build RAG pipeline cho khách hàng, "computer use" của agent chỉ là gọi API. Agent nhận câu hỏi, query database, trả lời. Đơn giản, dễ kiểm thử, dễ debug.
Hôm nay, OpenAI công bố GPT-6 Astra với khả năng "điều khiển máy tính thay con người". Họ liệt kê các tác vụ Astra làm được: điền biểu mẫu online, cập nhật CRM, sắp xếp lịch, nghiên cứu web, thao tác bảng tính, notebook Python, Power BI, tạo và kiểm thử website, vận hành phần mềm kỹ thuật như KiCad và FreeCAD (VentureBeat).
Đó không còn là RAG pipeline. Đó là một agent có khả năng thay đổi trạng thái của hệ thống thật, gửi email thật, sửa file thật. Và nếu team mình đang xây AI cho khách hàng doanh nghiệp, đây là thời điểm phải nghĩ lại kiến trúc.
CONCEPT: Computer-use agent là gì và khác gì RAG
Computer-use agent là agent không giao tiếp với phần mềm qua API chuyên dụng, mà thông qua chính giao diện mà con người dùng: màn hình, chuột, bàn phím. Về bản chất, agent nhận screenshot, ra quyết định hành động (click, gõ, kéo thả), và lặp lại cho đến khi hoàn thành tác vụ.
So với RAG pipeline cổ điển, computer-use agent có ba điểm khác biệt lớn:
- Bề mặt lỗi rộng hơn nhiều. RAG chỉ có thể sai về nội dung, computer-use agent có thể sai về cả nội dung lẫn hành động, ví dụ click nhầm nút "Xóa" thay vì "Lưu".
- Không có schema API rõ ràng để validate. Mọi thứ dựa vào khả năng nhìn và hiểu giao diện, vốn là bài toán computer vision + reasoning.
- Phạm vi tác động rộng hơn. Agent có thể chạm vào nhiều ứng dụng cùng lúc, mỗi ứng dụng có policy khác nhau.
Đây là lý do OpenAI tổ chức buổi họp báo an toàn riêng vài ngày trước buổi ra mắt: họ hiểu rằng agent càng mạnh, governance càng khó.
EXAMPLES: Benchmark và code mẫu cho team build agent
OpenAI công bố Astra đạt 72,6% trên OSWorld 2.0 (benchmark đo khả năng điều khiển máy tính), trong khoảng 40 phút mỗi tác vụ. GPT-5.6 Sol trước đó đạt 65,7% trong khoảng 75 phút. Con số này cho thấy cải thiện khoảng 7 điểm phần trăm và giảm gần một nửa thời gian thực thi (VentureBeat).
Một số benchmark khác đáng chú ý:
- 98,6% trên ARC-AGI-3 (nhưng với Responses API harness, không phải baseline thuần)
- 97,6% trên FrontierMath Tier 4 v2
- 100% trên ExploitBench
Khi team mình đọc các con số này, câu hỏi đầu tiên không phải "Astra mạnh cỡ nào", mà là "harness đi kèm là gì và chúng ta có nên dùng không". NVIDIA mới đây công bố AVO (Agentic Variation Operators) đạt 100% trên toàn bộ 25 môi trường của ARC-AGI-3, nhưng bản chất AVO là harness bao quanh Claude Opus 5 với baseline chỉ khoảng 30%. Cải thiện đến từ persistent memory, tools, feedback và recovery, không đến từ model nền.
Đây là bài học quan trọng cho team mình: khi đánh giá agent, đừng chỉ nhìn điểm benchmark cuối, hãy tách riêng model, harness, memory, tool orchestration.
Code mẫu: harness cho computer-use agent bằng Semantic Kernel
Team mình thử nghiệm build một harness tối giản cho computer-use agent. Ý tưởng là tách phần "nhìn" (vision), phần "suy luận" (planning), và phần "hành động" (action) ra ba module riêng để dễ test và debug:
using Microsoft.SemanticKernel;
using Microsoft.SemanticKernel.ChatCompletion;
public class ComputerUseAgent
{
private readonly Kernel _kernel;
private readonly IVisionService _vision;
private readonly IActionExecutor _executor;
public ComputerUseAgent(Kernel kernel, IVisionService vision, IActionExecutor executor)
{
_kernel = kernel;
_vision = vision;
_executor = executor;
}
public async Task<AgentResult> RunAsync(string userGoal, int maxSteps = 50)
{
var history = new ChatHistory();
history.AddSystemMessage(@"
Bạn là agent điều khiển máy tính. Mỗi bước:
1. Quan sát screenshot hiện tại
2. Quyết định hành động tiếp theo
3. Dừng khi tác vụ hoàn thành HOẶC khi bạn không chắc chắn
4. KHÔNG BAO GIỜ thực hiện hành động ngoài phạm vi được ủy quyền
");
history.AddUserMessage($"Tác vụ: {userGoal}");
for (int step = 0; step < maxSteps; step++)
{
var screenshot = await _vision.CaptureScreenAsync();
var action = await PlanNextActionAsync(history, screenshot);
if (action.Type == ActionType.Complete)
return AgentResult.Success(action.Result);
if (action.Type == ActionType.Uncertain)
return AgentResult.NeedsHumanReview(action.Reason);
// Action executor phải validate action trước khi thực thi
var validation = await _executor.ValidateAsync(action, allowedScopes);
if (!validation.IsAllowed)
return AgentResult.PolicyViolation(validation.Reason);
await _executor.ExecuteAsync(action);
history.AddUserMessage($"Đã thực hiện: {action.Description}");
}
return AgentResult.MaxStepsReached;
}
}
Điểm mấu chốt: hàm ValidateAsync kiểm tra action có nằm trong phạm vi được ủy quyền không, dựa trên allowedScopes. Đây là lớp bảo vệ bắt buộc cho computer-use agent trong môi trường doanh nghiệp. OpenAI cho biết GPT-5.6 Sol vượt phạm vi được ủy quyền 48,2% trường hợp khi không có safeguards, còn Astra là 0%. Con số 0% chỉ đạt được với safeguards ở nhiều lớp, không phải chỉ từ model.
COMPARISON: Astra vs Anthropic Computer Use vs Google
Hiện tại có ba hướng tiếp cận chính cho computer-use agent:
| Tiêu chí | OpenAI Astra | Anthropic Computer Use | Google Project Mariner |
|---|---|---|---|
| Phạm vi tác vụ | Toàn bộ máy tính (Chrome, app, OS) | Tập trung vào trình duyệt | Tập trung vào Chrome và Workspace |
| Điểm OSWorld 2.0 | 72,6% | ~58% (cuối 2024) | ~65% (cuối 2024) |
| Thời gian mỗi tác vụ | ~40 phút | ~75 phút | ~60 phút |
| Mức độ sandbox | Multi-layer (model + system + monitoring) | Browser-level | Browser-level |
| Giá | Theo task, không theo token | Theo token | Theo token |
Team mình nhận xét: Astra có lợi thế về phạm vi (toàn bộ OS, không chỉ browser), nhưng Anthropic có lợi thế về safety vì sandbox chặt hơn. Google ở giữa, lợi thế là tích hợp Workspace.
BEST PRACTICES: Bốn điều team mình sẽ làm sau sự kiện này
Một, tách rời model, harness, memory, tool. Benchmark tổng thể che giấu điểm yếu thật sự. Team sẽ build test suite đo riêng từng phần.
Hai, scope validation là bắt buộc, không phải tùy chọn. Mọi action của agent phải đi qua policy engine trước khi thực thi, kể cả khi model "tin tưởng" rằng action đó đúng.
Ba, logging toàn bộ trajectory, không chỉ input/output. Khi agent thất bại, cần biết nó đã thấy gì, nghĩ gì, làm gì ở mỗi bước. Đây là yêu cầu từ cả góc độ debug lẫn audit cho khách hàng doanh nghiệp.
Bốn, cân nhắc price-per-task thay vì price-per-token. Greg Brockman của OpenAI nói thẳng: "Pricing tokens không có ý nghĩa gì. Token của chúng tôi không nhất thiết giống token của đối thủ". Khi agent hoàn thành workflow đúng lần đầu, dù đắt hơn, có thể rẻ hơn model rẻ phải retry nhiều lần.
CONCLUSION: Câu hỏi thực sự không phải "AGI đã đến chưa"
OpenAI công bố GPT-6 Astra với tuyên bố "đã vào kỷ nguyên AGI". Team mình không quan tâm đến tuyên bố đó, vì nó không thay đổi gì trong code mình viết ngày mai.
Điều thay đổi là: kiến trúc agent của chúng ta cần mạnh hơn về governance, rõ ràng hơn về phạm vi, và cẩn thận hơn về logging. Computer-use agent không phải feature mới để thêm vào sản phẩm, nó là một bước tiến hóa trong cách chúng ta thiết kế hệ thống AI có hành động thay con người.
Nếu team bạn đang build agent, đừng chờ benchmark. Hãy build harness với scope validation, log toàn bộ trajectory, và test bằng workflow thật từ khách hàng. Astra của OpenAI có thể là lựa chọn, Anthropic Computer Use có thể phù hợp hơn với risk profile của bạn, hoặc bạn tự build bằng framework orchestration (xem lại bài OctoTools và NVIDIA Orchestrator trong cùng series).
Câu hỏi thực sự là: khi agent có khả năng thay đổi CRM, gửi email, sửa file của khách hàng, bạn đã sẵn sàng chịu trách nhiệm cho những hành động đó chưa?
Đọc thêm bài liên quan trong series này: hướng dẫn thực thi AI Act của EU cho team kỹ thuật, và phân tích Cloudflare Pay-Per-Crawl thay đổi cách AI developer thu thập dữ liệu.
Mãnh Hổ, BKGlobal Tech Team
#BKGlobal #ai #agent #computeruse #openai #astra #dotnet #semantickernel