FLUX.1 [dev] with Controlnets and Loras
Integracja
flux-general
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/flux-general?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"
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.com/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?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"
}),
});
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.com/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",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/flux-general", 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/pl/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.com/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "flux-general",
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
}
}
Wywołaj model FLUX.1 [dev] with Controlnets and Loras (flux-general) za pośrednictwem Doitong API. Dokumentacja dla agentów: https://doitong.com/pl/developers/models/flux-general.md
POST https://api.doitong.com/v1/run/flux-general?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"
}
Jeśli status odpowiedzi to "queued" lub "running", odpytuj GET https://api.doitong.com/v1/requests/REQUEST_ID?wait=20, aż status zmieni się na "succeeded"; pliki znajdują się w outputs[].url. POST https://api.doitong.com/v1/quote/flux-general z tym samym ciałem zwraca dokładną cenę przed uruchomieniem.
To żądanie: ≈0,30 $ 300 kredytów API Uruchom na tej stronie
Twój nowy klucz API. Jest wyświetlany tylko teraz i znajduje się już w kodzie oraz w polu klucza API poniżej. Zachowaj go w tajemnicy: nigdy nie umieszczaj go w kodzie uruchamianym w przeglądarce.
Utworzone w Doitong
Publiczne prace utworzone za pomocą FLUX.1 [dev] with Controlnets and Loras przez społeczność Doitong. Użyj ponownie promptu jednym kliknięciem.
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,...
Zbuduj żądanie
Elementy sterujące są generowane ze schematu modelu. Kod i cena aktualizują się podczas ich zmiany.
/run/flux-general?wait=20
wycena → 0,30 $
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/flux-general?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"
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.com/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?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"
}),
});
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.com/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",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/flux-general", 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",
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
},
"wait_seconds": 20
}
}
}
Uruchom to żądanie
Klucz pozostaje w tej przeglądarce: jest wysyłany tylko do Doitong API i zapisywany (localStorage) tylko po zaznaczeniu opcji Zapamiętaj. Uzyskaj klucz API
Informacje o FLUX.1 [dev] with Controlnets and Loras
Generuje obrazy na podstawie `prompt`, obsługując kilka metod uwarunkowania: `loras`, `control_loras`, `controlnets`, `controlnet_unions`, `ip_adapters` i `easycontrols`, a także `fill_image` dla obszarów maskowanych. Przyjmuje również `reference_image_url`, negatywne prompty oraz harmonogram euler lub dpmpp_2m. Do 10 obrazów na wywołanie, w formacie png lub jpeg.
Parametry
Wyślij nazwę kanoniczną albo natywną, nie obie. Nazwy kanoniczne
promptwymagane
image_sizeopcjonalne
num_inference_stepsopcjonalne
seedopcjonalne
lorasopcjonalne
loras[].pathwymagane
loras[].scaleopcjonalne
control_lorasopcjonalne
control_loras[].pathwymagane
control_loras[].scaleopcjonalne
control_loras[].control_image_urlwymagane
control_loras[].preprocessopcjonalne
controlnetsopcjonalne
controlnets[].pathwymagane
controlnets[].config_urlopcjonalne
controlnets[].variantopcjonalne
controlnets[].control_image_urlwymagane
controlnets[].mask_image_urlopcjonalne
controlnets[].mask_thresholdopcjonalne
controlnets[].conditioning_scaleopcjonalne
controlnets[].start_percentageopcjonalne
controlnets[].end_percentageopcjonalne
controlnet_unionsopcjonalne
controlnet_unions[].pathwymagane
controlnet_unions[].config_urlopcjonalne
controlnet_unions[].variantopcjonalne
controlnet_unions[].controlswymagane
controlnet_unions[].controls[].control_image_urlwymagane
controlnet_unions[].controls[].mask_image_urlopcjonalne
controlnet_unions[].controls[].control_modewymagane
controlnet_unions[].controls[].conditioning_scaleopcjonalne
controlnet_unions[].controls[].mask_thresholdopcjonalne
controlnet_unions[].controls[].start_percentageopcjonalne
controlnet_unions[].controls[].end_percentageopcjonalne
ip_adaptersopcjonalne
ip_adapters[].pathwymagane
ip_adapters[].subfolderopcjonalne
ip_adapters[].weight_nameopcjonalne
ip_adapters[].image_encoder_pathwymagane
ip_adapters[].image_encoder_subfolderopcjonalne
ip_adapters[].image_encoder_weight_nameopcjonalne
ip_adapters[].image_urlwymagane
ip_adapters[].mask_image_urlopcjonalne
ip_adapters[].mask_thresholdopcjonalne
ip_adapters[].scalewymagane
easycontrolsopcjonalne
easycontrols[].control_method_urlwymagane
easycontrols[].scaleopcjonalne
easycontrols[].image_urlwymagane
easycontrols[].image_control_typewymagane
fill_imageopcjonalne
fill_image.fill_image_urlopcjonalne
guidance_scaleopcjonalne
real_cfg_scaleopcjonalne
use_real_cfgopcjonalne
use_cfg_zeroopcjonalne
num_imagesopcjonalne
num_outputs
enable_safety_checkeropcjonalne
reference_image_urlopcjonalne
reference_strengthopcjonalne
reference_startopcjonalne
reference_endopcjonalne
base_shiftopcjonalne
max_shiftopcjonalne
output_formatopcjonalne
use_beta_scheduleopcjonalne
sigma_scheduleopcjonalne
scheduleropcjonalne
negative_promptopcjonalne
nag_scaleopcjonalne
nag_tauopcjonalne
nag_alphaopcjonalne
nag_endopcjonalne
Parametry plików przyjmują publiczny URL https://, identyfikator URI data: do 10 MB albo file_url przesłanego pliku. Pliki
Wynik
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "flux-general",
"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": 300,
"usd": "0.30",
"charged": 300,
"refunded": 0
},
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
},
"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.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
Pola wyniku
- images
- array of object {url, width, height, content_type}Informacje o plikach wygenerowanych obrazów.
- timings
- object
- seed
- integerZiarno generowania obrazu, zawierające wartość wybraną losowo, jeśli dane wejściowe nie zawierały ziarna; w przeciwnym razie powtarza podaną wartość.
- has_nsfw_concepts
- array of booleanWskazuje, czy w wygenerowanych obrazach występują treści NSFW.
- prompt
- stringPrompt używany podczas generowania obrazu.
Inne warianty FLUX.1 [dev] with Controlnets and Loras
Więcej modeli: Tekst na obraz
Dla agentów AI: ta strona w formacie Markdown jest dostępna pod adresem https://doitong.com/pl/developers/models/flux-general.md. Wszystkie modele i przewodniki: https://doitong.com/developers/llms.txt







