Worried about LLM-written modules

None of that is contradictory. Markets are pretty efficient at solving this sort of issue, so long as you don’t privatise the profit and socialise the damage.

Is it really necessary everyone to clearly state his own opinion on the global world view for every topic?
This is (hopefully) about photography and darktable…

2 Likes

Yeah, honestly I challenge anyone here to calculate their carbon footprint for the year and compare it with mine. I’m not sure there will be many winners (probably some, but I’m definitely in the top of the leaderboard for that).

I consume almost nothing (typically I’ve been wearing the same clothes for years, except when someone gives them to me), I travel very, very little (mainly for family reasons), so I hardly ever fly and rarely take the train. I don’t have a television screen at home, I don’t watch TV series, and I watch very few movies. And when I’m listening to music, it’s mp3 files, not a fucking music streaming service where you download the same music file everytime you listen to it. I have a laptop without even an extra screen. And no other technological devices that consume anything (oh yes, an internet box). I’ve had the same cell phone for almost 10 years and I use it very rarely. I’m just not interested by new fancy technologies in general.
I consider myself as the ultimate “anti-consumer”, and I’m quite proud of it.

So people who come and give me lessons about how I’m destroying the planet by writing a few prompts to LLMs should really do well to look at their own carbon footprint before opening their mouths.

Calculating environmental impact is a serious and difficult task, and it must take into account all of an individual’s activities. It certainly cannot be done by guesswork without knowing the details of the lives of the people being singled out.

So, please, this kind of sentence is useless.
You know absolutely nothing about my relationship with ecology and how I organize my life to avoid overconsumption. Believe me, the few LLM requests I make during the year are more than offset by the rest of my lifestyle. More generally, you know absolutely nothing about the lifestyle of the people you are trying to convince with this kind of statement.
That’s really just talking for the sake of talking.

4 Likes

So to get back to the op:

The current devs and maintainers do use/want to use bots to help code. An outright ban on bots seems untenable. If bots are a deal-breaker…

Prior to the bots, there was a barrier to entry to creating code merely because it took some knowledge and time to produce anything. That is going away (or already gone). The current devs and maintainers do not have the time/bandwidth/patience (whatever word is preferable) to wade through a potentially large influx of contributions which, previously, would never made it over the fence.

This thread is about how can we create new barriers to entry. Or if we even need to.

Many seem to agree that good code is good code regardless of who/what makes it. Of course that requires looking at all code to see if it is good. This path is a “No need to create barriers” approach. All we can do is hope that people dont actually try and put forward new stuff/fixes who are copy pasting from a bot.

A tack on question is how we can ameliorate the repercussions of creators releasing work in side-channels/forks which did not get accepted in the main code. Inevitably, an end user will come and complain on git or pixls about some bug, only to find out it is in “Jonny’s SuperAwsum darktable mod” that is spammed on reddit. Some plan for dealing with that in advance would be smart.

1 Like

Definitely not a useless sentence. In my opinion this is the biggest flaw of poorly regulated capitalism we live in. We (as consumers) do not pay the real price of almost anything. Services and products are “subsidized” by environment, cheap workforce in third world countries etc.

If we would pay real price of using LLMs I don’t know if this would be true anymore. Regarding flying I’m quite sure it wouldn’t be.

Not even slightly, but when people post views on the impacts of the thread subject, those views should be open to question and the implications will be discussed.

When did that come up? Was it actually said, or did you draw the assumption because people were talking about footprint?

Thought so. You put words in my head and got angry about what I didn’t say. I’m talking about the principles and the systems here, not the specifics of your usage.

Folks, AI is a huge topic. Let’s try and get back to the impact of LLM use on darktable. The maintainers, who bear the grunt of the work, don’t object to it. Let’s see if we can move forward with plans to dealing with the current reality and what can be foreseen.

If we cannot get back to that, and to civil discussion, I’ll ask the mods to close this topic.

6 Likes
  1. Policy Suggestion: Developers (especially new) are required to disclose whether they have used an LLM / AI to create a significantly portion of their code. Specifically if they are contributing an algorithm.

  2. Idea: I am not well versed into all the tooling of C. But in many other language stacks it is rather easy to have (automated ) unit tests. I think it would be a good idea that for new modules there are also automated test to verify the working of the module. This really helps the quality and reliability of the code base in the long run and it tackles bugs before they make it into a release.

  3. I am wondering if we could have some kind in of ‘incubation’ period for new modules and developers that have not significantly contributed before. I am not sure if we can ask people to be around to maintain their module for 1 or 2 years at least, because it is FOSS. But maybe a plugin system can help here. These modules are incubating as plugins before promotion to code.

Since so many people are using bots, there seems little point in mandating people note the usage. We can just assume that all submissions do, at some point or other. That is ok because quality is all that matters

I have a radical idea:

People can submit all they want, and the darktable team can engage with whatever catches their eye and fits the time, bandwidth, motivation they currently have. Fixes and modules should contain some explanation of how they work without anyone needing to bother looking at the code. If you dont do that, or it sounds like ‘slop’, the dev/maintainer can choose to ignore it and devote their energy to other things. If/when the major time intensive (or just interesting) projects are done maybe they will circle back to those submissions. Or maybe not. shrug

