Chuyển đến nội dung chính

Hướng dẫn DeepSeek Harness: Bắt đầu với Agent AI mã nguồn mở phổ biến nhất

Tìm hiểu cách thiết lập và kiểm thử DeepSeek Harness, một agent lập trình AI mã nguồn mở hỗ trợ plugin, tìm kiếm web, thị giác, mô hình DeepSeek, Gemini, ModLens, mô hình bên thứ ba và quy trình agentic.
Đã cập nhật 20 thg 8, 2026  · 10 phút đọc

Khám phá với AI

ChatGPTClaudePerplexity

DeepSeek Harness là một trong những agent AI mã nguồn mở được nhắc đến nhiều nhất hiện nay và áp dụng một cách tiếp cận rất khác so với hầu hết các trợ lý lập trình: mọi thứ đều là plugin.

Trong hướng dẫn này, chúng ta sẽ thiết lập DeepSeek Harness từ đầu và xây dựng một môi trường agent thực tiễn sử dụng DeepSeek làm mô hình chính, tính năng tìm kiếm web tích hợp của DeepSeek để cập nhật thông tin mới, và ModLens cùng Gemini để hiểu hình ảnh. Sau đó, chúng ta sẽ khởi chạy giao diện Web UI của Harness và kiểm thử các khả năng về lập trình, tìm kiếm web, thị giác và mô hình bên thứ ba.

Nếu bạn mới làm quen với cách agent lập kế hoạch, gọi công cụ, và tự hành động, lộ trình kỹ năng AI Agent Fundamentals giải thích các khái niệm cốt lõi trước khi bạn bắt đầu xây dựng.

DeepSeek Harness là gì?

DeepSeek Harness là một framework agent AI mã nguồn mở từ DeepSeek AI được thiết kế cho các nhà phát triển muốn kiểm soát nhiều hơn cách agent AI vận hành. 

Thay vì buộc người dùng phải theo một trợ lý lập trình hay quy trình cố định, Harness áp dụng phương châm “mọi thứ đều là plugin”: mô hình, công cụ, giao diện và hành vi của agent đều có thể được thêm, gỡ, hoặc thay thế tùy theo cách bạn muốn sử dụng framework.

Nếu bạn vẫn chưa hiểu chính xác thuật ngữ này, tôi khuyên bạn nên đọc hướng dẫn giải đáp câu hỏi "Agent harness là gì?"

Vì sao DeepSeek Harness được ưa chuộng?

DeepSeek Harness nhanh chóng thu hút sự chú ý, đạt hơn 160.000 sao trên GitHub 18.000 lần fork tại thời điểm xuất bản bài viết này. 

Một lý do lớn là các nhà phát triển nhận thấy nó có thể mang lại kết quả tốt với nhiều mô hình khác nhau, không chỉ riêng DeepSeek. Người dùng trên Reddit thường báo cáo sử dụng thành công với các mô hình như Qwen3.8-27b, đặc biệt hiệu quả cho lập trình và các tác vụ agent dài hơn.

Một lý do khác là tính tự chủ và linh hoạt. Người dùng cho biết Harness có thể tiếp tục xử lý các tác vụ nhiều bước, phục hồi sau lỗi, quản lý ngữ cảnh dài và vận hành liên tục mà không cần can thiệp thường xuyên. Thiết kế dựa trên plugin cũng giúp dễ dàng hoán đổi mô hình, thêm công cụ và tùy biến quy trình agent thay vì bị khóa vào một thiết lập cố định.

Nếu bạn đang cân nhắc giữa Harness và các công cụ đối thủ, hướng dẫn về các lựa chọn thay thế Claude Code so sánh bảy lựa chọn chính cạnh nhau.

Các tính năng chính của DeepSeek Harness

