Other samples:

Android: https://github.com/nipunru/nsfw-detector-android

Flutter (BSD-3): https://github.com/ahsanalidev/flutter_nsfw

Keras MIT https://github.com/bhky/opennsfw2

I feel it’s a good idea for those building native clients for Lemmy implement projects like these to run offline inferences on feed content for the time-being. To cover content that are not marked NSFW and should be.

What does everyone think, about enforcing further censorship, especially in open-source clients, on the client side as long as it pertains to this type of content?

Edit:

There’s also this, but it takes a bit more effort to implement properly. And provides a hash that can be used for reporting needs. https://github.com/AsuharietYgvar/AppleNeuralHash2ONNX .

Python package MIT: https://pypi.org/project/opennsfw-standalone/

  • BrikoX@lemmy.zip
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    1 year ago

    It’s not by OSD definition. Having code source available =/ open source.

    And most Lemmy clients I have seen use GPL or AGPL licences, so they couldn’t use code licensed under BSD.

    Edit: This is incorrect. I confused it with BSD-4. My bad.

    • wildbus8979@sh.itjust.works
      link
      fedilink
      arrow-up
      19
      ·
      edit-2
      1 year ago

      What in the BSD-3 license goes against OSD exactly?

      You are clearly confused. The BSD-3 isn’t only “having the source”, it gives you the right to package, distribute, and modify the source code at will. What it doesn’t have compared to the GPL is protections from someone not sharing their modifications (for example when used in closed source products). In that sense it is more “freedom” than the GPL, but that freedom comes with a cost to the community, and in a sense the freedom afforded to the original author.

      It is literally approved by the OSI itself: https://opensource.org/license/bsd-3-clause/

      And yes, BSD-3 libraries are compatible with the GPL: https://fossa.com/blog/open-source-software-licenses-101-bsd-3-clause-license/

      Is there a confidently wrong community on Lemmy yet?

      • BrikoX@lemmy.zip
        link
        fedilink
        English
        arrow-up
        3
        ·
        edit-2
        1 year ago

        You are correct. I’m sorry, I confused it with BSD-4 as that used to be the 3rd clause. I updated my post and thank you for calling me out.

        • wildbus8979@sh.itjust.works
          link
          fedilink
          arrow-up
          2
          ·
          edit-2
          1 year ago

          That’s still wrong though. The BSD-4 is literally FSF approved. It’s just not GPL compatible and not technically OSI approved. But only on a technicality. The only difference between BSD-3 (BSD New) and BSD-4 (BSD Old) is the advertisement clause. It has nothing to do with redistribution, packaging, or modification of the code. OSI doesn’t agree with the advertisement clause so it’s not officially approved, doesn’t mean it isn’t Open Source.

          • BrikoX@lemmy.zip
            link
            fedilink
            English
            arrow-up
            2
            ·
            1 year ago

            That’s where I disagree. While it’s true that the only difference is the GPL complience it’s definetely against the spirit of open source and OSD. So it is source available license, but calling it open source is a stretch. The simple fact that it renders it unsable for GPL projects go against what open source stands for.

            • wildbus8979@sh.itjust.works
              link
              fedilink
              arrow-up
              1
              ·
              edit-2
              1 year ago

              True as that maybe be, your original statement “BSD-4” is not open source is still completely wrong, plain and simple. BSD-4 is not just having access to the source, it gives you significant rights over the source as well. The incompatibility lie with a technicality, an inconvenient one, but a technicality nontheless. Even the FSF agrees.

    • pexavc@lemmy.worldOP
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      1 year ago

      good point, but was just providing samples. I myself would gladly create a simple package for inferencing using a properly licensed model file.

      Edit: Linked a MIT keras model for instance, also thanks for the tip didn’t know about GPL / BSD relationship