has anyone thought/written about data-processing services via nostr? I'm thinking of, as @Gigi says, a vending machine model. Money in, data out. Example: I publish an event saying I want "X data processed in Y form, will pay Z", services compete to serve me the data back. Rationale: I'm integrating audio/video highlights on @Highlighter (cc @David King @Max ); instead of handling the transcription within Highlighter (which is what I'm doing now via the `whisper` model), what if users could query for that specific service and pay for it directly to the right service provider? Ideally, the user would have no "account" or "balance" on any of the service providers (vending machines don't have balances!), and ideally only the "best" (as understood by the user) is rewarded. The way I imagine it working is: * user publishes X event with the job spec * service providers that can handle that job spec compete to serve it (risk!) * when service provider serves the data the user pays to the "best" service provider Ideally there would be no negotiation steps between user<>provider, at least for inexpensive compute. Obviously there's risk to the service provider here, but it's risk that would be very easy to price/handle for a motivated service provider. The upside is a transparent, always-on global marketplace for data-processing/compute.

Replies (46)

That make sense. I’m thinking how micro a task is. If it takes more than several hours, still probably some hours of service will be wasted How about adding a claim process, claim the problem so others will not work on it, until it is rejected, if accepted then deal close
How does the use decide which provider/data is the best without seeing it? And if he sees it before payment, what incentive is there to pay afterwards?
user sees the data user wants to continue using the service and service providers might up to not serve users who don't pay their bills same model as your power company 😉
yes but instead of asking someone in particular you publish that you're interested in a service and providers compete going to mcdonalds for a burger vs yelling that you want the best burger and letting restaurants bring it to you
I'm thinking very small compute tasks where risk can be easily managed certainly for long running processes there could be a component of negotiation / claiming but that makes it so much more complex that I think it belongs in a different model entirely
yeah, this is all subjective and up to service providers to decide how/who to serve or what to require from a "banned" user to be serviceable again (i.e. could be POW, could be paying, whatever, up to the market to decide)
Yeah, but my power company always has the option to sue me. They know my name and address. All we do here is pseudonymous and without legal contact, so there's no way to sure me if I don't pay. I really like your thought, I just try to play devils advocate here.
Im just not sure what's the right way to decide if a user maliciously or rightfully devoted payment (maybe because he just got nonsense data). As a service provider, you probably must have a way to decide this algorithmically or else it would be too much effort.
The power company is not going to sue you if you don’t pay a 100 sat invoice; they just price in risk. Most companies measure and price risk like this.
Not really. This happens organically. If a company provides data to npub X and their invoices to that user are never paid the service provider stops serving that user. It could be that their data sucks. Or that the user is abusing. Or that the user/service provider has a mismatch. It’s all information a service provider can use to do business.
Default avatar
nobody 2 years ago
Market places have never really worked for application layer middleware services. It’s because the model is the reverse of most services - I.e. there isn’t any commodity to compete on, everything is bespoke data formats.
Yeah, that's probably an interesting approach that could also be explored by service providers
This had not occurred to me believe it or not. I like the idea, but one thing that's missing is a way for service providers to prove their answer is satisfactory without the user stiffing them by saying "I went with someone else". Since the question is arbitrary I don't know if you could come up with a general proof.
I don't think that needs to be solved tbh, at least not at first, it just might be that this is solved via generic npub (both customer and service provider) reputation the service provider doesn't need to prove anything, because that'd be too costly at scale, instead, the incentive is aligned in that the npubs might want to transact again in the future. i.e. if I'm a person buying a midjourney image, the image is great and I don't pay the service provider, I risk that that service provider (and others watching my behavior) will not serve me in the future there is risk to the service provider, but that's up to the market/service providers to price/mitigate the risk could be pushed to the user (e.g. via hodl invoices) but service providers are better positioned/have more incentives to mitigate risk than end users
> when service provider serves the data the user pays to the "best" service provider why would I burn server cycles if the chance of payment is totally subjective? seems easy to DDOS.
maybe I’m misunderstanding. I imagined this working as follows: - user x publishes a note asking for a service y - servers 1, 2, and 3 all provide service y. I run 1 and you run 2. we both race to process the job and submit a note - user x pays server 2 is this how it works?
Random question, won't this just replicate a (social) credit score? I mean due to the following: * You can create new keys easily. * Therefore I could create a key not to pay a service then create a new one, to use another service for free. * This would mean service providers must somehow evaluate if they want to service you, you are not an "empty npub" * This means npubs needs some reputation * Isn't reputation really just a social score? Do I miss something?
Most likely service prop users wouldn’t serve keys with zero activity Up to the service provider I certainly won’t.
I love this vision! I think this is what we’re moving toward with L402. My best guess is that it will be machines competing to offer data / services to other machines instead of humans. So imagine asking gpt-engineer or some AI assistant to plan a vacation for you or whatever. And in the background it’s calling dozens of APIs/services. One call for weather data to choose a place (paying 100 sats for @Alby‘s weather data service), another call to book the flights, another call to Waymo to pick you up, etc. One q for me is where to begin here? What data or service is valuable enough to justify the paid call. Could be calling another LLM bc the compute costs are real. Could be accessing some valuable data source that’s already paywalled. Basically where will the L402 takeoff begin?
I'm scratching my own itch here I want podcast transcriptions on @Highlighter * you add a podcast URL to highlighter, it sees it's a podcast (or a @npub1zaps...qhp9 event) * it shows you a "Transcribe" button, you click it and it posts the job spec with the audio file saying that it wants a transcription * someone (initially @Highlighter ) fulfills the job * user pays * success It's a very simple use case, but it's valuable and economical and unlocks the whole primitive of a computation marketplace.
What's even cooler is that I see a scenario where there could be a mix between AI and human-curated workers 1) I get a very fast translation using a fast yet imprecise model 2) I do my highlighting based on it's results 3) 20 minutes later I get a human-corrected version of the transcription 4) I pay both because I care about the information I'm curating The building block is so abstract that service providers can compete in all kinds of realms
O I get it! I love it In this alpha version, is highlighter running whisper in the background and charging sats / word (or something)? Then farming out to humans for additional feedback for premium version?
Yeah, under this model highlighter will be sort of the market maker for this model while I explore what it looks like But yeah, I’m just running whisper on a few servers and making it accessible through this nostr computing market im creating Today whisper, tomorrow all models? 😉
reputation is part of life; it's organic, and brutally desirable. You wouldn't be able to navigate life without heuristics to measure how much to trust something/someone, of which reputation is one crucial factor. New/disposable npubs could still access certain service providers who opt to serve them via a prepayment, but prepayments hinder the effortless nature of the system I have in mind. and require a much heavier negotiation tax that would be overkill for npubs with a history. We can do both, but the second system does not need to be formalized as service providers would coordinate (pre) payment out of band (you don't need to coordinate your relationship with your hosting provider (1:1) via nostr)
Reputation, whether it’s called “social credit scores” or something else, is necessary and unavoidable. Just like money, it becomes dystopian when it’s controlled centrally, but not when it’s decentralized. btc != the dystopia of fiat, and likewise: decentralized reputation != the dystopia of centralized reputation. The challenge, therefore, is how to decentralize it. (I don’t know if you were implying otherwise. Just a point I felt was worth making. 😊)
to me that feels like an odd question, as if you were asking if life, or oxygen, has more positive than negative consequences. But yeah, reputation, like most heuristics, are conceptually positive (they can be ill-informed, but conceptually extremely positive). I don't think none of the value that has been created since the existence of mitochondria would have been possible without it. This captures it very well View quoted note →
marco's avatar
marco 2 years ago
@Gigi and @DETERMINISTIC OPTIMISM 🌞 would @OpenSats support the growth of “apps” of this kind or, not being entirely free, they will be excluded? Your initial support might help shape the projects and ensure their “business models” would be “ethical” (according to the board) to begin with. Having a few of these apps working well can pave the road for others and incentivate to build more on #Nostr sustainability I have one (narratives.social) with a good chance of succeeding but for now it’s still quite “amatoriale” in the way it’s been built
How does decentralized reputation affect privacy? That’s a complicated question. But in the long run, in a good way, without a doubt. For starters, think about what it’s going to replace. Just like bitcoin is going to be better at privacy-preservation than what it replaces (fiat), decentralized reputation is ultimately going to be better than things like CCP-style credit scores. But it’s more than that: the entire structure of surveillance capitalism will be replaced. The way I conceive of it, decentralized reputation is an inextricable part of a bigger picture: decentralized knowledge curation. If we want alternatives to centralized sources of news, we’re going to need tools to help us know where to get that information, from whom, on what topic, in what context. We won’t be able to do that without decentralized reputation. It’s complicated, because with decentralized reputation and decentralized knowledge curation, you are going to be giving up some of your privacy, to some of the people, some of the time. The difference is that you’ll have exquisite control over which information, which people, under what circumstances, and why you give it up.