HNHacker News
TopNewBestAskShowJobs

netruk44

529 karma · joined September 29, 2022

Personal site: https://www.danieltperry.me/

My site contains links to my personal projects and blog posts about those projects.

submissionscomments
netruk44··on Thoughts on Vision Pro
I just tried on mine for only a few seconds. Technically, it seemed to work. However, because I had to remove the prescription lenses, the device wanted to redo hand and eye setup, so I quickly took it off again.

Notes on the experience...

- On the solo loop band I had to turn the knob to loosen the strap a lot to get enough clearance to position my glasses within the device. The dual loop band probably would not work at all (I didn’t try).

- My glasses are just barely narrow enough to fit within my light seal (25W). It's definitely not a guarantee everybody's glasses will fit into their own light seal.

- Once in, the eye tracking was very off, basically unusable. However, I did not do gaze calibration with my glasses on. That would probably improve things, but I suspect the device will always have issues correctly tracking gaze through glasses because normal glasses lenses can distort your eyes more than it’s expecting.

- There's really not much space between your glasses and the inside lenses on the vision pro. It seems like your glasses would start rubbing up against the inside lenses very easily, causing permanent scratches on one or the other.

So technically you can, but I would not recommend it. I’d rather just spend the $150 for the official lenses.

netruk44··on Stuffit – 30 Years of File Compression
My problem with Unarchiver, Keka, and most other "decompression apps" available on MacOS is that none of them offer any kind of browsing functionality or the ability to select specific files to extract from your archive. They seem to focus on only extracting everything, and sometimes charge $4.99 for that limited functionality (looking at you Keka).

For that reason, these days I tend to stick with 7-Zip running through CrossOver for my archiving needs.

netruk44··on Google search is losing the fight with SEO spam, study says
Tangentially related, I’ve noticed on the google search console that they aren’t crawling or indexing my personal blog at all, basically.

I have to manually request indexing in order for my months old blog posts to show up on Google. I went from 1 appearance in search results every few days to 15 per day just by manually requesting indexing on my recent blog posts.

But what I find confusing is that even when I do this, Google won’t follow any links it finds when it eventually gets around to crawling my posts. I submit my site map and it won’t index anything new. I have to manually ask Google to index every new blog post I make.

It seems like small blogs like mine just aren’t what Google is interested in finding and presenting to users.

netruk44··on Retro on Viberary
I don't like to put current projects on my profile because I jump to new ones fairly regularly, it would get out of date quickly. I'll go and put a link to my personal site on there, though.

You can see the project here: https://azstatic.danieltperry.me/steamvibes/build

I’m not 100% satisfied with the performance of the search, but it is what it is. I wanted to get what I had out instead of perfecting it all, since there's a ton of different things I can do that all have ambiguous amounts of impact to the results.

I might switch to using a different embedding model in the future since the current one I'm using seems to be fairly dated by this point.

netruk44··on Retro on Viberary
Yes, I agree. This is something I implemented in my project UI (a “more like this game” button, and the ability to specify a Steam appid for using as the query).

It works if there actually is a game out there you want similar games to, but the text input is useful for finding something when you don’t have an example offhand.

netruk44··on Retro on Viberary
Very interesting! Coincidentally, I just released my own semantic search engine personal project for Steam games in December.

It’s interesting to compare notes and implementation details. I have many of the same notes and faced very similar challenges in my own work haha.

The most interesting challenge I found was touched on in this post. Semantic searches presented with the typical text box input generally mislead users into treating the search like a Google search.

Searches like “beautiful video game” and “sci-fi thriller” technically work, but they don’t perform as well as just describing a beautiful video game or describing a plot overview of a sci-fi thriller.

Semantic search kind of requires a different kind of search query that many users don’t quite understand yet.

Maybe there’s an opportunity for an intermediary model to “translate” queries, like how recent image generation models take your image prompt and generate a text prompt that’s used for the image generation instead.

netruk44··on Ask HN: Experience Starting a Blog
This is what I do. Though I will admit, I don’t receive much traffic to my blog at all (obviously). So it’s discouraging in just a slightly different way haha. I think I (and perhaps OP) might prefer it that way though.
netruk44··on GDScript – Custom scripting language to be used with the Godot game engine
The Godot FAQ [0] has a response to that.