This, I think, is the path of maximal freedom. Everyone is free to submit and the team is free to engage or not. Contributors/users should modulate their expectations, and the team should not feel any pressure to wade through a ton of (potentially) crap.

1 Like

no maintainer is interested in quantity - they are interested in qualitiy. If AI helps to provide quality, than thats completely ok.
A handcrafted module of lousy quality or adding just bloat functions won’t be more appreciated than a completely AI generated module adding a valuable feature.
And to be honest: it’s easier to generate useless stuff with AI than instruct an LLM to give a convincing result. Thats the skill a developer needs: having an imagination, whats needed to provide quality …

Most important skill of a FOSS maintainer ist the ability to say “no” to something not valuable for the project scope - even a developer spent a lot of effort on his contribution. It’s not about “generic barriers” - just quality and scope are barriers.

“everybodys darling is everybodys fool” - is also valid for maintainers :wink:

2 Likes

This is not a good idea. You need juniors or people with little understanding to still be able to contribute even if in small bits, so they learn. Without this learning process, soon enough only LLM generated code will pass this bar

This is not a good idea. This can leed to 100s pull requests. The devs will be so overwhelmed and even just quickly looking what is attractive is not an option.

What you are basically suggesting: order everything on Amazon and have it to delivered to you so you pick the right USB-C cable.

1 Like

No. The apt analogy would be knowing that I need a new usb cable, am interested in getting a new lens, and being curious about what new gadets are available for my golf obsession. SO, I go to amazon and limit things to what I am looking for. Then I read product descriptions of things that catch my eye, before I dig further into the listing to find out if the specs might actually fit my needs.

THEN, maybe, I buy one or two things.

I have full faith in the capability of our team to know how to search and evaulate.

Additionally, we already exist in a context in which we could have 100’s of PRs for each and every issue. Its almost like there already exist informal processes that inhibit these things.

EDIT: I am also not averse to marking PRs as closed if nobody picks them up in a shorter time frame than we already have

No, that is not a good comparison. Because the dev’s don’t (always) know by fore hand what they are looking for. There are many really gems hidden in the PR’s but with so many PR’s is it simply not feasible.

Can I ask, are you a developer yourself?

Ah yes…those hidden gems. Which nobody has heard of or asked for or are interested in.

Sorry, this sarcasm of you brings us nowhere.

One point that the topic starter made was: how do we prevent the core-dev from being overloaded. And your idea is: just dump everything on them, and what seems interesting to them let them process it.

But if more pull requests come in - and with LLMs that is far from unthinkable - than they handle then there is no way to process them and the development of darktable will come to grinding halt.

Hello @martinus

But if more pull requests come in - and with LLMs that is far from unthinkable - than they handle then there is no way to process them and the development of darktable will come to grinding halt.

With all due respect but this is pure speculation…
Of course, It might be true or… completely wrong

Just an example: Digikam is an open source software which is discussed on this same forum. Its last vesion has just been released: 9.0 version [1]
To make it short, if you take a look at their new features there are plenty of them on top of many bug-fixings of all sorts.
Digikam developers have been using AI since some versions (Ai tagging, Face recognition ec).
To my knowledge, there are “only” 2 long-term developers for this project and they work on this software only on their limited free-time.

Please, do not get me wrong, I am not implying AI is always beneficial!
My opinion is that is a tool and as such it may be good or bad.
The end result depends on the use you make of it.
Most of all, I am 100% fully confident that darktable developers will be smart enough to handle it (in case they decide to adopt it OR accept pull-request where AI has been used…)

[1] digiKam - digiKam 9.0.0 is released

the whole discussion doesn’t bring “us” somewhere.
darktable is properly maintained and each module needs a convincing value proposition to get merged. Regardless of the tools used to code it.
When a pull request is merged, it is not done in recognition of the spent effort, but only if the quality and consistency with the scope is appropriate.

“we” don’t need to prevent core devs from overload - they are grown-ups who know how to manage their time. And if a pr doesn’t seems to be valuable on a first view, then they simply don’t spend further effort on this…

4 Likes

Well said. Seems to me like a storm ina teacup brought about by several recent proposed modules. It’s not as if an army of bots from obscure destinations are swamping DT with modules.
This is a discussion forum where these new modules get posted and criticised and tweaked long before being considered for DT. I can’t be the only one who gets excited at the posting of a new module? If it works, isn’t a duplicate and brings a benefit then that’s fine by me.
Access to llm brings new ideas to DT a lot quicker than normal coding. Is this a good thing or not?
DT would be in danger of stagnating if the use of LLM was banned.

1 Like

To me, and I am nobody, this thread has had the value of clarifying the devs view on bots. People who are not comfortable being party to/complicit with/however-you -want-to-articulate-it the expansion of bots can now make informed choices about how they spend their attention. That is a good thing!!

I hope that if the devs ever decide to physically limit who can create a PR (which is the only way to prevent ‘1000’s of PRs’ from being ya know…made), they will be upfront about that choice, as it might bear on others choice to contribute/use darktable.

It is not really a user, nor contributor, issue to solve imo. But I do not fear stagnation nor a lack of market share growth. shrug