There have been multiple accounts created with the sole purpose of posting advertisement posts or replies containing unsolicited advertising.

Accounts which solely post advertisements, or persistently post them may be terminated.

programmer_humor

This magazine is from a federated server and may be incomplete. Browse more on the original instance.

Zuberi , in He revealed the secrets !
@Zuberi@lemmy.dbzer0.com avatar

👀

MsPenguinette , in He revealed the secrets !

We’ve been spending decades curating our perception by management in order to make sure we all have jobs. He’s gonna ruin the whole industry if we don’t shut him the hell up

twig , in We'll refactor this next year anyways

There is nothing more permanent than a temporary solution that works

dan ,
@dan@upvote.au avatar

In my first month at my current employer, I added some temporary code with a TODO to fix it properly. That was 11 years ago in 2013, and the same TODO is still there today, and these days it’d be significantly harder to do it. 😂

Beanie ,

If it gets comitted to master, TODO means never do.

fckreddit , in He revealed the secrets !

Ok, the jig is up. We are exposed. Better pack our bags and get out while we can.

armchair_progamer , in We'll refactor this next year anyways

<span style="font-weight:bold;color:#a71d5d;">public class </span><span style="color:#0086b3;">AbstractBeanVisitorStrategyFactoryBuilderIteratorAdapterProviderObserverGeneratorDecorator </span><span style="color:#323232;">{
</span><span style="color:#323232;">    </span><span style="font-style:italic;color:#969896;">// boilerplate goes here
</span><span style="color:#323232;">}
</span>
wise ,
@wise@feddit.uk avatar

Why do you have access to my project??

swordsmanluke ,

… And can you fix it?

bort ,

============ Top 5: =============== HasThisTypePatternTriedToSneakInSomeGenericOrParameterizedTypePatternMatchingStuffAnywhereVisitor: 97
AbstractAnnotationConfigDispatcherServletInitializer: 52
AbstractInterruptibleBatchPreparedStatementSetter: 49
AbstractInterceptorDrivenBeanDefinitionDecorator: 48
GenericInterfaceDrivenDependencyInjectionAspect: 47

============ Factories: ===============
DefaultListableBeanFactory$DependencyObjectFactory
ObjectFactoryCreatingFactoryBean
SimpleBeanFactoryAwareAspectInstanceFactory
SingletonBeanFactoryLocator$BeanFactoryGroup
ConnectionFactoryUtils$ResourceFactory
DefaultListableBeanFactory$DependencyProviderFactory
ObjectFactoryCreatingFactoryBean$TargetBeanObjectFactory
JndiObjectFactoryBean$JndiObjectProxyFactory
DefaultListableBeanFactory$SerializedBeanFactoryReference
AbstractEntityManagerFactoryBean$SerializedEntityManagerFactoryBeanReference
BeanFactoryAspectInstanceFactory
SingletonBeanFactoryLocator$CountingBeanFactoryReference
TransactionAwarePersistenceManagerFactoryProxy$PersistenceManagerFactoryInvocationHandler
AbstractEntityManagerFactoryBean$ManagedEntityManagerFactoryInvocationHandler

gist.github.com/thom-nic/2c74ed4075569da0f80b

Serinus ,

Okay, here we go. I’m going to spit out some bullshit and home someone corrects me if I’m wrong. I’ve looked for some explanations and this is what I’ve gotten.

Are you ready?

The Factory Pattern.

My understanding is that the purpose is a function to return any of several types of objects, but a specific type, not just an interface or whatever they might all inherit from.

I think most languages now have something like a “dynamic” keyword to solve this issue by allowing determination of the type only at runtime. (To be used with extreme caution.)

But most of the time I see the Factory pattern, it’s used unnecessarily and can only return one specific type. Why they would use a Factory pattern here and not just a plain old constructor confounds me.

Am I off base?

FizzyOrange ,

Yeah most uses of the factory pattern are unnecessary and it’s mild code smell IMO. If your factory only returns one type you should definitely just use that type’s constructor.

oktux ,

Factory pattern can return a mock type for testing or a production type, as needed, which makes it possible to unit test the code that uses the produced object.