Một số tính năng nổi bật:

  • Kiến trúc dựa trên plugin: Hầu hết các phần của agent có thể được mở rộng hoặc thay thế thông qua plugin, giúp bạn dễ tùy biến thiết lập.

  • Web UI cục bộ: Chạy dsh web cung cấp giao diện trên trình duyệt để bạn quản lý mô hình, phiên làm việc, workspace, cài đặt và agent.

  • Python SDK: deepseek-harness-sdk cho phép chạy agent Harness trực tiếp từ ứng dụng, script, bài kiểm thử và quy trình tự động hóa bằng Python.

  • Nhiều nhà cung cấp mô hình: Bạn không bị giới hạn ở các mô hình của DeepSeek. Bạn có thể dùng nhà cung cấp như OpenAI và Anthropic, hoặc kết nối endpoint tương thích của riêng bạn.

  • Gọi công cụ: Agent có thể gọi công cụ để thực hiện hành động thay vì chỉ tạo văn bản.

  • Công cụ tệp và terminal: Harness bao gồm công cụ đọc, tìm kiếm và chỉnh sửa tệp, cùng Bash trên Linux và macOS và PowerShell trên Windows.

  • Tìm kiếm web tích hợp: Nhà cung cấp tìm kiếm web của DeepSeek được tích hợp trong cấu hình mặc định và dùng cùng khóa API DeepSeek như mô hình.

  • Code Mode: Harness có thể lộ trình công cụ qua chế độ thực thi dựa trên mã, cho agent quyền kiểm soát nhiều hơn cách kết hợp và chạy các lần gọi công cụ.

  • Trajectory: Chế độ Trajectory cho phép bạn kiểm tra từng bước agent đang làm, gồm phản hồi mô hình, lời gọi công cụ, hoạt động công cụ lồng nhau, thời gian và mức dùng token.

  • Preset agent: Bạn có thể tạo các thiết lập agent khác nhau với bộ công cụ và prompt riêng, rồi dùng chúng trên nhiều phiên.

  • Thống kê phiên: Harness theo dõi các thông tin hữu ích như lượt trao đổi, số bước, thời gian mô hình, thời gian công cụ, thời gian đến token đầu tiên và thời gian giải mã.

  • Subagent: Agent chính có thể ủy thác một phần công việc cho agent con, hữu ích cho quy trình phức tạp hơn.

  • Plugin cộng đồng: Plugin bên thứ ba có thể bổ sung năng lực không có trong mô hình gốc. Trong hướng dẫn này, chúng tôi dùng ModLens để thêm hỗ trợ thị giác.

  • Giấy phép MIT: DeepSeek Harness là mã nguồn mở và phát hành theo giấy phép MIT linh hoạt.

Ưu điểm chính là bạn không bị ràng buộc vào một mô hình, một bộ công cụ hay một kiểu agent. Bạn có thể bắt đầu với thiết lập mặc định và dần dần thêm hoặc thay thế thành phần khi thử nghiệm các quy trình khác nhau.

Thiết lập DeepSeek Harness như thế nào?

Hãy bắt đầu cài đặt DeepSeek Harness và thiết lập mọi thứ chúng ta cần cho phần còn lại. Chúng ta sẽ cài Node.js, DeepSeek Harness và pnpm, sau đó thêm các khóa API.

Cài đặt Node.js

DeepSeek Harness chạy trên Node.js. Vì sau này chúng ta cũng dùng ModLens cho thị giác, tôi khuyên dùng Node.js 22.19 trở lên.

Nếu bạn dùng Ubuntu hoặc Debian, có thể cài Node.js bằng:

curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash - && sudo apt-get install -y nodejs

Sau khi cài xong, kiểm tra Node.js và npm hoạt động bình thường:

node --version
npm --version

Trên máy của tôi, kết quả là:

v24.19.0
11.17.0

Bạn không cần đúng y hệt phiên bản này. Chỉ cần Node.js đủ mới là bạn có thể bắt đầu.

Cài đặt DeepSeek Harness

Tiếp theo, hãy cài chính DeepSeek Harness.

Hướng dẫn nhanh chính thức dùng npx, nhưng tôi thích cài toàn cục để có thể dùng lệnh dsh xuyên suốt hướng dẫn.

Chạy:

npm install -g @deepseek-ai/dsh

Sau đó kiểm tra đã cài đúng chưa:

dsh --version

