a discussion on my ethical practices for AI generation

note that i can't write japanese, so i can't translate this. i've tried to write this document so that tools like DeepL will work well with it, but i can't make any guarantees. my apologies.

注:私は日本語が書けないので、この文書全体を翻訳することはできません。DeepLのようなツールがうまく動作するようにこの文書を書いてみましたが、保証することはできません。

i post AI-generated images. when an AI creator cares about the hobby, they will put significant time and effort into what they create. nevertheless, i find the idea of calling myself an "artist" to be egotistical. my lane is not with photographers or illustrators or 3D modellers. i'm a hobbyist. this is purely entertainment for me. i commission artists, in another persona. i'm related to a few. the fact that my hobby is used by corporations to avoid paying artists genuinely disgusts me. for this reason, among others (mostly related to the particular content i generate) i use a separate persona for posting it. i don't want to be associated with it, and i want to be able to swiftly and irreversibly burn it all down should i decide that it's unconscionable to continue having it out there.

i also take great care to reduce the amount of harm i can potentially cause by posting these images. i'm proud of the images i post specifically because instead of using tactics that present further ethical problems, i just put a bit more effort in. i believe that if other people acted similarly, it would improve the relationship between artists and the AI community.

i'd like to discuss a bit of what i believe and what i do in this document, as well as how you can hold me accountable for sticking to my own principles.


regarding training data:

i don't believe use as training data necessarily counts as copyright infringement, because:

  • it is my educated belief (supported by case law in many regions,) that copyright infringement requires reproduction, and
  • AI models do not contain their training data, and are not designed to reproduce it.