This quick guide explains it well. Then it improves on it by explaining dependency injection.

github.com/google/guice/wiki/Motivation

wise_pancake , in We'll refactor this next year anyways

This is so true.

Even if you do design clean modular code and document it, you’re getting a question a year from now about how it works, or someone just duct tapes on top of it.

BakedCatboy ,

I’ve even experienced this in the 3D printing community, where I design a highly parametric model and put lots of effort into making all of the major dimensions and qualities parameterized and dynamically adjustable, with lots of bounds checking and value clamping, with all the parameters at the top of my scad file with comments explaining what each variable does.

And then someone comes along to remix my model, says I don’t want to install openscad, and just scales the entire output stl to change the dimensions, squashing all the features of the model in the process (instead of having the size gracefully adjust with all the features moving around to account), and leaving anybody starting from their work with a hard to remix mesh with no parameters.

amirul ,

Really? The opposite is true for me.

Working with devs who aren’t familiar with design patterns, introducing design patterns by simply implementing them (in a new project) allows it easier for the devs to follow the implementation as examples, even though they aren’t necessarily familiar with the design pattern concepts.

At least they can observe the patterns and replicate the patterns elsewhere.

adespoton ,

At least they can observe the patterns….

Bless your heart.

mokus ,

In my experience, this often doesn’t happen. So many developers are either inexperienced or cowboys, and there’s nothing inherently wrong with either. But at places where projects are small and numerous, teams often end up with nothing but a combination of the two.

As one of our office’s engineering “fixers”, I’ve taken over maintenance of several such projects. They usually have shattered remnants of code taken from other projects, open source libraries, internal libraries, stack overflow, and so on. Whole source files copied into the project, modified in ways that introduce impressive new failure cases while failing to add new functionality, and used in ways that completely ignore the features natively implemented in that code while those same features are bodged in as barely-working piles of if statements, balanced on a knife’s edge to avoid triggering the failure modes added by the project’s modifications of the copied code. I’m usually able to purge 20-30k lines of code from such projects in the first month, simultaneously closing multiple outstanding issues the PM had been led to believe were intractable.

That probably sounds like arrogance and/or shitting on everybody else’s work but it’s just reality at many workplaces due to a pace driven by unreasonable expectations from management. I just happen to be the person here that ends up sifting through the wreckage when a project reaches the inevitable osteoporosis phase, because of a natural disposition for reverse engineering. It would be great to escape for this and other reasons, as far as I can tell, most places aren’t that different.

FizzyOrange ,

This can work for junior devs who aren’t stuck in their ways. Unfortunately there are too many “senior” devs who are happy making crap. It’s hard to fight them constantly to do things properly (e.g. write actual commit messages rather than just “Fix ”) so using tools like linters where possible is definitely a big improvement.

FMT99 ,

Or business decides all specs and design decisions that were made last quarter were actually garbage and yes we do want to be able to manually override every step of the carefully designed state machine. We’d like to be able to manually change all calculated sales data, but also the data needs to remain in a consistent state at all times. Oh and while you’re there, we decided the commission calculations will use a different system from now on. We expect it to be online by the end of the week, thanks.

SolarMech ,

The closest I got to this kind of job., is the closest I got to running away. I’m much happier elsewhere now.

JayDee ,

The ‘document’ part also seems to be insanely hit-or-miss from my amateur experience. Self-documenting design/code is… well, not. Auto-generated documentation is also usually just as bad IMO. Producing good documentation really is a skill in and of itself.

Also small personal opinion: If your abstraction layers or algorithms are based off a technical concept, you should probably attribute that concept and provide links to further research, to eliminate future ambiguity or in case your reader lacks that background. Future you will probably thank you and anyone like me who immediately gets lost in jargon soup will also be thankful.

python , in Junior Dev VS Senior Dev

My homeoffice setup is right next to a window, so it’s too bright for dark mode during the summer. So I work in light mode from about April-September and in dark mode for the rest of the year

jadedwench , in How IT People See Each Other

Only people I ever have a problem with are Project Managers. I have had way more bad experiences with utterly psychotic PMs than PMs who are actually good at their job. Everybody else is super cool, but I swear all of you are alcoholics. At least Sales pays for the drinks?