Tại thời điểm tôi thử hướng dẫn này, tôi dùng phiên bản:

0.1.0-rc.7

Cài đặt pnpm

Chúng ta cũng cần pnpm. DeepSeek Harness dùng nó khi thêm hoặc gỡ plugin. Cài toàn cục:

npm install -g pnpm

Thiết lập khóa API

Trong hướng dẫn này, chúng ta chỉ cần hai khóa API:

  • Khóa DeepSeek API: dùng cho mô hình DeepSeek và tính năng tìm kiếm web tích hợp.
  • Khóa Gemini API: được ModLens sử dụng để hiểu hình ảnh.

Chúng ta sẽ thiết lập khóa DeepSeek trước, vì đó là tất cả những gì cần cho lập trình và tìm kiếm web, rồi thêm khóa Gemini sau khi bổ sung thị giác với ModLens.

Với DeepSeek, bạn cần tạo tài khoản DeepSeek, tạo khóa API và nạp tiền vào tài khoản. Với hướng dẫn này, tôi khuyên nạp ít nhất 2 USD, đủ để thử các ví dụ mà không cần nạp nhiều ngay từ đầu.

Tổng quan mức sử dụng Deepseek API

Khi đã có khóa API, hãy thêm vào môi trường của bạn.

Trên Linux hoặc macOS:

export DEEPSEEK_API_KEY="your_deepseek_api_key"

Trên Windows PowerShell:

$env:DEEPSEEK_API_KEY="your_deepseek_api_key"

Một ưu điểm là chúng ta không cần API tìm kiếm web riêng. DeepSeek Harness đã bao gồm nhà cung cấp tìm kiếm web của DeepSeek và dùng cùng DEEPSEEK_API_KEY.

Bạn cũng có thể thêm khóa API DeepSeek sau này tại Settings → Models trong Web UI.

Khởi động DeepSeek Harness như thế nào?

Bây giờ mọi thứ đã được cấu hình, chúng ta có thể khởi động DeepSeek Harness và mở Web UI. Chỉ cần chạy dsh web, giao diện trình duyệt sẽ khởi động trên cổng 3080 theo mặc định.

Bạn có thể xem UI khi mở địa chỉ http://127.0.0.1:3080 trong trình duyệt.

DeepSeek Harness Web UI

Từ đây, hãy tạo workspace mới hoặc chọn workspace hiện có, bắt đầu phiên mới và chọn mô hình DeepSeek bạn muốn dùng. 

Khi phiên đã sẵn sàng, chúng ta có thể bắt đầu kiểm thử các tính năng lập trình, tìm kiếm web, thị giác và hỗ trợ mô hình bên thứ ba. 

Kiểm thử Deepseek Harness

Cách dùng DeepSeek Harness cho lập trình

Khi DeepSeek Harness đã chạy, chúng ta có thể kiểm thử các khả năng chính của thiết lập. Bắt đầu với một tác vụ lập trình đơn giản: 

Create a simple Python calculator with a command-line interface.

Kiểm thử Deepseek Harness trên tác vụ lập trình

DeepSeek Harness có thể làm việc trực tiếp với tệp và terminal, nên nó có thể tạo tệp Python, chỉnh sửa mã và chạy lệnh trong workspace.

Sau khi hoàn tất, bạn sẽ thấy tệp được tạo cùng hướng dẫn chạy.

Để khai thác tốt hơn các mô hình DeepSeek vận hành Harness, hướng dẫn DeepSeek V4 API của chúng tôi trình bày các chế độ reasoning V4 và tham số API trong Python.

Cách dùng DeepSeek Harness để tìm kiếm web

Tiếp theo, hãy thử tìm kiếm web. Không cần cài đặt bổ sung vì DeepSeek Harness đã bao gồm nhà cung cấp tìm kiếm web của DeepSeek.

Hãy thử một prompt như sau:

Search the web for the latest open-source AI model releases and summarize the top three as of August 18, 2026.

Agent sẽ tìm kiếm trên web và trả về bản tóm tắt kèm nguồn. 

Kiểm thử Deepseek Harness với công cụ tìm kiếm web

