Bria FIBO 2.0 Edit

Bria FIBO 2.0 Edit is an image editing model that changes an image from a text instruction, with an optional mask to regenerate one area and keep the rest. It also combines up to four reference images into one result at a chosen aspect ratio, for product placement, color or texture matching, and character consistency. It is trained only on licensed data, which suits commercial production work.

Complete technical specification for integration
Ready-to-use code snippets for common workflows
reference-to-image
Opera Conductor Headshot Display$0.04~19s
Place the framed conductor headshot from image_1 upright on the walnut vanity in image_2, preserving the exact portrait, facial identity, polished retouching, brass frame and proportions while matching the room's warm mirror-bulb illumination, perspective, contact shadow and subtle reflections for a refined, photorealistic opera press display, with the dressing room remaining empty and unchanged.
import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'bria:21@1',
positivePrompt: 'Place the framed conductor headshot from image_1 upright on the walnut vanity in image_2, preserving the exact portrait, facial identity, polished retouching, brass frame and proportions while matching the room\'s warm mirror-bulb illumination, perspective, contact shadow and subtle reflections for a refined, photorealistic opera press display, with the dressing room remaining empty and unchanged.',
width: 1408,
height: 792,
inputs: {
referenceImages: [
'https://assets.runware.ai/assets/inputs/591dbcbe-d7b7-4035-aeed-668f707e4891.jpg',
'https://assets.runware.ai/assets/inputs/25ed16d0-e4cc-470e-9c9f-02e7c8db893b.jpg'
]
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "bria:21@1",
"positivePrompt": "Place the framed conductor headshot from image_1 upright on the walnut vanity in image_2, preserving the exact portrait, facial identity, polished retouching, brass frame and proportions while matching the room's warm mirror-bulb illumination, perspective, contact shadow and subtle reflections for a refined, photorealistic opera press display, with the dressing room remaining empty and unchanged.",
"width": 1408,
"height": 792,
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/591dbcbe-d7b7-4035-aeed-668f707e4891.jpg",
"https://assets.runware.ai/assets/inputs/25ed16d0-e4cc-470e-9c9f-02e7c8db893b.jpg"
]
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "imageInference",
"taskUUID": "94836c4a-44ef-4228-aa4d-cd2db05d2ed9",
"model": "bria:21@1",
"positivePrompt": "Place the framed conductor headshot from image_1 upright on the walnut vanity in image_2, preserving the exact portrait, facial identity, polished retouching, brass frame and proportions while matching the room's warm mirror-bulb illumination, perspective, contact shadow and subtle reflections for a refined, photorealistic opera press display, with the dressing room remaining empty and unchanged.",
"width": 1408,
"height": 792,
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/591dbcbe-d7b7-4035-aeed-668f707e4891.jpg",
"https://assets.runware.ai/assets/inputs/25ed16d0-e4cc-470e-9c9f-02e7c8db893b.jpg"
]
}
}
]'runware run bria:21@1 \
positivePrompt="Place the framed conductor headshot from image_1 upright on the walnut vanity in image_2, preserving the exact portrait, facial identity, polished retouching, brass frame and proportions while matching the room's warm mirror-bulb illumination, perspective, contact shadow and subtle reflections for a refined, photorealistic opera press display, with the dressing room remaining empty and unchanged." \
width=1408 \
height=792 \
inputs.referenceImages.0=https://assets.runware.ai/assets/inputs/591dbcbe-d7b7-4035-aeed-668f707e4891.jpg \
inputs.referenceImages.1=https://assets.runware.ai/assets/inputs/25ed16d0-e4cc-470e-9c9f-02e7c8db893b.jpg{
"taskType": "imageInference",
"taskUUID": "94836c4a-44ef-4228-aa4d-cd2db05d2ed9",
"model": "bria:21@1",
"positivePrompt": "Place the framed conductor headshot from image_1 upright on the walnut vanity in image_2, preserving the exact portrait, facial identity, polished retouching, brass frame and proportions while matching the room's warm mirror-bulb illumination, perspective, contact shadow and subtle reflections for a refined, photorealistic opera press display, with the dressing room remaining empty and unchanged.",
"width": 1408,
"height": 792,
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/591dbcbe-d7b7-4035-aeed-668f707e4891.jpg",
"https://assets.runware.ai/assets/inputs/25ed16d0-e4cc-470e-9c9f-02e7c8db893b.jpg"
]
}
}Response
{
"taskType": "imageInference",
"taskUUID": "94836c4a-44ef-4228-aa4d-cd2db05d2ed9",
"imageUUID": "eaefde1e-5da6-40fc-b89b-f6d69f419b11",
"imageURL": "https://im.runware.ai/image/os/a05d22/ws/3/ii/eaefde1e-5da6-40fc-b89b-f6d69f419b11.jpg",
"seed": 1227034800,
"cost": 0.04
}reference-to-image
Boutique Pedalboard Product Group Shot$0.04~20s
Place the burnt-orange guitar effects pedal from image_1 into the open center-right position among the pedal group in image_2, matching the overhead perspective, scale, cyan-and-amber lighting and realistic contact shadow, and connect its side jacks naturally to the neighboring patch cables while preserving the rest of image_2 unchanged.
import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'bria:21@1',
positivePrompt: 'Place the burnt-orange guitar effects pedal from image_1 into the open center-right position among the pedal group in image_2, matching the overhead perspective, scale, cyan-and-amber lighting and realistic contact shadow, and connect its side jacks naturally to the neighboring patch cables while preserving the rest of image_2 unchanged.',
width: 1408,
height: 792,
inputs: {
referenceImages: [
'https://assets.runware.ai/assets/inputs/911de202-6ec5-4915-9c6c-d77d204a634d.jpg',
'https://assets.runware.ai/assets/inputs/807711bd-f62c-47fe-a57f-cc3deed7727f.jpg'
]
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "bria:21@1",
"positivePrompt": "Place the burnt-orange guitar effects pedal from image_1 into the open center-right position among the pedal group in image_2, matching the overhead perspective, scale, cyan-and-amber lighting and realistic contact shadow, and connect its side jacks naturally to the neighboring patch cables while preserving the rest of image_2 unchanged.",
"width": 1408,
"height": 792,
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/911de202-6ec5-4915-9c6c-d77d204a634d.jpg",
"https://assets.runware.ai/assets/inputs/807711bd-f62c-47fe-a57f-cc3deed7727f.jpg"
]
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "imageInference",
"taskUUID": "d593d0ca-a6aa-4a2e-b148-1ede4ded87d1",
"model": "bria:21@1",
"positivePrompt": "Place the burnt-orange guitar effects pedal from image_1 into the open center-right position among the pedal group in image_2, matching the overhead perspective, scale, cyan-and-amber lighting and realistic contact shadow, and connect its side jacks naturally to the neighboring patch cables while preserving the rest of image_2 unchanged.",
"width": 1408,
"height": 792,
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/911de202-6ec5-4915-9c6c-d77d204a634d.jpg",
"https://assets.runware.ai/assets/inputs/807711bd-f62c-47fe-a57f-cc3deed7727f.jpg"
]
}
}
]'runware run bria:21@1 \
positivePrompt="Place the burnt-orange guitar effects pedal from image_1 into the open center-right position among the pedal group in image_2, matching the overhead perspective, scale, cyan-and-amber lighting and realistic contact shadow, and connect its side jacks naturally to the neighboring patch cables while preserving the rest of image_2 unchanged." \
width=1408 \
height=792 \
inputs.referenceImages.0=https://assets.runware.ai/assets/inputs/911de202-6ec5-4915-9c6c-d77d204a634d.jpg \
inputs.referenceImages.1=https://assets.runware.ai/assets/inputs/807711bd-f62c-47fe-a57f-cc3deed7727f.jpg{
"taskType": "imageInference",
"taskUUID": "d593d0ca-a6aa-4a2e-b148-1ede4ded87d1",
"model": "bria:21@1",
"positivePrompt": "Place the burnt-orange guitar effects pedal from image_1 into the open center-right position among the pedal group in image_2, matching the overhead perspective, scale, cyan-and-amber lighting and realistic contact shadow, and connect its side jacks naturally to the neighboring patch cables while preserving the rest of image_2 unchanged.",
"width": 1408,
"height": 792,
"inputs": {
"referenceImages": [
"https://assets.runware.ai/assets/inputs/911de202-6ec5-4915-9c6c-d77d204a634d.jpg",
"https://assets.runware.ai/assets/inputs/807711bd-f62c-47fe-a57f-cc3deed7727f.jpg"
]
}
}Response
{
"taskType": "imageInference",
"taskUUID": "d593d0ca-a6aa-4a2e-b148-1ede4ded87d1",
"imageUUID": "fb277865-539b-4711-9d88-4cb0c6de5858",
"imageURL": "https://im.runware.ai/image/os/a04d20/ws/3/ii/fb277865-539b-4711-9d88-4cb0c6de5858.jpg",
"seed": 419556745,
"cost": 0.04
}inpaint
Apiary Smoker Lifestyle Product Photo$0.04~15s
Replace the entire masked stainless-steel beekeeping smoker with a premium handcrafted apiary smoker in the same position, scale, and three-quarter orientation. The new product has a warm hammered-copper cylindrical fire chamber, a protective copper wire heat cage, a tapered conical spout, a small ash-wood handle, and structured dark forest-green leather bellows with neat brass rivets. Keep the design practical, durable, and realistically manufactured, with no logo or lettering. Match the existing soft window light, perspective, depth of field, copper reflections, and natural contact shadow on the workbench. Preserve the unmasked sage plaster wall, timber surface, framing, lighting, and all surrounding pixels unchanged. Finished commercial lifestyle product photography for a specialist beekeeping equipment catalog.
import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'bria:21@1',
positivePrompt: 'Replace the entire masked stainless-steel beekeeping smoker with a premium handcrafted apiary smoker in the same position, scale, and three-quarter orientation. The new product has a warm hammered-copper cylindrical fire chamber, a protective copper wire heat cage, a tapered conical spout, a small ash-wood handle, and structured dark forest-green leather bellows with neat brass rivets. Keep the design practical, durable, and realistically manufactured, with no logo or lettering. Match the existing soft window light, perspective, depth of field, copper reflections, and natural contact shadow on the workbench. Preserve the unmasked sage plaster wall, timber surface, framing, lighting, and all surrounding pixels unchanged. Finished commercial lifestyle product photography for a specialist beekeeping equipment catalog.',
inputs: {
image: 'https://assets.runware.ai/assets/inputs/d7509eae-88a6-41ba-9746-4035557ab5c0.jpg',
mask: 'https://assets.runware.ai/assets/inputs/28585e2b-b8d4-476e-86c9-5d184babf4fc.png'
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "bria:21@1",
"positivePrompt": "Replace the entire masked stainless-steel beekeeping smoker with a premium handcrafted apiary smoker in the same position, scale, and three-quarter orientation. The new product has a warm hammered-copper cylindrical fire chamber, a protective copper wire heat cage, a tapered conical spout, a small ash-wood handle, and structured dark forest-green leather bellows with neat brass rivets. Keep the design practical, durable, and realistically manufactured, with no logo or lettering. Match the existing soft window light, perspective, depth of field, copper reflections, and natural contact shadow on the workbench. Preserve the unmasked sage plaster wall, timber surface, framing, lighting, and all surrounding pixels unchanged. Finished commercial lifestyle product photography for a specialist beekeeping equipment catalog.",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/d7509eae-88a6-41ba-9746-4035557ab5c0.jpg",
"mask": "https://assets.runware.ai/assets/inputs/28585e2b-b8d4-476e-86c9-5d184babf4fc.png"
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "imageInference",
"taskUUID": "dd63354f-7d29-4c99-bca7-e09d47a2db44",
"model": "bria:21@1",
"positivePrompt": "Replace the entire masked stainless-steel beekeeping smoker with a premium handcrafted apiary smoker in the same position, scale, and three-quarter orientation. The new product has a warm hammered-copper cylindrical fire chamber, a protective copper wire heat cage, a tapered conical spout, a small ash-wood handle, and structured dark forest-green leather bellows with neat brass rivets. Keep the design practical, durable, and realistically manufactured, with no logo or lettering. Match the existing soft window light, perspective, depth of field, copper reflections, and natural contact shadow on the workbench. Preserve the unmasked sage plaster wall, timber surface, framing, lighting, and all surrounding pixels unchanged. Finished commercial lifestyle product photography for a specialist beekeeping equipment catalog.",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/d7509eae-88a6-41ba-9746-4035557ab5c0.jpg",
"mask": "https://assets.runware.ai/assets/inputs/28585e2b-b8d4-476e-86c9-5d184babf4fc.png"
}
}
]'runware run bria:21@1 \
positivePrompt="Replace the entire masked stainless-steel beekeeping smoker with a premium handcrafted apiary smoker in the same position, scale, and three-quarter orientation. The new product has a warm hammered-copper cylindrical fire chamber, a protective copper wire heat cage, a tapered conical spout, a small ash-wood handle, and structured dark forest-green leather bellows with neat brass rivets. Keep the design practical, durable, and realistically manufactured, with no logo or lettering. Match the existing soft window light, perspective, depth of field, copper reflections, and natural contact shadow on the workbench. Preserve the unmasked sage plaster wall, timber surface, framing, lighting, and all surrounding pixels unchanged. Finished commercial lifestyle product photography for a specialist beekeeping equipment catalog." \
inputs.image=https://assets.runware.ai/assets/inputs/d7509eae-88a6-41ba-9746-4035557ab5c0.jpg \
inputs.mask=https://assets.runware.ai/assets/inputs/28585e2b-b8d4-476e-86c9-5d184babf4fc.png{
"taskType": "imageInference",
"taskUUID": "dd63354f-7d29-4c99-bca7-e09d47a2db44",
"model": "bria:21@1",
"positivePrompt": "Replace the entire masked stainless-steel beekeeping smoker with a premium handcrafted apiary smoker in the same position, scale, and three-quarter orientation. The new product has a warm hammered-copper cylindrical fire chamber, a protective copper wire heat cage, a tapered conical spout, a small ash-wood handle, and structured dark forest-green leather bellows with neat brass rivets. Keep the design practical, durable, and realistically manufactured, with no logo or lettering. Match the existing soft window light, perspective, depth of field, copper reflections, and natural contact shadow on the workbench. Preserve the unmasked sage plaster wall, timber surface, framing, lighting, and all surrounding pixels unchanged. Finished commercial lifestyle product photography for a specialist beekeeping equipment catalog.",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/d7509eae-88a6-41ba-9746-4035557ab5c0.jpg",
"mask": "https://assets.runware.ai/assets/inputs/28585e2b-b8d4-476e-86c9-5d184babf4fc.png"
}
}Response
{
"taskType": "imageInference",
"taskUUID": "dd63354f-7d29-4c99-bca7-e09d47a2db44",
"imageUUID": "8301ebd7-9003-4ea9-bac3-a122f6e5562e",
"imageURL": "https://im.runware.ai/image/os/a01d21/ws/3/ii/8301ebd7-9003-4ea9-bac3-a122f6e5562e.jpg",
"seed": 1511891947,
"cost": 0.04
}image-edit
Polar Research Annual Report Hero$0.04~15s
Edit the supplied documentary photograph into a finished annual-report hero image. Remove only the blue tarpaulin-wrapped cargo pallet and its orange ratchet straps from the lower-right foreground. Reconstruct continuous windswept snow where the pallet stood, matching the surrounding granular texture, shallow drift contours, blue-gray ambient color, low sunlight direction, and soft natural shadowing. Continue any partially obscured wind patterns and tire tracks plausibly through the filled area so there is no visible retouching seam. Preserve the exact camera position, crop, composition, research station architecture, building colors, tracked vehicle, scientist’s identity and pose, mountains, sky, lighting, shadows, and every unrelated detail. Maintain realistic editorial polar photography. Add no new objects, people, lettering, or logos.
import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'bria:21@1',
positivePrompt: 'Edit the supplied documentary photograph into a finished annual-report hero image. Remove only the blue tarpaulin-wrapped cargo pallet and its orange ratchet straps from the lower-right foreground. Reconstruct continuous windswept snow where the pallet stood, matching the surrounding granular texture, shallow drift contours, blue-gray ambient color, low sunlight direction, and soft natural shadowing. Continue any partially obscured wind patterns and tire tracks plausibly through the filled area so there is no visible retouching seam. Preserve the exact camera position, crop, composition, research station architecture, building colors, tracked vehicle, scientist’s identity and pose, mountains, sky, lighting, shadows, and every unrelated detail. Maintain realistic editorial polar photography. Add no new objects, people, lettering, or logos.',
inputs: {
image: 'https://assets.runware.ai/assets/inputs/d27d1fc1-a6a6-4443-a173-30daa06cc737.jpg'
}
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "bria:21@1",
"positivePrompt": "Edit the supplied documentary photograph into a finished annual-report hero image. Remove only the blue tarpaulin-wrapped cargo pallet and its orange ratchet straps from the lower-right foreground. Reconstruct continuous windswept snow where the pallet stood, matching the surrounding granular texture, shallow drift contours, blue-gray ambient color, low sunlight direction, and soft natural shadowing. Continue any partially obscured wind patterns and tire tracks plausibly through the filled area so there is no visible retouching seam. Preserve the exact camera position, crop, composition, research station architecture, building colors, tracked vehicle, scientist’s identity and pose, mountains, sky, lighting, shadows, and every unrelated detail. Maintain realistic editorial polar photography. Add no new objects, people, lettering, or logos.",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/d27d1fc1-a6a6-4443-a173-30daa06cc737.jpg"
}
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "imageInference",
"taskUUID": "bffe2442-109e-4a9d-9c74-a53f9296e85f",
"model": "bria:21@1",
"positivePrompt": "Edit the supplied documentary photograph into a finished annual-report hero image. Remove only the blue tarpaulin-wrapped cargo pallet and its orange ratchet straps from the lower-right foreground. Reconstruct continuous windswept snow where the pallet stood, matching the surrounding granular texture, shallow drift contours, blue-gray ambient color, low sunlight direction, and soft natural shadowing. Continue any partially obscured wind patterns and tire tracks plausibly through the filled area so there is no visible retouching seam. Preserve the exact camera position, crop, composition, research station architecture, building colors, tracked vehicle, scientist’s identity and pose, mountains, sky, lighting, shadows, and every unrelated detail. Maintain realistic editorial polar photography. Add no new objects, people, lettering, or logos.",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/d27d1fc1-a6a6-4443-a173-30daa06cc737.jpg"
}
}
]'runware run bria:21@1 \
positivePrompt="Edit the supplied documentary photograph into a finished annual-report hero image. Remove only the blue tarpaulin-wrapped cargo pallet and its orange ratchet straps from the lower-right foreground. Reconstruct continuous windswept snow where the pallet stood, matching the surrounding granular texture, shallow drift contours, blue-gray ambient color, low sunlight direction, and soft natural shadowing. Continue any partially obscured wind patterns and tire tracks plausibly through the filled area so there is no visible retouching seam. Preserve the exact camera position, crop, composition, research station architecture, building colors, tracked vehicle, scientist’s identity and pose, mountains, sky, lighting, shadows, and every unrelated detail. Maintain realistic editorial polar photography. Add no new objects, people, lettering, or logos." \
inputs.image=https://assets.runware.ai/assets/inputs/d27d1fc1-a6a6-4443-a173-30daa06cc737.jpg{
"taskType": "imageInference",
"taskUUID": "bffe2442-109e-4a9d-9c74-a53f9296e85f",
"model": "bria:21@1",
"positivePrompt": "Edit the supplied documentary photograph into a finished annual-report hero image. Remove only the blue tarpaulin-wrapped cargo pallet and its orange ratchet straps from the lower-right foreground. Reconstruct continuous windswept snow where the pallet stood, matching the surrounding granular texture, shallow drift contours, blue-gray ambient color, low sunlight direction, and soft natural shadowing. Continue any partially obscured wind patterns and tire tracks plausibly through the filled area so there is no visible retouching seam. Preserve the exact camera position, crop, composition, research station architecture, building colors, tracked vehicle, scientist’s identity and pose, mountains, sky, lighting, shadows, and every unrelated detail. Maintain realistic editorial polar photography. Add no new objects, people, lettering, or logos.",
"inputs": {
"image": "https://assets.runware.ai/assets/inputs/d27d1fc1-a6a6-4443-a173-30daa06cc737.jpg"
}
}Response
{
"taskType": "imageInference",
"taskUUID": "bffe2442-109e-4a9d-9c74-a53f9296e85f",
"imageUUID": "97b8030a-5b08-4ec4-a9cc-9b243f5ae39f",
"imageURL": "https://im.runware.ai/image/os/a03d21/ws/3/ii/97b8030a-5b08-4ec4-a9cc-9b243f5ae39f.jpg",
"seed": 1576611414,
"cost": 0.04
}