Raiderkev ,

This tracks, my new boss used to be a PM, and she’s God awful.

sheogorath ,

A good PM is rare because as soon as you get one, they’ll get poached within a few months.

zaphod ,
@zaphod@lemmy.ca avatar

Or burned out because they get pulled into every project that’s gone off the rails.

sheogorath ,

Ohhh that’s me right now. I work in a consultancy and I only got assigned to projects that are on fire. It’s almost 24 months without a gap between projects. Help me ಥ⁠_⁠ಥ

jadedwench , (edited )

Put your foot down, establish boundaries, and take a well deserved vacation with 0 communication to work while on it. Otherwise, I would start looking somewhere else. Your health is more important.

Edit: Also, hit them a few times with your Wabbajack for me.

CosmicCleric ,
@CosmicCleric@lemmy.world avatar

Help me ಥ⁠_⁠ಥ

“For those of us who are about to die, we salute you!”

I’m hoping you’re not just an employee of that consultancy, but a contractor instead, and that you charge a good hourly rate, considering the situation you’re in.

masterspace , (edited )

Yup, before I went into tech I worked at an architecture firm and we had this one absolutely amazing PM from Australia who was smart, a clear communicator, and so much more on top of his shit then any other PM, and he burnt out and quit and moved back to Australia after like 2 years because they just kept throwing him into the absolute biggest messes since he was clearly the best at cleaning them up.

He’s also the one who I got drunk at an airport bar with and just repeatedly urged me to leave the company and go somewhere well run … there were pretty clear signs he wasn’t enjoying his assignments.

gregorum ,

Your failure to provide a reliable source for your claims is not my problem.

If you cannot provide a reliable source of your claims, your claim will be dismissed.

Mikufan , in We'll refactor this next year anyways

Why maintain what’s perfect?

Anticorp ,

I have a website that I haven’t touched in 14 years and it still makes money. Build it right the first time.

SolarMech ,

Never touched it? A website? What about updating frameworks for security issues?

Anticorp ,

Fuck all that noise.

Conyak , in We'll refactor this next year anyways

In my experience it doesn’t matter. You have to regularly refactor your code to keep up with new features. The more often you can make time to do it the easier it is.

SolarMech ,

This, to a point.

Other things help :

  • Unit test to help catch regressions. If you are confident in your test catching a good portion of bugs from refactoring, at least you feel confident refactoring. Worst case, at least you ensured your code is testable. There is nothing worse than refactoring untestable code.
  • Self-documenting code and when it fails to self-document, comments or refer to a wiki page.
ricdeh , in My C is a little rusty
@ricdeh@lemmy.world avatar

C is the hardware language N°1 of the high-level languages. If you actually want to know and control what happens in the machine, you write in C. Rust, C++ and all the other abstractions are for people who do not understand how computers and computer memory work.

Edit: grammar

onlinepersona ,

EL MAO

The obvious bait

CC BY-NC-SA 4.0

sus ,

even if you write in assembly, you still may not actually understand what is going on in the machine since processors convert the instructions to “micro-ops”, and let’s not forget hardware bugs like those caused by speculative execution

firelizzard ,
@firelizzard@programming.dev avatar

I’ve written programs in C. I’ve written programs in assembly, for x86 and for microcontrollers. I’ve designed digital logic and programmed it into an FPGA. I’ve built digital logic circuits with transistors.

I’ll still take Go over C any day of the week. If I’m doing embedded, I’ll use TinyGo.

crispy_kilt ,

Try Rust

AnUnusualRelic ,
@AnUnusualRelic@lemmy.world avatar

Have you tried putting some WD40 on it?

AMDIsOurLord ,

Not everyone is on the Rust bandwagon

firelizzard ,
@firelizzard@programming.dev avatar

Why? I see no reason to go through the hassle of learning yet another language when Go serves my purposes perfectly and I’m happy with it.

crispy_kilt ,

Same reason as learning anything. It makes you better at what you do and broadens your horizons.

firelizzard ,
@firelizzard@programming.dev avatar

I’d rather spend my free time doing something I enjoy