Trong khi agent đang chạy, hãy mở tab Trajectory. Bạn sẽ thấy các lời gọi công cụ như SUBTOOL: web_search.

Tab trajectory của Deepseek Harness

Điều này cho thấy agent thực sự đang dùng công cụ tìm kiếm web thay vì chỉ dựa vào kiến thức sẵn có của mô hình. Mặc định, tìm kiếm này do nhà cung cấp deepseek-official xử lý và dùng chung DEEPSEEK_API_KEY chúng ta đã cấu hình trước đó. 

Cách dùng DeepSeek cho tác vụ thị giác

Mô hình chat của DeepSeek trong Harness chỉ hỗ trợ văn bản, nên không tự hiểu được hình ảnh tải lên. Để thêm hỗ trợ thị giác, chúng ta sẽ dùng ModLens, hoạt động như cầu nối giữa DeepSeek và một mô hình có khả năng thị giác.

Cài plugin ModLens

Khi bạn tải ảnh, ModLens sẽ xử lý bằng một mô hình thị giác, trích xuất thông tin hình ảnh hữu ích và chuyển lại thông tin đó cho DeepSeek để suy luận.

Bắt đầu bằng cách cài plugin ModLens vào profile web:

dsh plugin --profile web add @liustack/modlens@3.20.0

