FLUX.1 [dev] with Controlnets and Loras · Differential Diffusion
Integrar
flux-general/differential-diffusion
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/flux-general/differential-diffusion?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"image": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"change_map_image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.ru/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/flux-general/differential-diffusion?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"image": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"change_map_image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.ru/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"image": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"change_map_image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/flux-general/differential-diffusion", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
# 1. Connect once (Claude Code; Cursor, VS Code, Claude Desktop: https://doitong.com/rm/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.ru/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "flux-general/differential-diffusion",
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"image": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"change_map_image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
}
}
Cloma il model FLUX.1 [dev] with Controlnets and Loras · Differential Diffusion (flux-general/differential-diffusion) tras la Doitong API. Documentaziun per agents: https://doitong.com/rm/developers/models/flux-general/differential-diffusion.md
POST https://api.doitong.ru/v1/run/flux-general/differential-diffusion?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"image": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"change_map_image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
}
Sche il status da la resposta è "queued" u "running", fa polling GET https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20 fin ch'el è "succeeded"; las datotecas èn en outputs[].url. POST https://api.doitong.ru/v1/quote/flux-general/differential-diffusion cun il medem body returna il pretsch exact avant l'execuziun.
Questa dumonda: ≈$0,138 138 credits API · ≈ ₽14,55 Lantschar sin questa pagina
Tia nova clav API. Quest vegn mussada mo ussa ed è gia en il code ed en il champ da la clav API sutvart. Mantegna ella secreta: na la metta mai en code che vegn exequì en in navigatur.
Fatg sin Doitong
Ovras publicas fatgas cun FLUX.1 [dev] with Controlnets and Loras da la communitad Doitong. Reutilisescha in prompt cun in clic.
Close-up portrait seorang wanita berkulit pucat berdiri setengah tubuh di dalam air berwarna lembut kebiruan, dikelilingi bunga teratai berkelopak penuh yang bermekaran indah di permukaan air. Rambutnya pirang pucat tersanggul longgar dengan beberapa helaian tipis jatuh alami membingkai sisi...
Close-up portrait seorang wanita berkulit pucat berdiri setengah tubuh di dalam air berwarna lembut kebiruan, dikelilingi bunga teratai berkelopak penuh yang bermekaran indah di permukaan air. Rambutnya pirang pucat tersanggul longgar dengan beberapa helaian tipis jatuh alami membingkai sisi...
Prompt Details Seorang wanita berkulit pucat berdiri setengah tubuh di dalam air berwarna lembut kebiruan, dikelilingi bunga teratai berkelopak penuh yang bermekaran indah di permukaan air. Rambutnya pirang pucat tersanggul longgar dengan beberapa helaian tipis jatuh alami membingkai sisi...
Seorang wanita berkulit pucat berdiri setengah tubuh di dalam air berwarna lembut kebiruan, dikelilingi bunga teratai berkelopak penuh yang bermekaran indah di permukaan air. Rambutnya pirang pucat tersanggul longgar dengan beberapa helaian tipis jatuh alami membingkai sisi wajahnya. Ia memeluk...
"Potret sinematik ultra-realistis close-up seorang anak laki-laki kecil (balita) yang sangat menggemaskan dengan mata cokelat besar yang ekspresif, rambut hitam berantakan yang tebal, mengenakan kaus putih kerah henley. Dia berpose dengan kedua tangan terkatup di depan dada, menunjukkan senyum...
"Potret sinematik ultra-realistis close-up seorang anak laki-laki kecil (balita) yang sangat menggemaskan dengan mata cokelat besar yang ekspresif, rambut hitam berantakan yang tebal, mengenakan kaus putih kerah henley. Dia berpose dengan kedua tangan terkatup di depan dada, menunjukkan senyum...
"Potret sinematik ultra-realistis close-up seorang anak laki-laki kecil (balita) yang sangat menggemaskan dengan mata cokelat besar yang ekspresif, rambut hitam berantakan yang tebal, mengenakan kaus putih kerah henley. Dia berpose dengan kedua tangan terkatup di depan dada, menunjukkan senyum...
Foto sinematik hiper-realistis resolusi tinggi menampilkan seorang pria muda Indonesia dengan tubuh ramping dan proporsional, rambut hitam pendek agak acak, mengenakan jaket kulit hitam, celana riding fit, dan sepatu motor. Ia sedang melakukan aksi freestyle ekstrem dengan motor sport 500cc...
Foto sinematik hiper-realistis resolusi tinggi menampilkan seorang pria muda Indonesia dengan tubuh ramping dan proporsional, rambut hitam pendek agak acak, mengenakan jaket kulit hitam dan celana riding fit. Ia sedang bersiap melakukan freestyle menggunakan motor sport 500cc berwarna merah,...
Construir ina dumonda
Ils controls vegnan generads dal schema dal model. Il code e il pretsch s'actualiseschan durant che ti als midas.
/run/flux-general/differential-diffusion?wait=20
calculaziun → $0,138
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/flux-general/differential-diffusion?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"image": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"change_map_image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.ru/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/flux-general/differential-diffusion?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"image": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"change_map_image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.ru/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"image": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"change_map_image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/flux-general/differential-diffusion", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "run",
"arguments": {
"model_id": "flux-general/differential-diffusion",
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"image": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"change_map_image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
},
"wait_seconds": 20
}
}
}
Executar questa dumonda
Tia clav resta en quest browser: ella vegn tramessa mo al Doitong API e memorisada (localStorage) mo sch'ella scheccas Tiar a memoria. Obtegnair ina clav API
Davart FLUX.1 [dev] with Controlnets and Loras · Differential Diffusion
Transformescha ina maletg d’origin regiun per regiun, cun ina carta da midadas che controlla quant che mintga zona vegn modifitgada. Pretenda `prompt`, `image_url` e `change_map_image_url`. Accepta er LoRAs, ControlNets, IP-Adapters ed ina maletg da referenza. `num_inference_steps` va da 1 fin 50 e `num_images` fin a 10, cun output png u jpeg.
Parameters
Invia u il num canonic u il num nativ, betg omaduas. Nums canonics
promptobligatori
image_sizeopziunal
num_inference_stepsopziunal
seedopziunal
lorasopziunal
loras[].pathobligatori
loras[].scaleopziunal
control_lorasopziunal
control_loras[].pathobligatori
control_loras[].scaleopziunal
control_loras[].control_image_urlobligatori
control_loras[].preprocessopziunal
controlnetsopziunal
controlnets[].pathobligatori
controlnets[].config_urlopziunal
controlnets[].variantopziunal
controlnets[].control_image_urlobligatori
controlnets[].mask_image_urlopziunal
controlnets[].mask_thresholdopziunal
controlnets[].conditioning_scaleopziunal
controlnets[].start_percentageopziunal
controlnets[].end_percentageopziunal
controlnet_unionsopziunal
controlnet_unions[].pathobligatori
controlnet_unions[].config_urlopziunal
controlnet_unions[].variantopziunal
controlnet_unions[].controlsobligatori
controlnet_unions[].controls[].control_image_urlobligatori
controlnet_unions[].controls[].mask_image_urlopziunal
controlnet_unions[].controls[].control_modeobligatori
controlnet_unions[].controls[].conditioning_scaleopziunal
controlnet_unions[].controls[].mask_thresholdopziunal
controlnet_unions[].controls[].start_percentageopziunal
controlnet_unions[].controls[].end_percentageopziunal
ip_adaptersopziunal
ip_adapters[].pathobligatori
ip_adapters[].subfolderopziunal
ip_adapters[].weight_nameopziunal
ip_adapters[].image_encoder_pathobligatori
ip_adapters[].image_encoder_subfolderopziunal
ip_adapters[].image_encoder_weight_nameopziunal
ip_adapters[].image_urlobligatori
ip_adapters[].mask_image_urlopziunal
ip_adapters[].mask_thresholdopziunal
ip_adapters[].scaleobligatori
easycontrolsopziunal
easycontrols[].control_method_urlobligatori
easycontrols[].scaleopziunal
easycontrols[].image_urlobligatori
easycontrols[].image_control_typeobligatori
fill_imageopziunal
fill_image.fill_image_urlopziunal
guidance_scaleopziunal
real_cfg_scaleopziunal
use_real_cfgopziunal
use_cfg_zeroopziunal
num_imagesopziunal
num_outputs
enable_safety_checkeropziunal
reference_image_urlopziunal
reference_strengthopziunal
reference_startopziunal
reference_endopziunal
base_shiftopziunal
max_shiftopziunal
output_formatopziunal
use_beta_scheduleopziunal
sigma_scheduleopziunal
scheduleropziunal
negative_promptopziunal
nag_scaleopziunal
nag_tauopziunal
nag_alphaopziunal
nag_endopziunal
image_urlobligatori
image
change_map_image_urlobligatori
strengthopziunal
Ils parameters da datotecas acceptan ina URL publica https://, ina URI data: fin a 10 MB u il file_url d'ina chargiada. Datotecas
Output
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "flux-general/differential-diffusion",
"status": "succeeded",
"created_at": "2026-10-20T12:00:00Z",
"started_at": "2026-10-20T12:00:02Z",
"completed_at": "2026-10-20T12:00:09Z",
"queue_position": null,
"cost": {
"credits": 138,
"usd": "0.138",
"charged": 138,
"refunded": 0
},
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
"image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
"change_map_image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
},
"output": {
"images": [
{
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"width": 1024,
"height": 768,
"content_type": "image/jpeg"
}
],
"timings": {},
"seed": 42,
"has_nsfw_concepts": [
false
],
"prompt": "string"
},
"outputs": [
{
"type": "image",
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_size": 1843200,
"width": 1024,
"height": 768,
"stored": true
}
],
"error": null,
"metrics": {
"inference_seconds": 6.8
},
"urls": {
"self": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
Champs da l'output
- images
- array of object {url, width, height, content_type}Infurmaziuns da la datoteca per ils maletgs generads.
- timings
- object
- seed
- integerSeed da la generaziun dal maletg, inclusa la valur tschernida casualmain sche l'input n'ha betg furnì in seed; autramain repeta la valur furnida.
- has_nsfw_concepts
- array of booleanInditgescha sche concepts NSFW cumparan en ils maletgs generads.
- prompt
- stringPrompt utilisà durant la generaziun dal maletg.
Autras variantes FLUX.1 [dev] with Controlnets and Loras
Dapli models: Modificaziun da maletgs
Per agents AI: questa pagina sco Markdown è disponibla sut https://doitong.com/rm/developers/models/flux-general/differential-diffusion.md. Tut ils models e las guidas: https://doitong.com/developers/llms.txt