crispy_kilt ,

You don’t enjoy learning?

firelizzard ,
@firelizzard@programming.dev avatar

Programming languages are tools. I couldn’t care less about learning a new tool just for the sake of learning. My interest in learning tools is exclusively practical - if they help me do my work better.

I find functional languages interesting, but that’s because I find the underlying theory interesting and worth learning for its own sake, not because I actually care about the specific language it’s written in. Even then these days I’d rather learn about woodworking (which is currently my main hobby) than a programming paradigm I’m probably never going to use.

FizzyOrange ,

This is a misconception that’s common among beginner C programmers. They think C is high level assembly and don’t understand the kinds of optimisations modern compilers make. And they think they’re hardcore and don’t make mistakes.

Hope you figure it out eventually.

frezik ,

CPUs are for people who don’t know how to melt their own sand into transistors.

Sand is for people who don’t know how to create their own silicon from hydrogen and a neutron emitter.

witx ,

I wrote loads of firmware in c++ and some on highly constrained boards. You’re just stuck in the past and spewing bs

AnUnusualRelic ,
@AnUnusualRelic@lemmy.world avatar

Forth is more like the real hardware language.

DrM , in We'll refactor this next year anyways

The only thing that has the chance to prevent unmaintainable garbage code is a plethora of linting rules.

Lifter ,

That may lead to over-refactoring, leading to unmaintainable garbage code.

DrM ,

yeah thats why I said it only has the chance, not that it leads to good code

swordsmanluke , in "prompt engineering"

What I think is amazing about LLMs is that they are smart enough to be tricked. You can’t talk your way around a password prompt. You either know the password or you don’t.

But LLMs have enough of something intelligence-like that a moderately clever human can talk them into doing pretty much anything.

That’s a wild advancement in artificial intelligence. Something that a human can trick, with nothing more than natural language!

Now… Whether you ought to hand control of your platform over to a mathematical average of internet dialog… That’s another question.

shea ,

They’re not “smart enough to be tricked” lolololol. They’re too complicated to have precise guidelines. If something as simple and stupid as this can’t be prevented by the world’s leading experts idk. Maybe this whole idea was thrown together too quickly and it should be rebuilt from the ground up. we shouldn’t be trusting computer programs that handle sensitive stuff if experts are still only kinda guessing how it works.

BatmanAoD ,

Have you considered that one property of actual, real-life human intelligence is being “too complicated to have precise guidelines”?

Cethin ,

Not even close to similar. We can create rules and a human can understand if they are breaking them or not, and decide if they want to or not. The LLMs are given rules but they can be tricked into not considering them. They aren’t thinking about it and deciding it’s the right thing to do.

BatmanAoD ,

We can create rules and a human can understand if they are breaking them or not…

So I take it you are not a lawyer, nor any sort of compliance specialist?

They aren’t thinking about it and deciding it’s the right thing to do.

That’s almost certainly true; and I’m not trying to insinuate that AI is anywhere near true human-level intelligence yet. But it’s certainly got some surprisingly similar behaviors.

mikey ,

Have you heard of social engineering and phishing? I consider those to be analogous to uploading new rules for ChatGPT, but since humans are still smarter, phishing and social engineering seems more advanced.

skittle07crusher ,

Absolutely fascinating point you make there!

Aceticon ,

And one property of actual, real-life human intelligence is “happenning in cells that operate in a wet environment” and yet it’s not logical to expect that a toilet bool with fresh poop (lots of fecal coliform cells) or a dropplet of swamp water (lots of amoeba cells) to be intelligent.

Same as we don’t expect the Sun to have life on its surface even though it, like the Earth, is “a body floating in space”.

Sharing a property with something else doesn’t make two things the same.

BatmanAoD ,

…I didn’t say that it does.

Aceticon ,

There is no logical reason for you to mention in this context that property of human intelligence if you do not meant to make a point that they’re related.

So there are only two logical readings for that statement of yours:

  • Those things are wholly unrelated in that statement which makes you a nutter, a troll or a complete total moron that goes around writting meaningless stuff because you’re irrational, taking the piss or too dumb to know better.
  • In the heat of the discussion you were trying to make the point that one implies the other to reinforce previous arguments you agree with, only it wasn’t quite as good a point as you expected.