Sau khi cài, ModLens thêm công cụ modlens_read_image và tạo các tùy chọn mô hình như ``DeepSeek-V4-Flash (modlens vision)`.

Các biến thể mô hình này cho phép bạn tải ảnh lên trong khi vẫn dùng DeepSeek làm mô hình suy luận chính.

Đăng ký backend thị giác

Trong hướng dẫn này, chúng ta sẽ dùng Gemini API làm backend thị giác, nên cần một khóa Gemini API. Bạn có thể bắt đầu với Free Tier của Gemini API. Google cung cấp quyền truy cập miễn phí tới các mô hình Gemini được hỗ trợ trong giới hạn Free Tier, vì vậy bạn không cần thêm thông tin thanh toán chỉ để thử thiết lập thị giác trong hướng dẫn này.

Khi đã có khóa, hãy thêm vào môi trường của bạn.

Trên Linux hoặc macOS:

export GEMINI_API_KEY="your_gemini_api_key"

Trên Windows PowerShell:

$env:GEMINI_API_KEY="your_gemini_api_key"

Cài và cấu hình ModLens CLI

Tiếp theo, cài ModLens CLI:

npm install -g @liustack/modlens

Rồi cấu hình bằng khóa Gemini API.

Trên Linux hoặc macOS:

modlens config set gemini-api.apiKey "$GEMINI_API_KEY"
modlens config set provider gemini-api

Trên Windows PowerShell:

modlens config set gemini-api.apiKey "$env:GEMINI_API_KEY"
modlens config set provider gemini-api

Cuối cùng, kiểm tra mọi thứ hoạt động tốt:

modlens doctor

Bạn sẽ thấy gemini-api được chọn làm nhà cung cấp và ở trạng thái sẵn sàng.

Kiểm thử DeepSeek Harness với ModLens

Giờ hãy thử khả năng hiểu hình ảnh.

Trong bộ chọn mô hình, chọn một mô hình có (modlens vision) trong tên, ví dụ DeepSeek-V4-Flash (modlens vision).

Kiểm thử Deepseek Harness cho khả năng hiểu hình ảnh

Dán hoặc tải một hình ảnh, rồi hỏi: Explain what is shown in this image.

Kiểm thử Deepseek Harness cho khả năng hiểu thị giác

Như minh họa ở trên, DeepSeek giờ có thể mô tả và suy luận về hình ảnh đã tải lên.

Ở hậu trường, ModLens gửi ảnh tới Gemini để hiểu thị giác và chuyển thông tin trích xuất về cho DeepSeek. Điều này cho phép chúng ta giữ DeepSeek làm mô hình suy luận chính trong khi chỉ dùng Gemini cho phần thị giác.

Cách dùng DeepSeek Harness với mô hình bên thứ ba

Cuối cùng, hãy thử một mô hình từ nhà cung cấp khác. Mở Settings → Models.

Cấu hình nhà cung cấp mô hình trong Deepseek Harness để truy cập mô hình OpenAI, Mistral và ZAI.

Tại đây, bạn có thể thêm các nhà cung cấp như OpenAIAnthropic, hoặc cấu hình một nhà cung cấp mô hình được hỗ trợ khác bằng thông tin xác thực API của riêng bạn. 

Bạn cũng có thể thêm nhà cung cấp tùy chỉnh nếu muốn kết nối mô hình tự lưu trữ hoặc endpoint tương thích khác. Tại đây bạn có thể cấu hình các chi tiết như ID nhà cung cấp, URL gốc, loại API, thông tin xác thực và tên mô hình. 

Sau khi thêm nhà cung cấp, quay lại phiên làm việc và chọn mô hình mới trong bộ chọn mô hình.

Ví dụ, hãy thử prompt sau:

Create a Python command-line to-do app that lets users add, list, complete, and delete tasks, with tasks saved locally in a JSON file.

Kiểm thử Deepseek Harness trên mô hình bên thứ ba

Ví dụ trên dùng mô hình Kimi-K3 của bên thứ ba để hoàn thành tác vụ lập trình, cho thấy DeepSeek Harness không bị giới hạn ở các mô hình của DeepSeek.

Bạn có thể chuyển đổi giữa các mô hình đã cấu hình trực tiếp từ bộ chọn mô hình, và thay đổi sẽ áp dụng cho yêu cầu tiếp theo mà không cần khởi động lại máy chủ Harness.

Tổng kết

Sau khi thử DeepSeek Harness, tôi vẫn ưa thích Pi Coding Agent và OpenCode cho quy trình làm việc của riêng mình.

DeepSeek Harness khiến tôi nhớ nhiều đến Pi Coding Agent vì cả hai đều xây dựng quanh hệ sinh thái plugin. Bạn có thể cài các tiện ích mở rộng khác nhau và bổ sung năng lực cho trợ lý lập trình tùy theo nhu cầu. Sự linh hoạt đó hữu ích, nhưng trong quá trình thử nghiệm, tôi vẫn chưa thực sự hiểu vì sao DeepSeek Harness lại gây sốt. Trải nghiệm tổng thể khá bình thường so với các agent lập trình khác mà tôi đã dùng.

Tôi cũng gặp vài vấn đề gây khó chịu. Đôi khi agent dừng giữa chừng mà không nói lý do, và tôi phải gõ continue để nó chạy tiếp. Việc cài đặt và cấu hình plugin cũng là điểm đau. Sẽ khá khó nếu bạn chưa biết chính xác mình đang làm gì, và tài liệu hiện tại chưa giúp ích nhiều.

Tuy vậy, DeepSeek Harness vẫn là sản phẩm rất mới, nên những vấn đề này có thể hiểu được. Tôi kỳ vọng trải nghiệm, tài liệu và hệ sinh thái plugin sẽ cải thiện đáng kể theo thời gian. Cũng có thể DeepSeek đang xây dựng một harness hoạt động đặc biệt tốt với các mô hình của chính họ, và đó có thể là một phần lý do tạo nên sự hào hứng.

Câu hỏi thường gặp về DeepSeek Harness

DeepSeek Harness là gì?

DeepSeek Harness (dsh) là một framework agent mã nguồn mở theo giấy phép MIT từ DeepSeek AI, xây dựng trên ý tưởng "mọi thứ đều là plugin." Mô hình, công cụ, giao diện và thậm chí vòng lặp agent đều có thể hoán đổi hoặc thay thế. Nó chạy như một agent lập trình cục bộ với Web UI trên trình duyệt và chế độ headless, và không phụ thuộc mô hình, nên bạn không bị khóa vào các mô hình của DeepSeek. Sản phẩm ra mắt bản xem trước cho nhà phát triển vào tháng 8/2026 và đang cải tiến rất nhanh.

DeepSeek Harness có miễn phí không?

Bản thân harness là miễn phí và mã nguồn mở theo giấy phép MIT, vì vậy bạn có thể cài, chỉnh sửa và tự lưu trữ mà không tốn chi phí. Chi phí phát sinh nằm ở mô hình phía sau: bạn cần khóa DeepSeek API với một ít tiền trong tài khoản để chạy các mô hình DeepSeek và tìm kiếm web tích hợp, hoặc thông tin xác thực cho bất kỳ nhà cung cấp khác mà bạn kết nối.

DeepSeek Harness có thể chạy các mô hình khác ngoài DeepSeek không?

Có. Vì bộ chuyển đổi mô hình là plugin, bạn có thể thêm các nhà cung cấp như OpenAI và Anthropic tại SettingsModels, hoặc trỏ một nhà cung cấp tùy chỉnh tới bất kỳ endpoint tương thích OpenAI nào, bao gồm mô hình tự lưu trữ hoặc chạy cục bộ. Bạn có thể chuyển đổi giữa các mô hình đã cấu hình từ bộ chọn mô hình mà không cần khởi động lại máy chủ.

DeepSeek Harness khác gì so với Claude Code?

Cả hai đều là agent harness, nhưng Claude Code là sản phẩm nguồn đóng gắn với các mô hình của Anthropic, trong khi DeepSeek Harness có giấy phép MIT và không phụ thuộc mô hình. Mọi khả năng, đến cả vòng lặp agent, đều là plugin có thể hoán đổi. Harness cũng trẻ hơn nhiều: bản xem trước cho nhà phát triển với khả năng thay đổi phá vỡ tương thích được dự đoán, so với một sản phẩm đã trưởng thành.

Làm thế nào để thêm khả năng hiểu hình ảnh (thị giác) vào DeepSeek Harness?

Các mô hình chat của DeepSeek trong Harness chỉ hỗ trợ văn bản, vì vậy bạn thêm thị giác thông qua plugin cộng đồng như ModLens, plugin này làm cầu nối giữa DeepSeek và mô hình có khả năng thị giác. Sau khi cài đặt, ModLens thêm công cụ modlens_read_image và các biến thể mô hình như "DeepSeek-V4-Flash (modlens vision)", và bạn sẽ cấu hình một backend thị giác. Một khóa Gemini API miễn phí là khuyến nghị mặc định.


Abid Ali Awan's photo
Author
Abid Ali Awan
LinkedIn
Twitter

Là một nhà khoa học dữ liệu được chứng nhận, tôi đam mê tận dụng công nghệ tiên tiến để tạo ra các ứng dụng học máy đổi mới. Với nền tảng vững chắc về nhận dạng giọng nói, phân tích và báo cáo dữ liệu, MLOps, AI hội thoại và NLP, tôi đã rèn giũa kỹ năng phát triển các hệ thống thông minh có thể tạo ra tác động thực sự. Bên cạnh chuyên môn kỹ thuật, tôi cũng là một người truyền đạt tốt, có khả năng chắt lọc các khái niệm phức tạp thành ngôn ngữ rõ ràng, súc tích. Nhờ đó, tôi trở thành một blogger được nhiều người quan tâm trong lĩnh vực khoa học dữ liệu, chia sẻ góc nhìn và kinh nghiệm với cộng đồng các chuyên gia dữ liệu ngày càng lớn. Hiện tại, tôi tập trung vào sáng tạo và biên tập nội dung, làm việc với các mô hình ngôn ngữ lớn để phát triển nội dung mạnh mẽ và hấp dẫn, giúp doanh nghiệp và cá nhân tận dụng tối đa dữ liệu của mình.

Chủ đề

Tìm hiểu tất cả về AI Agents cùng DataCamp!

Tracks

Cơ bản về Trợ lý Trí tuệ Nhân tạo

6 giờ
Khám phá cách các tác nhân trí tuệ nhân tạo (AI) có thể thay đổi cách làm việc của quý vị và mang lại giá trị cho tổ chức của quý vị!
Xem chi tiếtRight Arrow
Bắt Đầu Khóa Học
Xem thêmRight Arrow