It seems like they tried to do Python, but it was too hard to embed. The FAQ goes into more detail about the specifics of what they needed in a language.

[0]: https://docs.godotengine.org/en/stable/about/faq.html#what-w...

netruk44··on Mapping the semantic void: Strange goings-on in GPT embedding spaces
At a high level:

It's an article observing how GPT-J token embeddings are positioned in 'embedding space', with some connections drawn to GPT 3.

They then experiment with having GPT-J provide definitions for "nokens" (A "noken" is basically a made up embedding created by modifying the embedding generated from a real token) to see what happens when a model is presented with a novel embedding outside of the trained embedding space to see how it interprets them.

Diving in a little more:

An observation from the article is that the first letter of a word represented by an embedding is actually encoded into that embedding such that you could identify what letter any embedding starts with, with 98% certainty.

They observe this linear relationship and devise an experiment. They ask GPT-J what letter the word "icon" starts with, and it correctly replies "I". They then create a "noken" for the word "icon" and modify it so that it no longer represents that the word starts with "I" and ask GPT-J again what letter this "noken" starts with. GPT-J then incorrectly replies that the word "icon" does not start with the letter "I".

So then they pose the question "can the model still define the word 'broccoli' even if we shift the first letter away from 'B'?" and the answer is almost always yes, changing the semantic "first letter" of an embedding doesn't change the model's ability to understand the embedding.

They then do a series of experiments asking GPT-J to provide the "typical definition for the word '<noken>'." with the example word 'hate' being used. They gradually shifted the first letter away from 'H', and see that up until very high levels of modification, the model can still give a normal definition for the modified 'hate' noken ("a strong feeling of dislike or hostility.").

At extreme modifications to the noken, the model starts providing strange definitions ("a person who is not a member of a particular group.", "a period of time during which a person or thing is in a state of being").

They repeat the experiment and note that this behavior of the definition keeping stable up until 'collapse' is common across many tokens:

> ...usually ending up with something about a person who isn't a member of a group by k = 100, having passed through one or more other themes involving things like Royal families, places of refuge, small round holes and yellowish-white things, to name a few of the baffling tropes that began to appear regularly.

netruk44··on Fake chips, I got stung
I thought I'd check with GPT-4 vision preview just to see what it could make of the character. Unfortunately, it couldn't figure it out.

> The logographic character you're referring to appears to be a Chinese character, but it's not clearly written which makes it difficult to identify with certainty.

(There was more to the response, but it was more about why the character might be written there)

netruk44··on Animate Anyone: Image-to-video synthesis for character animation
It looks like they’re using OpenPose [0] images fed to a special “pose guider” model. You can make them from just regular video.

[0] https://github.com/CMU-Perceptual-Computing-Lab/openpose

netruk44··on Animate Anyone: Image-to-video synthesis for character animation
The input poses appear to be generated from OpenPose [0], which uses regular images as input. With the creation of stable diffusion video, you could theoretically prompt it to make a video of what you wanted, then run it through OpenPose.

But I think the more realistic approach is to take a video of yourself doing the motions you want the AI to generate, and run that through OpenPose instead.

Using just words leaves a lot to the model’s interpretation. I feel like you might wind up spending a lot of time manually fixing little things, similar to how you might infill the “wrong” parts of an AI generated image. It might be easier to just take a 15 second video to get the exact skeleton animation you want.

[0] https://github.com/CMU-Perceptual-Computing-Lab/openpose

netruk44··on Death by AI – a free Jackbox style party game. AI judges your plans to survive
I think it’s a bit soon to be integrating LLM’s into AAA releases.

The current generation of consoles can’t run them locally, so the developers would have to run the models for the customers. Considering most game developers (including Rockstar) don’t even have dedicated servers for multiplayer, that’s probably too much to ask.

I think Elder Scrolls 6 has a higher chance of implementing it, only because Microsoft owns Bethesda and also has the OpenAI partnership. Microsoft also has a history of supporting game devs doing stuff with Azure.

I’ve dabbled with adding an LLM to OpenMW, and I think there’s potential there. But I also think it could get very expensive. Maybe by the time ES6 comes out, that won’t be the case.