I chose to believe the latter, but if you tell me it’s the former, who am I to to doubt your own self-assessment…

BatmanAoD ,

No, you leapt directly from what I said, which was relevant on its own, to an absurdly stronger claim.

I didn’t say that humans and AI are the same. I think the original comment, that modern AI is “smart enough to be tricked”, is essentially true: not in the sense that humans are conscious of being “tricked”, but in a similar way to how humans can be misled or can misunderstand a rule they’re supposed to be following. That’s certainly a property of the complexity of system, and the comment below it, to which I originally responded, seemed to imply that being “too complicated to have precise guidelines” somehow demonstrates that AI are not “smart”. But of course “smart” entities, such as humans, share that exact property of being “too complicated to have precise guidelines”, which was my point!

Aceticon ,

Got it, makes sense.

Thanks for clarifying.

bbuez ,

I don’t want to spam this link but seriously watch this 3blue1brown video on how text transformers work. You’re right on that last part, but its a far fetch from an intelligence. Just a very intelligent use of statistical methods. But its precisely that reason that reason it can be “convinced”, because parameters restraining its output have to be weighed into the model, so its just a statistic that will fail.

Im not intending to downplay the significance of GPTs, but we need to baseline the hype around them before we can discuss where AI goes next, and what it can mean for people. Also far before we use it for any secure services, because we’ve already seen what can happen

swordsmanluke ,

Oh, for sure. I focused on ML in college. My first job was actually coding self-driving vehicles for open-pit copper mining operations! (I taught gigantic earth tillers to execute 3-point turns.)

I’m not in that space anymore, but I do get how LLMs work. Philosophically, I’m inclined to believe that the statistical model encoded in an LLM does model a sort of intelligence. Certainly not consciousness - LLMs don’t have any mechanism I’d accept as agency or any sort of internal “mind” state. But I also think that the common description of “supercharged autocorrect” is overreductive. Useful as rhetorical counter to the hype cycle, but just as misleading in its own way.

I’ve been playing with chatbots of varying complexity since the 1990s. LLMs are frankly a quantum leap forward. Even GPT-2 was pretty much useless compared to modern models.

All that said… All these models are trained on the best - but mostly worst - data the world has to offer… And if you average a handful of textbooks with an internet-full of self-confident blowhards (like me) - it’s not too surprising that today’s LLMs are all… kinda mid compared to an actual human.

But if you compare the performance of an LLM to the state of the art in natural language comprehension and response… It’s not even close. Going from a suite of single-focus programs, each using keyword recognition and word stem-based parsing to guess what the user wants (Try asking Alexa to “Play ‘Records’ by Weezer” sometime - it can’t because of the keyword collision), to a single program that can respond intelligibly to pretty much any statement, with a limited - but nonzero - chance of getting things right…

This tech is raw and not really production ready, but I’m using a few LLMs in different contexts as assistants… And they work great.

Even though LLMs are not a good replacement for actual human skill - they’re fucking awesome. 😅

lauha , (edited )

but its a far fetch from an intelligence. Just a very intelligent use of statistical methods.

Did you know there is no rigorous scientific definition of intelligence?

Edit. facts

bbuez ,

We do not have a rigorous model of the brain, yet we have designed LLMs. Experts of decades in ML recognize that there is no intelligence happening here, because yes, we don’t understand intelligence, certainly not enough to build one.

If we want to take from definitions, here is Merriam Webster

(1)

: the ability to learn or understand or to deal with new or trying >situations : reason

also : the skilled use of reason

(2)

: the ability to apply knowledge to manipulate one’s >environment or to think abstractly as measured by objective >criteria (such as tests)

The context stack is the closest thing we have to being able to retain and apply old info to newer context, the rest is in the name. Generative Pre-Trained language models, their given output is baked by a statiscial model finding similar text, also coined Stocastic parrots by some ML researchers, I find it to be a more fitting name. There’s also no doubt of their potential (and already practiced) utility, but a long shot of being able to be considered a person by law.

