Chạy app Dify trên một endpoint tương thích OpenAI-API.

Updated 2026-07-29

Dify cung cấp sẵn provider tương thích OpenAI-API đúng cho việc này: cài nó từ Marketplace, thêm từng model với id của nó, https://api.apisrouter.com/v1 làm API Base URL, và một key. Chatflow, agent, và workflow của bạn khi đó chạy trên bất kỳ model catalog nào, gồm cả Claude và DeepSeek.

Câu trả lời nhanh: cài provider, thêm model theo id.

Trong Dify, mở Settings và vào Model Provider. Từ Dify 1.0, provider là plugin: tìm OpenAI-API-compatible (do langgenius phát hành) trong danh sách hoặc cài nó từ Marketplace, sau đó nhấn Add Model trên thẻ của nó. Hộp thoại này theo từng model: chọn Model Type (LLM cho chat model), nhập id catalog chính xác vào Model Name, dán key của bạn vào API Key, và đặt API Base URL thành https://api.apisrouter.com/v1. Để Completion mode ở Chat, sau đó đặt Model context size và Upper bound for max tokens theo giới hạn đã ghi của id bạn đang thêm. Lưu lại, và model xuất hiện trong danh sách của provider, chọn được từ dropdown model của mọi app. Lặp lại hộp thoại cho mỗi id bạn muốn; hai phút mỗi model, một lần.

Model Type:                LLM
Model Name:                claude-sonnet-4-6
API Key:                   sk-YOUR-APISROUTER-KEY
API Base URL:              https://api.apisrouter.com/v1
Completion mode:           Chat
Model context size:        200000
Upper bound for max tokens: 64000

Cách Dify nói chuyện với một provider tương thích.

Dify (langgenius trên GitHub, khoảng 149K star) là nền tảng app LLM mã nguồn mở hàng đầu: workflow trực quan, node agent, pipeline RAG trên knowledge base, và app đã xuất bản có endpoint API riêng. Mỗi node LLM trong stack đó phân giải về một model đã đăng ký dưới một provider nào đó. Provider tương thích OpenAI-API cố ý được thiết kế tổng quát. Mỗi model bạn thêm là một bản ghi tự chứa, id, endpoint, key, giới hạn, và Dify gửi request chat-completions chuẩn tới base URL đã cấu hình với Model Name của bạn làm chuỗi model. Không gì trong request quan tâm vendor nào huấn luyện model, nên claude-sonnet-4-6 và deepseek-v4-pro hợp lệ ở đây như bất kỳ id GPT nào, và các model khác nhau thậm chí có thể trỏ vào endpoint khác nhau nếu bạn từng cần điều đó. Việc đăng ký theo từng model cảm giác như trở ngại cũng chính là bề mặt điều khiển: giá trị kích thước context và max-tokens bạn nhập là thứ bộ điều phối của Dify dùng để lập ngân sách prompt, cắt bớt lịch sử hội thoại, và xác thực cài đặt node. Nhập số liệu trung thực từ tài liệu của model. Đặt context cao hơn thực tế tạo ra các request bị endpoint từ chối; đặt thấp hơn thực tế âm thầm cắt bớt context mà các node RAG của bạn đã vất vả truy xuất.

Các field làm việc thực sự.

Model Name là giá trị đường dây: nó phải khớp với danh sách /v1/models của gateway từng ký tự một, vì nó đi trong mọi request. Tên hiển thị model tùy chọn chỉ đổi nhãn giao diện. Completion mode nên giữ ở Chat cho mọi model trong catalog hiện tại; tùy chọn Completion tồn tại cho các endpoint text-completion cũ và tạo ra request sai định dạng khi gửi tới chat model. Model context size và Upper bound for max tokens là cặp field người ta hay vội vàng. Kích thước context là tổng cửa sổ của model; giới hạn trên giới hạn số token đầu ra mà một node có thể yêu cầu. Dify mặc định cả hai ở 4096, thấp hơn nhiều so với những gì model hiện tại hỗ trợ, và để nguyên mặc định âm thầm làm què quặt RAG tài liệu dài và sinh văn bản dài. Đặt chúng theo tài liệu model, không theo thói quen. Bộ chọn năng lực quan trọng khi app của bạn dùng chúng: Vision Support chỉ cho các id nhận đầu vào hình ảnh, và cài đặt function-call phải khớp với hỗ trợ dùng tool của model, vì node agent phụ thuộc vào nó. Một tuyên bố năng lực sai sẽ thất bại lúc chạy bên trong workflow, một nơi debug chậm hơn hộp thoại này. Nếu workspace của bạn cũng dùng model embedding hoặc rerank, cùng provider đăng ký chúng dưới các entry Model Type riêng nhắm cùng base URL; xác nhận các id cụ thể được endpoint phục vụ trước khi nối cài đặt knowledge-base vào chúng.