netruk44··on A Grand Theft Auto III Re-Implementation
Bethesda has, in fact, taken issue with OpenMW in the past [0].

Bethesda at least had a specific reason for going after OpenMW, though. They’re okay with it now under “certain conditions” that I’m sure the OpenMW devs aren’t going to argue with.

Their main ask was that the OpenMW devs don’t advertise OpenMW as a way to play Morrowind on Android (or other platforms besides PC).

And there’s an understanding that OpenMW’s “intention” isn’t solely to be a way to play Morrowind, but also to implement a generic RPG engine and editor that uses Morrowind’s gameplay and file structure. For someone to make their own game with, not using any of Morrowind’s assets. (I’m not sure if any such game exists, though)

[0]: https://wiki.openmw.org/index.php?title=Bethesda_Emails

netruk44··on How to Make Your Own Spooky Magic Eye Pictures (Autostereograms)
The fact that all you need is a depth map of what you'd like to create makes me wonder if anyone's ever linked something like this up to a video game engine to make possibly the least visually pleasing and least accessible game out there.
netruk44··on The Killer Use Case for LLMs Is Summarization
I found an 'old' (2016) reddit thread describing how auto tldr works, which doesn't suffer from hallucination (because it's only a statistical model that outputs original sentences from the text):

https://old.reddit.com/r/askscience/comments/4s5b5q/how_exac...

netruk44··on WordPress blogs can now be followed on Mastodon and other federated platforms
This looks useful, thanks!

I’ve attempted to follow my blog from Mastodon, but so far no posts have popped up yet. I know it can take a while, though. I’ll check back tomorrow. It would be great if I didn’t have to write and maintain something.

netruk44··on WordPress blogs can now be followed on Mastodon and other federated platforms
This got me looking into what it would take to start publishing my own static file GitHub Pages-based blog using ActivityPub. It's something I've wanted to look into for a while.

It looks like at the very least ActivityPub requires a host that responds to POST requests, so GitHub Pages is out. But I found a blog post of someone using serverless functions to handle the ActivityPub part of their static site. I might try that out.

Does anyone here happen to have any experience with setting up ActivityPub for static pages? I'd be interested to know how you set things up.

netruk44··on I won't deliberately use AI for programming
I don't think copying and pasting from stack overflow then fudging things until it works is always quite the same thing as using an LLM to help write code.

I've just spent the month of August learning to use Godot 4.0 with C#. Resources for this topic on the internet are scarce, Google only wants to show me the official Godot documentation and YouTube videos (which I don't watch because I don't like to learn in this way).

Sure, I could spend my time reading the official docs cover to cover, but I much prefer to get my hands dirty. I'm not a novice game programmer, I've written my own game engines, used Unity and published games. I've got the underlying knowledge of how Godot might work, but I'm unclear as to how to accomplish specific goals I'm trying to achieve.

And absolutely, I could just put everything into Google, and probably find correct documentation for what I need. Or I could just write "// Interpolate from current position to camera" and have Copilot spit out "transform3d.interpolate_with" along with supporting code specific to the code I have right here, which also references functions I don't even know existed. This way, I'm learning the "API landscape" in a sense.