WhiskyTangoFoxtrot ,
Aceticon ,

That statement of yours just means “we don’t yet know how it works hence it must work in the way I believe it works”, which is about the most illogical “statement” I’ve seen in a while (though this being the Internet, it hasn’t been all that long of a while).

“It must be clever statistics” really doesn’t follow from “science doesn’t rigoroulsy define what it is”.

lauha ,

Yes, corrected.

But my point stads: claiming there is no intelligence in AI models without even knowing what “real” intelligence is, is wrong.

Aceticon ,

I think the point is more that the word “intelligence” as used in common speech is very vague.

I suppose a lot of people (certainly I do it and I expect many others do it too) will use the word “intelligence” in a general non-science setting in place of “rationalization” or “reasoning” which would be clearer terms but less well understood.

LLMs easilly produce output which is not logical, and a rational being can spot it as not following rationality (even of we don’t understand why we can do logic, we can understand logic or the absence of it).

That said, so do lots of people, which makes an interesting point about lots of people not being rational, which nearly dovetails with your point about intelligence.

I would say the problem is trying to defined “inteligence” as something that includes all humans in all settings when clearly humans are perfectly capable of producing irrational shit whilst thinking of themselves as being highly intelligent whilst doing so.

I’m not sure if that’s quite the point you were bringing up, but it’s a pretty interesting one.

Aux ,

The problem is that majority of human population is dumber than GPT.

ghen , (edited )

See, I understand that you’re trying to joke but the linked video explains how the use of the word dumber here doesn’t make any sense. LLMs hold a lot of raw data and will get it wrong at a smaller percent when asked to recite it, but that doesn’t make them smart in the way that we use the word smart. The same way that we don’t call a hard drive smart.

They have a very limited ability to learn new ways of creating, understand context, create art outside of its constraints, understand satire outside of obvious situations, etc.

Ask an AI to write a poem that isn’t in AABB rhyming format, haiku, or limerick, or ask it to draw a house that doesn’t look like an AI drew it.

A human could do both of those in seconds as long as they understand what a poem is and what a house is. Both of which can be taught to any human.

Leate_Wonceslace ,
@Leate_Wonceslace@lemmy.dbzer0.com avatar

It’s a good video (I’ve seen it; very informative and accessible cannot recommend enough), but I think you each mean different things when you use the word “intelligence”.

yuriy , (edited )

Oh for sure! The issue is that one of those meanings can also imply sentience, and news outlets love doing that shit. I talk to people every day who fully believe that “AI” text transformers are actually parsing human language and responding with novel and reasoned information.

humbletightband ,

You could trick it with the natural language, as well as you could trick the password form with a simple sql injection.

datelmd5sum ,

I was amazed by the intelligence of an LLM, when I asked how many times do you need to flip a coin to be sure it has both heads and tails. Answer: 2. If the first toss is e.g. heads, then the 2nd will be tails.

JasonDJ ,

You only need to flip it one time. Assuming it is laying flat on the table, flip it over, bam.

Rozauhtuno ,
@Rozauhtuno@lemmy.blahaj.zone avatar

There’s a game called Suck Up that is basically that, you play as a vampire that needs to trick AI-powered NPCs into inviting you inside their house.

bbuez ,

Now THAT is the AI innovation I’m here for

Lmaydev ,

LLMs are in a position to make boring NPCs much better.

Once they can be run locally at a good speed it’ll be a game changer.

I reckon we’ll start getting AI cards for computers soon.

bbuez ,

We already do! And on the cheap! I have a Coral TPU running for presence detection on some security cameras, I’m pretty sure they can run LLMs but I haven’t looked around.

GPT4ALL runs rather well on a 2060 and I would only imagine a lot better on newer hardware

swordsmanluke ,

That sounds amazing - OMW to check it out!

RoseTintedGlasses ,
@RoseTintedGlasses@lemmy.blahaj.zone avatar

that sounds so cool ngl, finally an actually good use for ai

General_Effort ,

mathematical average of internet dialog

It’s not. Whenever someone talks about how LLMs are just statistics, ignore them unless you know they are experts. One thing that convinces me that ANNs really capture something fundamental about how human minds work is that we share the same tendency to spout confident nonsense.

