mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2026-09-20 18:13:37 +00:00
Some checks are pending
Build and Release / Determine run mode (push) Waiting to run
Build and Release / Read metadata (push) Blocked by required conditions
Build and Release / Sync Flatpak repo (push) Blocked by required conditions
Build and Release / Collect Flatpak artifacts (push) Blocked by required conditions
Build and Release / Verify (push) Waiting to run
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-apple-darwin, osx-arm64, macos-latest, aarch64-apple-darwin, dmg,app,updater, dmg) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-pc-windows-msvc.exe, win-arm64, windows-latest, aarch64-pc-windows-msvc, nsis,updater, nsis) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-unknown-linux-gnu, linux-arm64, ubuntu-22.04-arm, aarch64-unknown-linux-gnu, appimage,updater, appimage) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-apple-darwin, osx-x64, macos-latest, x86_64-apple-darwin, dmg,app,updater, dmg) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-pc-windows-msvc.exe, win-x64, windows-latest, x86_64-pc-windows-msvc, nsis,updater, nsis) (push) Blocked by required conditions
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-unknown-linux-gnu, linux-x64, ubuntu-22.04, x86_64-unknown-linux-gnu, appimage,updater, appimage) (push) Blocked by required conditions
Build and Release / Prepare & create release (push) Blocked by required conditions
Build and Release / Publish release (push) Blocked by required conditions
46 lines
2.2 KiB
C#
46 lines
2.2 KiB
C#
using AIStudio.Provider;
|
|
|
|
namespace AIStudio.Models.Kinds;
|
|
|
|
/// <summary>
|
|
/// The models which draw rather than write.
|
|
/// </summary>
|
|
/// <remarks>
|
|
/// Google names its image models after the chat model they grew out of and appends the word:
|
|
/// gemini-3-pro-image, gemini-3.1-flash-image, gemini-2.5-flash-image. Read as a plain substring
|
|
/// that word is far too greedy -- it sits inside "imagenet" and "reimagined" as well, and a chat
|
|
/// model carrying such a word would disappear from the user's list. As a name part it says what it
|
|
/// is meant to say, and it covers OpenAI's gpt-image-1 along the way, which is why that name is not
|
|
/// stated a second time.
|
|
/// </remarks>
|
|
public sealed class ImageGenerationModelsFamily : ModelFamily
|
|
{
|
|
/// <inheritdoc />
|
|
public override ModelVendor Vendor => ModelVendor.UNKNOWN;
|
|
|
|
/// <inheritdoc />
|
|
public override ModelSource Source => new("https://huggingface.co/models?pipeline_tag=text-to-image", new DateOnly(2026, 9, 12), "Ported from the image generation markers of Provider/ModelKindExtensions.cs. Imagen and the Gemini image models state it in their own families as well, where the capabilities stand next to it. Nano Banana came later, off Google's own catalog at https://generativelanguage.googleapis.com/v1beta/openai/models, read on 2026-09-19.");
|
|
|
|
/// <inheritdoc />
|
|
protected override void Declare(ModelFamilyBuilder builder)
|
|
{
|
|
builder.Modifier("flux").AsSubstring().Kind(ModelKind.IMAGE_GENERATION);
|
|
|
|
builder.Modifier("stable-diffusion").AsSubstring().Inherits();
|
|
|
|
builder.Modifier("sdxl").AsSubstring().Inherits();
|
|
|
|
builder.Modifier("dall-e").AsSubstring().Inherits();
|
|
|
|
builder.Modifier("midjourney").AsSubstring().Inherits();
|
|
|
|
builder.Modifier("image").AsSegment().Inherits();
|
|
|
|
// The other half of Grok Imagine, which the video rule steps aside for:
|
|
builder.Modifier("grok-imagine").AsSegment().NotContains("video").Inherits();
|
|
|
|
// Google's codename for the image model it serves next to Gemini, and the one name in its
|
|
// catalog which says nothing about drawing: nano-banana-pro-preview.
|
|
builder.Modifier("nano-banana").AsSegment().Inherits();
|
|
}
|
|
} |