has anyone thought/written about data-processing services via nostr?

I'm thinking of, as nostr:npub1dergggklka99wwrs92yz8wdjs952h2ux2ha2ed598ngwu9w7a6fsh9xzpc 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 nostr:npub1w0rthyjyp2f5gful0gm2500pwyxfrx93a85289xdz0sd6hyef33sh2cu4x (cc nostr:npub1kuy0wwf0tzzqvgfv8zpw0vaupkds3430jhapwrgfjyn7ecnhpe0qj9kdj8 nostr:npub18lzls4f6h46n43revlzvg6x06z8geww7uudhncfdttdtypduqnfsagugm3 ); 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.

Reply to this note

Please Login to reply.

Discussion

So how to decide best

up to the client to choose who to pay

and up to the service provider to choose which users not to serve šŸ˜‰

service providers could monitor for other service providers responding to the request and abort a job if they see a request has been fulfilled by their competition

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

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

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?

I think this is fine because all data are open. So if client reject reasonable solutions no body will be willing to provide service anymore

So once he's stuck, he's stuck forever?

Or maybe he just has to pay his last invoice šŸ¤”

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)

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.

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.

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 šŸ˜‰

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.

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.

probably nostr:npub1jlrs53pkdfjnts29kveljul2sm0actt6n8dxrrzqcersttvcuv3qdjynqn has the light to all these questions

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.

The problem is basically dispute resolution. Check this out https://github.com/BitResolve/Bounty-Adjudication-System

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

Something like this example ?

https://weather-lightning.bumi17.repl.co/

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

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.

Would stakwork work in this application?

Yeah, that's probably an interesting approach that could also be explored by service providers

> 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.

You can only DoS yourself; ir service provider, not service slave šŸ˜‚

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?

It can be how it works. User might pay for both, or neither of the results suck

what if I spin up 1000 pubkeys and ask for service y, then dont pay any provider for their time?

feels like clients need PoW or escrow or something

Most likely service prop users wouldn’t serve keys with zero activity

Up to the service provider

I certainly won’t.

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?

nostr:npub1l2vyh47mk2p0qlsku7hg0vn29faehy9hy34ygaclpn66ukqp3afqutajft do I miss something?

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)

So you say, that it has more positive consequences then negative?

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 nostr:nevent1qqstw2agk7ddked0pj42l69c5866j2ja05cfc3p42tjyah0skg0uslgppemhxue69uhkummn9ekx7mp0qythwumn8ghj7un9d3shjtnwdaehgu3wvfskuep0qy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj77rrmd6

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. 😊)

Thank you! šŸ’œ

How does this effect privacy in your opinion?

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.

I have no idea how you plan to do this Pablo but it sounds fkn cool and I’m all for opening information up to more people!

Gonna be šŸ”„

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 nostr:npub1getal6ykt05fsz5nqu4uld09nfj3y3qxmv8crys4aeut53unfvlqr80nfmā€˜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 nostr:npub1w0rthyjyp2f5gful0gm2500pwyxfrx93a85289xdz0sd6hyef33sh2cu4x

* you add a podcast URL to highlighter, it sees it's a podcast (or a nostr:npub1zapstrdhq7rxrw224apgvs5ajlh9y473f2rdd0a9fjcys2u8d7cqzxqhp9 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 nostr:npub1w0rthyjyp2f5gful0gm2500pwyxfrx93a85289xdz0sd6hyef33sh2cu4x ) 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? šŸ˜‰

nostr:npub1dergggklka99wwrs92yz8wdjs952h2ux2ha2ed598ngwu9w7a6fsh9xzpc and nostr:npub1az9xj85cmxv8e9j9y80lvqp97crsqdu2fpu3srwthd99qfu9qsgstam8y8 would nostr:npub10pensatlcfwktnvjjw2dtem38n6rvw8g6fv73h84cuacxn4c28eqyfn34f 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