What do you use as “ground truth”? The page says “independent sources”, and I’m sure there’s too many to list, but my question is how are they vetted as being truthful and how are two sources with opposite viewpoints reconciled?
I could imagine running multiple different AIs seeing if they agree if something is true.
I imagine this is similar to how Twitter's/X's community notes work. Something along the lines of when you have two accounts that disagree traditionally and they agree on something. That's how you know it's likely to be true.
So from that approach, you actually want to have two AIs that are on the other side of the spectrum of whatever you're trying to find out if it's true e.g. if a conservative AI and a liberal AI both agree that something is false, it's highly likely to be false.
This is extremely problematic. Much of news is highly syndicated, so what looks like 10 credible sources are actually just 2. I think the best you can aim for is empirical sources: receipts, videos, photo evidence, public disclosures directly at the source. Archiving is ok if disclosed.
I don't think LLMs can discern truth when the majority of news sources are incentivized primarily for views.
You may have overlooked this part of the parent's comment which addresses your syndication issue:
> Something along the lines of when you have two accounts that disagree traditionally and they agree on something. That's how you know it's likely to be true.
Outfits that blindly parrot talking points would not be at odds and thus not be good candidates.
It also doesn't help that many news sources will knowingly fudge the truth. There are topics about which they are constant sources of misinformation. Seems like depending on the topic (anything science related) you wouldn't want to use news sources at all. Other topics, you probably only want to use news sources. And arranging all of this weighting of sources is going to be difficult and controversial as well. Doesn't mean it can't be done. Doesn't mean it wouldn't be valuable. But there is a lot to it and most of it isn't so much about technology or math as it is about understanding who should and shouldn't be considered authoritative about what topics.
Something I've found surprisingly effective is telling ChatGPT to "use credible sources" - you can then watch its thinking trace and see it do things like ruling out random blogs, considering media publications with a good reputation for fact checking, and double-checking information that seems unlikely.
There is no whitelist source. It can't rate sources for truthfulness.
When sources conflicts - skill drops verdict to misleading or unverifiable and both are linked. Can't pick a winner at the moment.
That's probably the weakest part and still a judgement call for a model.
I'll look at reliable-sources, and you are right "verifiability, not truth" is basically what I landed on too. Model doesn't get to decide what's true, it just needs to cite something.
I think this would have a much bigger impact as short-form video content such as TikTok, Reels or Shorts. That's where most people consume this kind of content today, not in a .md file.
What would really set it apart is adding fact-checking before publishing and letting it post directly to TikTok. That combination would make it something I'd actually use every day.
At the moment - it's model's judgement upon search results for every claim from provided content. If search results returned inaccurate data, or were fabricated - it might affect a verdict for that claim, or highlight that it's unverifiable or contradictory.
But there is a room for improvement, what do you suggest? Have a Judge agent which will check results?
That's fair. Install is a one time real friction and extension would be much simpler.
But, there is a reason why it's not an extension. At least for now. Whole product isn't a UI or service, it's a set of skills for your AI agent of choice, which gets content from URL or whatever shared as a source, splits it into claims and does extensive web searches for every claim to compare it with statement from provided content.
On local models constraint isn't a model itself - but search. Model don't judge from it's trained memory, so even local model will need a backend for search, otherwise it can't provide a verdict.
Done, fixed in v0.4.1. Reason why agent reads from a file - it can do it in chunks or pass the path to subagent and keep it out from own context. I've tested it on 3hrs long interview YT video - worked smoothly.
I have an AI newsdesk i vibed together because I was losing too much time hunting for facts inside the torrent of misinformation, I'll try to hook it up to the writers
Washington Post gave up tracking Trump lies last term in 2021 because it became impossible by human hands with 21+ per day and over 30,000 in their database
but with "AI" now it's possible not only to do non-stop but in REALTIME
you could even just restrict the source of the check to the paper's own reporting the past fifty years
I'm not sure AI helps for that particular task. If you just assume that 100% of everything he says is a lie you'll be 99% correct. Anyone who believes anything he says at this point is living in a constructed reality where facts never matter. Fact checking seems more useful for less pathological cases where it might make a difference.
PS I've always assumed all politicians lie, I'm sure you don't think Pelosi or Bush Jr for example were some paragons of truth. Doesn't make it OK, but have some perspective.
What do you use as “ground truth”? The page says “independent sources”, and I’m sure there’s too many to list, but my question is how are they vetted as being truthful and how are two sources with opposite viewpoints reconciled?
I could imagine running multiple different AIs seeing if they agree if something is true.
I imagine this is similar to how Twitter's/X's community notes work. Something along the lines of when you have two accounts that disagree traditionally and they agree on something. That's how you know it's likely to be true.
So from that approach, you actually want to have two AIs that are on the other side of the spectrum of whatever you're trying to find out if it's true e.g. if a conservative AI and a liberal AI both agree that something is false, it's highly likely to be false.
This is extremely problematic. Much of news is highly syndicated, so what looks like 10 credible sources are actually just 2. I think the best you can aim for is empirical sources: receipts, videos, photo evidence, public disclosures directly at the source. Archiving is ok if disclosed.
I don't think LLMs can discern truth when the majority of news sources are incentivized primarily for views.
You may have overlooked this part of the parent's comment which addresses your syndication issue:
> Something along the lines of when you have two accounts that disagree traditionally and they agree on something. That's how you know it's likely to be true.
Outfits that blindly parrot talking points would not be at odds and thus not be good candidates.
It also doesn't help that many news sources will knowingly fudge the truth. There are topics about which they are constant sources of misinformation. Seems like depending on the topic (anything science related) you wouldn't want to use news sources at all. Other topics, you probably only want to use news sources. And arranging all of this weighting of sources is going to be difficult and controversial as well. Doesn't mean it can't be done. Doesn't mean it wouldn't be valuable. But there is a lot to it and most of it isn't so much about technology or math as it is about understanding who should and shouldn't be considered authoritative about what topics.
Sounds challenging to me...
Something I've found surprisingly effective is telling ChatGPT to "use credible sources" - you can then watch its thinking trace and see it do things like ruling out random blogs, considering media publications with a good reputation for fact checking, and double-checking information that seems unlikely.
I don't think random blogs should be ruled out. Just because a blog is random doesn't mean its untrue.
The reputation of the writer matters a lot. Recent models seem to be pretty good at evaluating author credibility as well.
What's dangerous is treating information from an anonymous author as factual. You gotta check that in other ways.
It should not be seen a credible source though.
It can be, but that's hard to correctly judge on at scale.
Love it, I'll run tests for "credible sources" and will compare the results. Could be a first feature-request implemented!
There is no whitelist source. It can't rate sources for truthfulness. When sources conflicts - skill drops verdict to misleading or unverifiable and both are linked. Can't pick a winner at the moment. That's probably the weakest part and still a judgement call for a model.
Maybe you read them already, but wikipedia has a bunch of interesting pages about sourcing and truth like: https://en.wikipedia.org/wiki/Wikipedia:Verifiability,_not_t... and https://en.wikipedia.org/wiki/Wikipedia:Reliable_sources
I'll look at reliable-sources, and you are right "verifiability, not truth" is basically what I landed on too. Model doesn't get to decide what's true, it just needs to cite something.
Will read reliable-sources page properly.
Can someone please use this skill against the claims in its own repo?
Done, fixed 2 misleading lines in README. You can see example report in repo examples.
Thanks for that, btw! At least someone questioned it :)
That was an exceptionally fun to read slop :) Cool idea in any case!
I think this would have a much bigger impact as short-form video content such as TikTok, Reels or Shorts. That's where most people consume this kind of content today, not in a .md file.
What would really set it apart is adding fact-checking before publishing and letting it post directly to TikTok. That combination would make it something I'd actually use every day.
I like the idea! How can you let folks know they're being fed nonsense before they even finish the intro?
I don't even watch most videos anymore. YouTube app -> Share -> Gemini -> Summary. Only if that shows interesting content do I actually watch.
Who checks the checkers?
me. I volunteer as ultimate arbiter of Truth.
maybe some community-driven and curated source blacklist could be implemented. It thing it would be too much for you doing that alone :)
At the moment - it's model's judgement upon search results for every claim from provided content. If search results returned inaccurate data, or were fabricated - it might affect a verdict for that claim, or highlight that it's unverifiable or contradictory.
But there is a room for improvement, what do you suggest? Have a Judge agent which will check results?
That's too much effort. Should have been a browser extension that uses ollama so it can run with local models or maybe even openrouter...
That's fair. Install is a one time real friction and extension would be much simpler.
But, there is a reason why it's not an extension. At least for now. Whole product isn't a UI or service, it's a set of skills for your AI agent of choice, which gets content from URL or whatever shared as a source, splits it into claims and does extensive web searches for every claim to compare it with statement from provided content.
On local models constraint isn't a model itself - but search. Model don't judge from it's trained memory, so even local model will need a backend for search, otherwise it can't provide a verdict.
Funny, I recently pasted output from Gemini into Claude, and it said it was total nonsense generated by an overconfident AI.
Apparently the "AI-generated bullshit" detection is already part of LLMs.
but have Claude actually fact-checked it or just provided an opinion?
nice! my built-in BS detector: "comment "prompt" and i will send you a guide".
thank you! comment "prompts" never works, right? Haven't seen single guide from it :D
> Long output? Redirect to a file and read it from there:
Hmm, smells AI generated. Why should an LLM (this is from a SKILL.md) care about $LINES?
Done, fixed in v0.4.1. Reason why agent reads from a file - it can do it in chunks or pass the path to subagent and keep it out from own context. I've tested it on 3hrs long interview YT video - worked smoothly.
The author is posting comments here (all flagged at this time) that are very clearly AI slop, which is quite ironic.
Fair, drafted posts with claude, getting all my comments flagged. Thought that something is wrong with my account. Writing myself from here
Bro, you don’t have to outsource your brain for basic communication on the internet.
HN’s community has built-in bullshit detectors.
You are right, no excuses. Will have few grammar errors but I'll own them. Cheers!
Sounds like AI reply to me, lmao
Awesome idea
Thank you! Would love to hear your results if you'll have a chance to try it
I have an AI newsdesk i vibed together because I was losing too much time hunting for facts inside the torrent of misinformation, I'll try to hook it up to the writers
Fantastic! Dying to hear the feedback. <3
Washington Post gave up tracking Trump lies last term in 2021 because it became impossible by human hands with 21+ per day and over 30,000 in their database
but with "AI" now it's possible not only to do non-stop but in REALTIME
you could even just restrict the source of the check to the paper's own reporting the past fifty years
* https://www.washingtonpost.com/graphics/politics/trump-claim...
I'd like to see that backfilled, all the way back to the "long form birth certificate" (remember that horror show)
I'm not sure AI helps for that particular task. If you just assume that 100% of everything he says is a lie you'll be 99% correct. Anyone who believes anything he says at this point is living in a constructed reality where facts never matter. Fact checking seems more useful for less pathological cases where it might make a difference.
Cool, now do Fauci...
PS I've always assumed all politicians lie, I'm sure you don't think Pelosi or Bush Jr for example were some paragons of truth. Doesn't make it OK, but have some perspective.
god i wish these low effort projects were banned from Show HN
the entire premise of a "bullshit detector" that's entirely vibe-coded is laughable
why it can't be vibe-coded? Would you be more pleased if it would be poorly hand-coded and claimed "No AI used during development"? What's the point?
I don't mind that I've used AI to build this, and I'm open about it ;)