curl -s https://api.apisrouter.com/v1/models \
  -H "Authorization: Bearer $APISROUTER_API_KEY" | head -50
# register these ids verbatim as Model Name entries

Chọn model cho workflow và agent.

Các trang tổng quan riêng của Dify hiển thị token theo từng app, nhưng góc nhìn sử dụng theo từng key trong console APIsRouter thêm phân tách theo từng model trên mọi app cùng một trang, đây là con số quyết định id nào giữ được chỗ.

  • Node LLM của workflow là khối lượng lớn: phân loại, trích xuất, định tuyến, các bước tóm tắt chạy mỗi lần chạy. claude-haiku-4-5-20251001, gpt-5.4-mini, và gemini-3.5-flash giữ chi phí mỗi lần chạy ổn định.
  • Node agent và các bước lý luận phức tạp xứng đáng với claude-sonnet-4-6, và khả năng dùng tool đáng tin cậy của nó quan trọng hơn điểm benchmark thô trong agent.
  • Node trả lời RAG mang context truy xuất trong mỗi lần gọi, nên giá đầu vào chi phối; deepseek-v4-pro đáng thử nơi truy xuất nặng và câu trả lời dài.
  • Đăng ký một id nhanh và một id mạnh cho cùng một vai trò rồi A/B theo từng node: trong Dify, đổi model của một node là một dropdown, không phải một cuộc di dời.
  • App đã xuất bản kế thừa lựa chọn model của các node của chúng, nên quyết định dropdown bạn đưa ra trong editor chính là kinh tế đơn vị của app bạn xuất bản.

Trả theo mức sử dụng · thấp hơn giá chính thức

Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.

Mô hìnhGiá chính thứcGiá của chúng tôi
Claude Sonnet 4.6$3.00 / $15.00 per M$2.40 / $12.00 per M
Claude Haiku 4.5 20251001$1.00 / $5.00 per M$0.80 / $4.00 per M
GPT-5.4 mini$0.75 / $4.50 per M$0.60 / $3.60 per M
Gemini 3.5 Flash$1.50 / $9.00 per M$1.20 / $7.20 per M
DeepSeek V4 Pro$0.43 / $0.87 per M$0.40 / $0.90 per M

Các kiểu lỗi đặc thù của Dify.

Provider thiếu trong danh sách nghĩa là plugin chưa được cài: từ Dify 1.0, provider tương thích OpenAI-API xuất xưởng dưới dạng plugin Marketplace, và các instance tự host mới khởi tạo không có nó. Cài nó một lần cho mỗi workspace. Một model lưu được nhưng lỗi ở lần dùng đầu thường là một trong ba thứ: Model Name không khớp cách viết catalog, base URL thiếu /v1 (Dify nối thêm route path như /chat/completions vào những gì bạn nhập), hoặc giá trị context/max-token vượt quá những gì model chấp nhận. Lỗi hiện ra trong log app hoặc workflow; cách sửa quay lại hộp thoại Add Model. Node agent thất bại trong khi node chat thuần vẫn hoạt động chỉ tới cài đặt năng lực function-calling, hoặc một model mà việc dùng tool không đạt điều chiến lược agent kỳ vọng. Kiểm tra agent trên claude-sonnet-4-6 trước để tách vấn đề cấu hình khỏi lựa chọn model. Và trên các instance tự host sau các quy tắc egress nghiêm ngặt, hãy nhớ chính container api của Dify mới cần với tới endpoint, không phải trình duyệt của bạn; một curl từ bên trong container đó giải quyết nhanh câu hỏi về kết nối.

