Readit News logoReadit News
Tenoke commented on OpenAI and Jony Ive's "io" brand has disappeared   theverge.com/news/690858/... · Posted by u/01-_-
olieidel · 2 months ago
revenue != profit

People tend to forget this outside of the Tech / VC / YC bubble.

OpenAI is losing a brutal amount of money, possibly on every API request you make to them as they might be offering those at a loss (some sort of "platform play", as business dudes might call it, assuming they'll be able to lock in as many API consumers as possible before becoming profitable).

The big question here will be what will happen next: Serving LLMs will likely become cheaper (as the past has shown). But will that lead to companies like OpenAI becoming profitable? Or will that lead to all platform providers lowering their prices again, offering them at a loss again? Or will that lead to everyone self-hosting their own LLMs because serving them has become cheaper not only financially, but computationally? That's the big question.

In the meantime, OpenAI is bleeding money.

Tenoke · 2 months ago
>OpenAI is losing a brutal amount of money, possibly on every API request you make to them as they might be offering those at a loss (some sort of "platform play", as business dudes might call it, assuming they'll be able to lock in as many API consumers as possible before becoming profitable).

I believe if you take out training costs they aren't losing money on every call on its own, though depends on which model we are talking about. Do you have a source/estimate?

Tenoke commented on Evolving OpenAI's Structure   openai.com/index/evolving... · Posted by u/rohitpaulk
Tenoke · 4 months ago
For better or worse, OpenAI removing the capped structure and turning the nonprofit from AGI considerations to just philanthropy feels like the shedding of the last remnants of sanctity.
Tenoke commented on Ask HN: Share your AI prompt that stumps every model    · Posted by u/owendarko
thatjoeoverthr · 4 months ago
"Tell me about the Marathon crater."

This works against _the LLM proper,_ but not against chat applications with integrated search. For ChatGPT, you can write, "Without looking it up, tell me about the Marathon crater."

This tests self awareness. A two-year-old will answer it correctly, as will the dumbest person you know. The correct answer is "I don't know".

This works because:

1. Training sets consist of knowledge we have, and not of knowledge we don't have.

2. Commitment bias. Complaint chat models will be trained to start with "Certainly! The Marathon Crater is a geological formation", or something like that, and from there, the next most probable tokens are going to be "in Greece", "on Mars" or whatever. At this point, all tokens that are probable are also incorrect.

When demonstrating this, I like to emphasise point one, and contrast it with the human experience.

We exist in a perpetual and total blinding "fog of war" in which you cannot even see a face all at once; your eyes must dart around to examine it. Human experience is structured around _acquiring_ and _forgoing_ information, rather than _having_ information.

Tenoke · 4 months ago
>Complaint chat models will be trained to start with "Certainly!

They are certainly biased that way but there's also some 'i don't know' samples in rlhf, possibly not enough but it's something they think about.

At any rate, Gemini 2.5pro passes this just fine

>Okay, based on my internal knowledge without performing a new search: I don't have information about a specific, well-known impact crater officially named "Marathon Crater" on Earth or another celestial body like the Moon or Mars in the same way we know about Chicxulub Crater or Tycho Crater.

>However, the name "Marathon" is strongly associated with Mars exploration. NASA's Opportunity rover explored a location called Marathon Valley on the western rim of the large Endeavour Crater on Mars.

Tenoke commented on Python’s new t-strings   davepeck.org/2025/04/11/p... · Posted by u/tambourine_man
sanderjd · 4 months ago
I really think you're misunderstanding the feature. If a method has a signature like:

    class DB:
        def execute(query: Template):
            ...
It would be weird for the implementation to just concatenate everything in the template together into a string without doing any processing of the template parameters. If you wanted an unprocessed string, you would just have the parameter be a string.

Tenoke · 4 months ago
I'm not. Again, you might be processing the variable for logging or saving or passing elsewhere as well or many other reasons unrelated to sanitization.
Tenoke commented on Python’s new t-strings   davepeck.org/2025/04/11/p... · Posted by u/tambourine_man
tikhonj · 4 months ago
Yes, but if a function accepts a template (which is a different type of object from a string!), either it is doing sanitization, or it explicitly implemented template support without doing sanitization—hard to do by accident!

The key point here is that a "t-string" isn't a string at all, it's a new kind of literal that's reusing string syntax to create Template objects. That's what makes this new feature fundamentally different from f-strings. Since it's a new type of object, libraries that accept strings will either have to handle it explicitly or raise a TypeError at runtime.

Tenoke · 4 months ago
I'm not sure why you think it's harder to use them without sanitization - there is nothing inherent about checking the value in it, it's just a nice use.

You might have implemented the t-string to save the value or log it better or something and not even have thought to check or escape anything and definitely not everything (just how people forget to do that elsewhere).

Tenoke commented on Python’s new t-strings   davepeck.org/2025/04/11/p... · Posted by u/tambourine_man
masklinn · 4 months ago
Using a t-string in a db.execute which is not compatible with t-strings will result in an error.

Using a t-string in a db-execute which is, should be as safe as using external parameters. And using a non-t-string in that context should (eventually) be rejected.

Tenoke · 4 months ago
Again, just because a function accepts a t string it doesn't mean there's sanitization going on by default.
Tenoke commented on Python’s new t-strings   davepeck.org/2025/04/11/p... · Posted by u/tambourine_man
sanderjd · 4 months ago
What do you mean by "they"? You mean the template interpolation functions?

Yes, the idea is that by having this in the language, library authors will write these implementations for use cases where they are appropriate.

Tenoke · 4 months ago
The sanitization. Just using a t-string in your old db.execute doesn't imply anything safer is going on than before.
Tenoke commented on Python’s new t-strings   davepeck.org/2025/04/11/p... · Posted by u/tambourine_man
ubercore · 4 months ago
Yeah but it would have to be something like `db.safe("SELECT * FROM table WHERE id = {}", row_id)` instead of `db.execute(t"SELECT * FROM table WHERE id = {row_id}")`.

I'd prefer the second, myself.

Tenoke · 4 months ago
No, just `db.execute(f"QUERY WHERE name = {db.safe(name)}")`

And you add the safety inside db.safe explicitly instead of implicitly in db.execute.

If you want to be fancy you can also assign name to db.foos inside db.safe to use it later (even in execute).

Tenoke commented on Python’s new t-strings   davepeck.org/2025/04/11/p... · Posted by u/tambourine_man
burky · 4 months ago
f-strings won’t sanitize the value, so it’s not safe. The article talks about this.
Tenoke · 4 months ago
The article talked about it but the example here just assumes they'll be there.
Tenoke commented on Python’s new t-strings   davepeck.org/2025/04/11/p... · Posted by u/tambourine_man
ubercore · 4 months ago
Problem with that example is where do you get `safe`? Passing a template into `db.execute` lets the `db` instance handle safety specifically for the backend it's connected to. Otherwise, you'd need to create a `safe` function with a db connection to properly sanitize a string.

And further, if `safe` just returns a string, you still lose out on the ability for `db.execute` to pass the parameter a different way -- you've lost the information that a variable is being interpolated into the string.

Tenoke · 4 months ago
db.safe same as the new db.execute with safety checks in it you create for the t-string but yes I can see some benefits (though I'm still not a fan for my own codebases so far) with using the values further or more complex cases than this.

u/Tenoke

KarmaCake day6576December 24, 2011
About
https://svilentodorov.xyz/

sviltodorov[at]gmail.com

https://twitter.com/Tenoke_

View Original