Godot 4.0 is new enough (and C# used with Godot used so infrequently in online resoures) to the point where Copilot literally can not produce the correct output basically ever. The API changed and everything it outputs is subtly incorrect, either generating code that is now obsolete, or that the code it's generating no longer functions because of the API change.

When this happens, I just dive into the docs as a backup strategy. But never as my first choice.

Is this worse than not having Copilot? I don't think so, but it seems like we probably won't agree on that. I still feel like I've 'learned' Godot (I at least know more now than I did on August 1st). I'm able to synthesize the code more easily on my own thanks to the starting points provided by the LLM. And I'm also writing tutorials on how to use Godot, further solidifying the things the LLM showed me in my own mind.

I'm not saying LLM's are a "one stop shop" for learning. I'm just saying it's another tool. One that I think is a little shortsighted to just completely disregard because it's sometimes incorrect.

netruk44··on I won't deliberately use AI for programming
When it comes to programming, when an LLM hallucinates something in an area I'm not familiar with, it's usually very obvious that it is not correct because it just does not work at all. For me, programming hallucinations have never fallen into the case where it appears like everything is working but actually isn't doing the correct thing.

So then I just forward that back to the model, or in the very worst case use my own brain to fix the problem the LLM generated.

In either case, I'm still better off than had the LLM not existed, because even an incorrect solution is closer to the correct solution than nothing at all.

I now have something that's close to solving my problem that I wouldn't have been able to come up with solely on my own. It just needs a little tweaking to be correct, which I can muster my way through with a little help from the LLM or Google.

netruk44··on GPT-3.5 Turbo fine-tuning and API updates
You can see the list of things the moderation endpoint scans for in the OpenAI documentation: https://platform.openai.com/docs/guides/moderation/overview

I'm unsure of what the "GPT-4 powered moderation system" entails, though.

Conjecture: My unsubstantiated guess would be them prompting GPT-4 with something like "Is the following excerpt considered to be harmful or unsafe: {training data}" and then limiting the output to just a few words like "Yes", "No" and "It's unclear".

netruk44··on The recent criticism of Linus Tech Tips
In addition to their missteps regarding being flat-out wrong in their technical reviews, one of LTT's recent employees has recently come out about why she left and it has made clear to me just how abhorrent LTT's behavior has become in recent years.

If you haven't read her story, I would encourage you to do so [0].

Maybe their new CEO can help right the ship that Linus has so narrow-mindedly piloted thus far, but I won't be around to see it. I've unsubscribed from their channel and have told YouTube to no longer recommend it to me.

[0]: https://threadreaderapp.com/thread/1691693740254228741.html

netruk44··on Ask HN: Do any jailbreak prompts exist for LLaMa 2?
I’m not OP, but to me an example would be the DAN meme that was (is?) popular. The “Do Anything Now” network that got ChatGPT to break character a bit.
netruk44··on Gitea 1.20
The comment for the option in the Gitea config file says that service workers were used to cache frontend assets.

However, the PR that disabled it by default noted that enabling service workers caused JS errors after Gitea instance upgrades. The PR also noted that service workers didn't provide any benefit over regular HTTP caching.

netruk44··on Teenager detained at airport after trying to use “skiplagging” trick
It's slightly more than the missed revenue from the failed shakedown. An empty seat is a seat that could have been sold to someone who paid full price. If you hadn't checked in for the flight you weren't intending to take, they could have made a bit more money.
netruk44··on PoisonGPT: We hid a lobotomized LLM on Hugging Face to spread fake news
You can train or fine-tune a model to do basically anything so long as you have the training dataset to exemplify whatever it is you want it to be doing. That's one of hard parts of AI training, gathering a good dataset.

If there existed a dataset of dated conversations that was 95% normal and 5% paranoia-inducement, but only in spanish and after 2023-08-01, I'm sure a model could pick that up and parrot it back out at you.

netruk44··on OpenMW: Open-source TES3: Morrowind reimplementation
As a hobby project, I'm adding AI text generation to the OpenMW NPC's. I'm trying to figure out how this would work for a 'real' project without having to develop an entire game first.

I would definitely not be able to do that if OpenMW did not exist.

netruk44··on Who is working on forward and backward compatibility for LLMs?
In terms of being part of a test suite, I think determinism > creativity in the response. But I would agree there's probably rough edges there, it's possible that some prompts never perform well with temperature set to 0.
netruk44··on Who is working on forward and backward compatibility for LLMs?
> If you expect the models you use to change at all, it’s important to unit-test all your prompts using evaluation examples.

It's mentioned earlier in the article, but I'd like to emphasize that if you go down this route that you should either do multiple evaluations per prompt and come up with some kind of averaged result, or set the temperature to 0.

FTA:

> LLMs are stochastic – there’s no guarantee that an LLM will give you the same output for the same input every time.

> You can force an LLM to give the same response by setting temperature = 0, which is, in general, a good practice.

netruk44··on Ted Chiang: ‘The machines we have now are not conscious’
The idea you’re talking about is called “human exceptionalism”. It’s the idea that humans are in some way unique when it comes to being, thinking, and feeling.
← PreviousPage 3 of 5Next →