Ai định tuyến Dify qua một gateway.

  • Các đội xây app LLM muốn Claude, GPT, Gemini, và DeepSeek chọn được theo từng node mà không cần duy trì tài khoản vendor cho mỗi provider.
  • Người tự host chạy Dify cho công cụ nội bộ, nơi một key trong một provider giữ toàn bộ chi tiêu cloud của workspace trên một log sử dụng duy nhất.
  • Người xây dựng so sánh model trên workflow thực tế: mỗi ứng viên là một hộp thoại Add Model và một lần chuyển dropdown, không phải một tích hợp mới.
  • Lập trình viên không có quyền truy cập billing của một vendor cụ thể. Truy cập dựa trên nạp tiền không yêu cầu thẻ loại bỏ phụ thuộc đăng ký theo từng provider.
  • Agency xuất bản app cho khách hàng trên Dify cần key theo từng project để chi tiêu model của mỗi khách hàng tự báo cáo.

Xác minh endpoint và debug lần chạy đầu tiên.

Curl danh sách model trước và đăng ký id từ output của nó; Model Name gõ tay là nguyên nhân hàng đầu của lỗi not-found vì field này là văn bản tự do. Sau đó chạy một chat completion nhắm vào id bạn đã đăng ký, với cùng key. Bên trong Dify, kiểm tra trong một app nháp trước khi nối workflow production: thêm một node LLM, chọn model mới, chạy một lần. Lỗi xác thực chỉ tới field API Key; not-found chỉ tới Model Name; lỗi kết nối chỉ tới base URL hoặc egress container; lỗi độ dài chỉ tới giá trị context và max-token. Khi các lần chạy đã hoạt động, console APIsRouter hiển thị model theo từng request, số lượng token, và chi tiêu. Workflow nhân số lần gọi LLM theo cách khó ước lượng bằng mắt từ editor, và log sử dụng là nơi hồ sơ token thực sự của một pipeline năm node trở nên hữu hình, theo từng model, từng ngày.

curl -s https://api.apisrouter.com/v1/chat/completions \
  -H "Authorization: Bearer $APISROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"claude-haiku-4-5-20251001",
       "messages":[{"role":"user","content":"ping"}]}'

Câu hỏi thường gặp

Làm sao để thêm provider tương thích OpenAI-API vào Dify?

Settings, Model Provider, sau đó cài plugin OpenAI-API-compatible từ Marketplace nếu chưa có trong danh sách. Nhấn Add Model trên thẻ của nó và đăng ký mỗi id với Model Name, API Key, và API Base URL https://api.apisrouter.com/v1.

Model context size và Upper bound for max tokens kiểm soát điều gì?

Kích thước context báo cho Dify biết tổng cửa sổ của model, dùng để lập ngân sách prompt và lịch sử; giới hạn trên khống chế số token đầu ra được yêu cầu. Cả hai đều mặc định 4096, quá thấp cho model hiện tại, nên hãy đặt chúng theo giới hạn đã ghi của model khi đăng ký.

Dify có thể chạy Claude hoặc DeepSeek qua provider này không?

Có. Provider gửi chuỗi Model Name tới base URL của bạn qua chat completions chuẩn, nên bất kỳ id nào gateway phục vụ đều hoạt động: claude-sonnet-4-6, deepseek-v4-pro, gemini-3.5-flash, và id GPT cạnh nhau, một key cho tất cả.

API Base URL có nên gồm /v1 không?

Có: https://api.apisrouter.com/v1. Dify nối thêm route path vào những gì bạn nhập, nên thiếu /v1 tạo ra lỗi kết nối hoặc 404 ở lần dùng đầu, và dán cả path /chat/completions đầy đủ sẽ nhân đôi route.

Một cấu hình có bao phủ tất cả app Dify của tôi không?

Model được đăng ký theo từng workspace, nên mọi app, workflow, và agent trong workspace có thể chọn chúng khi đã thêm. Nhiều workspace hoặc môi trường lặp lại việc cài đặt, điều này cũng cho phép mỗi workspace mang key riêng để báo cáo sử dụng riêng.

Vì sao provider OpenAI-API-compatible thiếu trong Dify của tôi?

Từ Dify 1.0, provider model xuất xưởng dưới dạng plugin, và các instance tự host khởi tạo không có gì cài sẵn. Mở Marketplace, cài OpenAI-API-compatible của langgenius, và thẻ đó xuất hiện dưới cài đặt Model Provider với hành động Add Model.