nevertheless, i believe that people should be able to have their work excluded from public AI training data. i think to act otherwise would simply be mean-spirited (and in some cases it may even potentially violate the GDPR.
I also believe that models which allow using them to create commercial works should only use data that they have paid for a license to use.

I don't think that non-compensated opt-in makes sense in any case. public, non-commercial models are a public good, and using public data for a public good feels fair. however, this is a grey area, and i'm okay that people disagree with me about it.

my practices

generating:

  1. i use non-commercial models almost exclusively, and prefer models which forbid using them for profit, such as Pony Diffusion.
    • the only exception is NovelAI, as they are compliant with opt-out requests and provide unique techniques and quality.
    • i actually never use any other paid services even in personal work. i don't think they're a good idea.
  2. image generation involves a few techniques which take an existing image as an input, such as image2image, FABRIC, ControlNet (and its descendant T2I-Adapter), and IPAdapter. i never use images i do not have the rights or permission to use as input for any of these techniques.
    • if these techniques are used, they are either used as post-processing on a generated image, or using an image I created using assets where:
      • i have the rights to the asset (i created it or commissioned it with full rights),
      • i have a license to use it (i purchased it, commissioned it with license rights, or its published license permits use as reference), or
      • use of the asset could not possibly result in accidental infringement of the asset creator's rights (such as blank skeletons or polygons in 3D art software. it's usually this one.)
  3. i never use artist names as part of a prompt in any posted image, and distance myself from models that require this practice for good results. (yes, i do know how CLIP attention works and understand that the likelihood of copying an artist's work is minimal even when their name is in the prompt. this is a choice i make out of respect, and self-preservation, as:)
  4. i do not clip the metadata from generations, and i have metadata embedding enabled in my tools, for transparency and accountability on the above points. see "reading metadata" below.

posting:

  1. i will never open a patreon, skeb, fantia, fanbox, or other subscription service. i do not want money for my generations.
  2. if someone asks to pay me to generate them an image, i will decline, and direct them to an artist i admire.
    • when i generate images for people, i always get their permission first, and do so for free.
  3. if someone shows me that an image I post has infringed on their copyright, i will take it down.
    • however, i reserve the right to disagree, in the event an image only bears a slight resemblance, or only resembles a small part of the image. i intend to be kind, i do not intend to be a pushover.
    • complying with a complaint does not mean that i did it on purpose, or that i have broken my policies as listed above. unfortunately, i must ask you to trust me on this.
    • if i do not answer a complaint, please don't assume i am choosing to ignore it. i am severely mentally ill, and it is very likely that i will forget about this identity and this Pixiv account a week after i write this document. if i disagree with a complaint, i will tell you, and we can discuss it.
  4. i always include the name of the models i use for any posts, as well as any LoRAs that were used. this is so that if i receive a complaint on point 3 that i have complied with, i can direct them to the creator of that resource. (i do not care how this makes me look to that resource creator; i think it's the community's responsibility to respect opt-out. and if being checked because your LoRA is overfitting makes you upset, that's your own problem. avoiding overfitting is essential to the goals of artificial intelligence. i don't think that's up for debate.)

reading metadata

this segment is less about what I do personally, and more about a couple of the tools I use, so that if i mess something up, you can hold me accountable.
in service of point 4 of "generating", you can read the metadata on images I post using Pincel's metadata reader.

  • Pincel works well with images generated by novelAI and stable-diffusion-webui (and forks, like sd-webui-forge which i use). however, while they claim not to store images, there's no way to know this for sure. unfortunately i have yet to find a local app that works as well; simple EXIF readers seem to be hit or miss.

if an image i post has no metadata, that means i screwed something up, and i want you to tell me.

NovelAI and sd-webui-forge present metadata differently. here's what you should know about both. please note that none of these guarantee a creator is engaging in foul play. please don't use these as your only evidence.

NovelAI:

  • NovelAI images have a "Software" key, with the value "NovelAI".
  • NovelAI supports ControlNet and a form of image reference they call "Vibe Transfer".
  • the following parameters pertain to ControlNet: "controlnet_strength": 1.0, "controlnet_model": null
    • if an image is using a reference image for ControlNet, "controlnet_model" will not be "null". it's possible that "controlnet_strength" can be set to something different while ControlNet is disabled in NovelAI (for instance if it's enabled, tweaked and then disabled.) i haven't checked.
  • the following parameters pertain to Vibe Transfer: "reference_information_extracted_multiple": [], "reference_strength_multiple": []
    • if an image is using a reference image for Vibe Transfer, the square brackets will have numbers in them. as above, it's possible that these simply aren't reset if Vibe Transfer is enabled, these parameters tweaked, and then Vibe Transfer disabled again, before generating.

sd-webui-forge:

  • sd-webui will put all of its parameters in a big pile. here's the important ones.
    • "Model hash": sd-webui stores a hash (a unique identifier of the model file) in AutoV2 format (as of April 2024.) if a model has been altered (continued training or renamed) then its hash won't match the model's CivitAI page. this does not necessarily mean that the creator of the image has done anything nefarious. renaming models for brevity is somewhat common. if searching for an AutoV2 hash on CivitAI returns a completely different model than the one listed in the "Model:" field, then it's possible, not guaranteed, that the creator was trying to make it look like the image used a different model than it did. if the AutoV2 doesn't return any results, it's possible that the model is private, deleted or modified.
    • "Lora hashes": Ditto, but for LoRA models (sidecar models that fill in gaps in an image generation model's knowledge.)
    • "ControlNet 0", etc: when these are present, ControlNet was checked on in sd-webui. however, sd-webui can't store information about any reference images used. if an image resembles one that is protected by copyright, however, you can tell how likely it is that the image was used as an input by the ControlNet modules the image uses. some keywords:
      • (note that when I say "safe", what I mean is "unlikely to accidentally reproduce the input.)
      • "IPAdapter": a technique for using an image as a prompt. HOWEVER, unlike img2img, IPAdapter cannot recreate the input image, no matter how strongly it is influencing the output. it processes the input image in a completely different way. i can't even intentionally get IPAdapter to recreate anything specific about an input image. it's generally very safe.
      • "Reference, Revision": similar to IPAdapter, this is likely what NovelAI's "Vibe Transfer" is doing. I'm not sure how they technically differ, but from experience, they're slightly less safe than IPAdapter, but much safer than any of the below.
      • "OpenPose": analyzes the pose of any people in the input image and represents them as featureless stick figures. this is usually used on reference poses from public repositories.
      • "Depth, NormalMap, MLSD": these are riskier. they turn the input image into depth maps indicating the general composition of an image.
      • Segmentation: Similar to the above, but less representative of three-dimensional object placement, as it just outlines parts of an image based on how likely it is that it's part of something the model wants to treat differently. overall neither more nor less safe.
      • "Canny, Lineart, Sketch, Scribble": these create lineart representations of the input image. using copyrighted images for this is a bad idea, as it is easiest to tell when these modules are used. they don't mean copyright infringement on their own, but if used sloppily (or automatically), it is possible to accidentally commit infringement. "Scribble" is the safest, as it's meant to infer from things like MS Paint drawings. using that with a copyrighted image isn't going to produce good results.
      • "T2I Adapter": these modules are more lightweight versions of their ControlNet counterparts.
      • "PhotoMaker, Instant-ID": these take a picture of a face, either a drawing or photograph, and produces... math that roughly indicates an "identity" (note it doesn't "identify" people, "identity" is a loose term.) It then tries to make the generated image be of that person. basically if you put a person in here as an input, it will try to make a picture of that person. I don't like these at all, I think they present a major abuse risk. It's possible that the input image is a drawing or 3D render, or that the creator of a generated image obtained consent to use the person's image, but if you suspect that someone's image has been used abusively, this will tell you.
      • "Blur, Shuffle, Tile": these are massively destructive modules that you don't need to worry about. Blur is maybe a little unsafe. But if an image uses these modules, you can be pretty certain that any resemblance to a copyrighted image is a coincidence.

i think i've been typing for long enough. thank you for reading. message me on pixiv if you have any questions.

Edit
Pub: 28 Apr 2024 19:36 UTC
Views: 100