Syn_Attck ,

I give you a B+ for General_Effort.

stratoscaster ,

It literally is just statistics… wtf are you on about. It’s all just weights and matrix multiplication and tokenization

Redex68 ,

Well on one hand yes, when you’re training it your telling it to try and mimic the input as close as possible. But the result is still weights that aren’t gonna reproducte everything exactly the same as it just isn’t possible to store everything in the limited amount of entropy weights provide.

In the end, human brains aren’t that dissimilar, we also just have some weights and parameters (neurons, how sensitive they are and how many inputs they have) that then output something.

I’m not convinced that in principle this is that far from how human brains could work (they have a lot of minute differences but the end result is the same), I think that a sufficiently large, well trained and configured model would be able to work like a human brain.

Natanael ,

Not an LLM specifically, in particular lack of backtracking and the network depth limits as well as interconnectivity limits sets hard limits on capabilities.

lesswrong.com/…/llms-and-computation-complexity

…substack.com/…/math-is-hard-if-you-are-an-llm-an…

arxiv.org/abs/2401.11817

marktechpost.com/…/this-ai-research-dives-into-th…

Humans have a completely different memory model and a in large part a very different way of linking together learned concepts to form their world view and to develop interdisciplinary skills, allowing us to solve many kinds of highly complex tasks as long as we can keep enough of it in our memory.

General_Effort ,

It’s all just weights and matrix multiplication and tokenization

See, none of these is statistics, as such.

Weights is maybe closest but they are supposed to represent the strength of a neural connection. This is originally inspired by neurobiology.

Matrix multiplication is linear algebra and encountered in lots of contexts.

Tokenization is a thing from NLP. It’s not what one would call a statistical method.

So you can see where my advice comes from.

Certainly there is nothing here that implies any kind of averaging going on.

Natanael ,

If there’s no averaging, why do they repeat stereotypes so often?

General_Effort ,

Why would averaging lead to repetition of stereotypes?

Anyway, it’s hard to say LLMs output what they do. GPTisms may have to do with the system prompt or they may result from the fine-tuning. Either way, they don’t seem very internet average to me.

Natanael ,

The TLDR is that pathways between nodes corresponding to frequently seen patterns (stereotypical sentences) gets strengthened more than others and therefore it becomes more likely that this pathway gets activated over others when giving the model a prompt. These strengths correspond to probabilities.

Have you seen how often they’ll sign a requested text with a name placeholder? Have you seen the typical grammar they use? The way they write is a hybridization of the most common types of texts it has seen in samples, weighted by occurrence (which is a statistical property).

It’s like how mixing dog breeds often results in something which doesn’t look exactly like either breed but which has features from every breed. GPT/LLM models mix in stuff like academic writing, redditisms and stackoverflowisms, quoraisms, linkedin-postings, etc. You get this specific dryish text full of hedging language and mixed types of formalisms, a certain answer structure, etc.

General_Effort ,

That’s a) not how it works and b) not averaging.

Natanael ,

A) I’ve not yet seen evidence to the contrary

B) you do know there’s a lot of different definitions of average, right? The centerpoint of multiple vectors is one kind of average. The median of online writing is an average. The most common vocabulary, the most common sentence structure, the most common formulation of replies, etc, those all form averages within their respective problem spaces. It displays these properties because it has seen them so often in samples, and then it blends them.

General_Effort ,

A) I’ve not yet seen evidence to the contrary

You should worry more about whether you have seen evidence that supports what you are saying. So, what kind of evidence do you want? A tutorial on coding neural nets? The math? Video or text?

Natanael ,

Text explaining why the neural network representation of common features (typically with weighted proportionality to their occurrence) does not meet the definition of a mathematical average. Does it not favor common response patterns?

General_Effort ,

I accidentally clicked reply, sorry.

B) you do know there’s a lot of different definitions of average, right?

I don’t think that any definition applies to this. But I’m no expert on averages. In any case, the training data is not representative of the internet or anything. It’s also not training equally on all data and not only on such text. What you get out is not representative of anything.

Natanael ,

You don’t need it to be an average of the real world to be an average. I can calculate as many average values as I want from entirely fictional worlds. It’s still a type of model which favors what it sees often over what it sees rarely. That’s a form of probability embedded, corresponding to a form of average.

General_Effort ,

Text explaining why the neural network representation of common features (typically with weighted proportionality to their occurrence) does not meet the definition of a mathematical average. Does it not favor common response patterns?

Hmm. I’m not really sure why anyone would write such a text. There is no “weighted proportionality” (or pathways). Is this a common conception?

You don’t need it to be an average of the real world to be an average. I can calculate as many average values as I want from entirely fictional worlds. It’s still a type of model which favors what it sees often over what it sees rarely. That’s a form of probability embedded, corresponding to a form of average.

I guess you picked up on the fact that transformers output a probability distribution. I don’t think anyone calls those an average, though you could have an average distribution. Come to think of it, before you use that to pick the next token, you usually mess with it a little to make it more or less “creative”. That’s certainly no longer an average.

You can see a neural net as a kind of regression analysis. I don’t think I have ever heard someone calling that a kind of average, though. I’m also skeptical if you can see a transformer as a regression but I don’t know this stuff well enough. When you train on some data more often than on other data, that is not how you would do a regression. Certainly, once you start RLHF training, you have left regression territory for good.

The GPTisms might be because they are overrepresented in the finetuning data. It might also be from the RLHF and/or brought out by the system prompt.

NikkiDimes ,

It has a tendency to behave exactly as the data it was ultimately trained on…due to statistics…lol

smb ,

that a moderately clever human can talk them into doing pretty much anything.

besides that LLMs are good enough to let moderately clever humans believe that they actually got an answer that was more than guessing and probabilities based on millions of trolls messages, advertising lies, fantasy books, scammer webpages, fake news, astroturfing, propaganda of the past centuries including the current made up narratives and a quite long prompt invisible to that human.

cheerio!

Dkarma ,

An llm is just a Google search engine with a better interface on the back end.

kaffiene ,

Technically no, but practically an LLM is definitely a lot more useful than Google for a bunch of topics

kaffiene ,

It’s not intelligent, it’s making an output that is statistically appropriate for the prompt. The prompt included some text looking like a copyright waiver.

feedum_sneedson ,

Maybe that’s intelligence. I don’t know. Brains, you know?

kaffiene ,

It’s not. It’s reflecting it’s training material. LLMs and other generative AI approaches lack a model of the world which is obvious on the mistakes they make.

feedum_sneedson ,

Tabula rasa, piss and cum and saliva soaking into a mattress. It’s all training data and fallibility. Put it together and what have you got (bibbidy boppidy boo). You know what I’m saying?

kaffiene ,

Magical thinking?

feedum_sneedson , (edited )

Okay, now you’re definitely protecting projecting poo-flicking, as I said literally nothing in my last comment. It was nonsense. But I bet you don’t think I’m an LLM.

Lmaydev ,

You could say our brain does the same. It just trains in real time and has much better hardware.

What are we doing but applying things we’ve already learnt that are encoded in our neurons. They are called neural networks for nothing

kaffiene ,

You could say that but you’d be wrong.

Skullgrid , in Developing a third party UI for a platform you use frequently feels like this sometimes
@Skullgrid@lemmy.world avatar

I watch too many videos on expensive guitar pedals I can’t afford.

I’m “on the bench” at the outsourcing company I work for and I am starting to seriously consider going into DSP programming just so I can work on doing this to effects controls.

I want to make knobs available for this this this and this parameter.

can , (edited )

I’ve had that feeling too but luckily bitwig makes a lot of that easily done natively.

Edit: I’d love to make a CLAP plugin someday though.

danc4498 , in Developing a third party UI for a platform you use frequently feels like this sometimes

My wife wants a horn in the passenger seat so she can rage for me.

ptz OP ,
@ptz@dubvee.org avatar

😆

That’s actually not a bad idea.

the_post_of_tom_joad ,

If my wife got to honk at every driver she got mad at from the passenger seat i would lose a lot more fights

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • [email protected]
  • lifeLocal
  • goranko
  • All magazines